当我运行Python代码时
import newspaper
print(len(newspaper.build('http://cnn.com', memoize_articles=False).articles))
exit()
在Python3中,我得到了897的输出(即newspaper3k在域中找到了897页被认为是文章http://cnn.com),但是当我运行时
import newspaper
print(len(newspaper.build('http://www.cnn.com', memoize_articles=False).articles))
exit()
(也就是说,有了额外的www.
;其他什么都没有改变(我只得到895。当我在这两个URL之间来回切换时,这些数字是一致的。www.
在URL中实际意义重大吗?如果是这样,为什么在使用newspaper3k库时,文章计数与这两个URL如此相似?否则,为什么文章计数不完全相同?
如下所示,www'less资源中的几个url有两种变体:
- 与
www
- 无
www
import newspaper
artcls = newspaper.build('https://cnn.com', memoize_articles=False).articles
urls = [a.url.replace('www.', '') for a in artcls]
duplicated = set()
for u in urls:
if urls.count(u) > 1:
duplicated.add(u)
for d in duplicated:
print(d)
结果:
https://cnn.com/business/media
https://cnn.com/travel/news
https://cnn.com/travel/article/hong-kong-cbd-cafe-found-wellness-intl-hnk/index.html
https://cnn.com/travel/article/rent-fire-lookout-towers-covid-19/index.html