Уважаемое сообщество Stackoverflow!
Я хотел бы почистить новостные статьи из RSS-канала CNN и получить ссылку для каждой выделенной статьи. Это очень хорошо работает с библиотекой Python NewsPaper, но, к сожалению, я не могу получить вывод в пригодном для использования формате, то есть в виде списка или словаря.
Я хочу добавить очищенные ссылки в один ОДИН список вместомного разделенных списков.
import feedparser as fp
import newspaper
from newspaper import Article
website = {"cnn": {"link": "http://edition.cnn.com/", "rss": "http://rss.cnn.com/rss/cnn_topstories.rss"}}
for source, value in website.items():
if 'rss' in value:
d = fp.parse(value['rss'])
#if there is an RSS value for a company, it will be extracted into d
for entry in d.entries:
if hasattr(entry, 'published'):
article = {}
article['link'] = entry.link
print(article['link'])
Вывод выглядит следующим образом:
http://rss.cnn.com/~r/rss/cnn_topstories/~3/5aHaFHz2VtI/index.html
http://rss.cnn.com/~r/rss/cnn_topstories/~3/_O8rud1qEXA/joe-walsh-trump-gop-voters-sot-crn-vpx.cnn
http://rss.cnn.com/~r/rss/cnn_topstories/~3/xj-0PnZ_LwU/index.html
.......
Я хотел бы иметь ОДИН список со всеми ссылками в нем, например:
list =[http://rss.cnn.com/~r/rss/cnn_topstories/~3/5aHaFHz2VtI/index.html , http://rss.cnn.com/~r/rss/cnn_topstories/~3/_O8rud1qEXA/joe-walsh-trump-gop-voters-sot-crn-vpx.cnn , http://rss.cnn.com/~r/rss/cnn_topstories/~3/xj-0PnZ_LwU/index.html ,... ]
Я пытался добавить содержимое через цикл for следующим образом:
for i in article['link']:
article_list = []
article_list.append(i)
print(article_list)
Но тогда вывод выглядит так:
['h']
['t']
['t']
['p']
[':']
['/']
['/']
['r']
['s']
...
Кто-нибудь знает альтернативный метод, как получитьсодержание в один список? Или, в качестве альтернативы, следующий словарь:
dict = {'links':[link1 , link2 , link 3]}
ОЧЕНЬ большое спасибо за вашу помощь !!