gpt4 book ai didi

python - 使用 Python 中的 NewsPaper 库将新闻文章抓取到一个列表中?

转载 作者:行者123 更新时间:2023-12-05 07:18:06 26 4
gpt4 key购买 nike

亲爱的 Stackoverflow 社区!

我想从 CNN RSS 提要中抓取新闻文章,并获取每篇抓取文章的链接。这与 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 循环 append 内容:

    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]}

非常感谢您的帮助!!

最佳答案

尝试像这样修改您的代码,看看它是否有效:

article_list = []
for entry in d.entries:
if hasattr(entry, 'published'):
article = {}
article['link'] = entry.link
article_list.append(article['link'])

关于python - 使用 Python 中的 NewsPaper 库将新闻文章抓取到一个列表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58493176/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com