Pergunta

Estou tentando baixar um corpus de notícias (para tentar fazer algum processamento de linguagem natural) do Google Notícias usando o feedparser universal com python. Eu realmente não sei nada do XML, eu só estou usando um exemplo de como usar o feedparser. O problema é que não consigo encontrar no dict eu começar a partir do feed RSS do conteúdo da notícia apenas o título.

O código que estou atualmente tentando usar é o seguinte:

import feedparser
url = 'http://news.google.com.br/news?pz=1&cf=all&ned=us&hl=en&output=rss' 
# just some GNews feed - I'll use a specific search later

feed = feedparser.parse(url)
for post in feed.entries:
   print post.title
   print post.keys()

As chaves que recebo neste post são apenas o título, resumo, data, etc ... não há conteúdo.

Trata-se de algum problema com o Google Notícias ou estou fazendo algo errado? Existe uma maneira de fazê-lo?

Foi útil?

Solução

Você já analisou o feed do Google Notícias?

é um elemento raiz em cada alimentação que contém um grupo de dados e as entradas de Dict real. Aqui está uma maneira suja para ver o que está disponível:

import feedparser
d = feedparser.parse('http://news.google.com/news?pz=1&cf=all&ned=ca&hl=en&topic=w&output=rss')

print [field for field in d]

Pelo que podemos ver, temos um campo entries que provavelmente contém .. entradas de notícias! Se você:

import pprint
pprint.pprint(entry for entry in d['entries'])

Nós obter mais algumas informações :) Isso irá mostrar-lhe todos os domínios relacionados com cada entrada de forma bastante impresso (que é o que pprint é para)

Assim, para buscar todos os títulos dos nossos entradas de notícias deste feed:

titles = [entry.title for entry in d['entries']

-lo, brincar com isso. Esperemos que isso é um começo útil

Outras dicas

Primeiro você precisa verificar RSS Especificação . E aqui é um alimentação analisador . Que deve começar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top