Python 为什么新闻纸3K要区分http://cnn.com 及http://www.cnn.com?

Python 为什么新闻纸3K要区分http://cnn.com 及http://www.cnn.com?,python,url,python-newspaper,newspaper3k,Python,Url,Python Newspaper,Newspaper3k,当我运行Python代码时 import newspaper print(len(newspaper.build('http://cnn.com', memoize_articles=False).articles)) exit() 在Python3中,我得到了897的输出(即newspaper3k发现了897页被认为是域上的文章),但是当我运行 import newspaper print(len(newspaper.build('http://www.cnn.com', memoize_a

当我运行Python代码时

import newspaper
print(len(newspaper.build('http://cnn.com', memoize_articles=False).articles))
exit()
在Python3中,我得到了897的输出(即newspaper3k发现了897页被认为是域上的文章),但是当我运行

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
导入报纸
artcls=报纸。构建('https://cnn.com,memoize_articles=False)。articles
url=[a.url.replace('www.,'')用于artcls中的a]
重复=集()
对于URL中的u:
如果URL.count(u)>1:
重复。添加(u)
对于重复的d:
印刷品(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

“在URL中,
www.
实际上有意义吗”-是的,当然有。许多网站默认使用
www
子域,但这并没有什么神奇之处。它可能与根域完全不同,只是一个别名,或者介于两者之间的任何内容。您所说的“默认为其
www
子域”是什么意思?我的意思是,它们将流量从
example.com
重定向到
www.example.com
,但这不是强制性的。这两个域名可以完全分开。CNN还根据其是否为国际域名重定向流量