feedparser e Google News
-
13-09-2019 - |
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?
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.