【发布时间】:2012-12-27 22:43:33
【问题描述】:
我正在使用 BeautifulSoup,我遇到了错误或错误。在我的示例中,我抓取了 NY Times 的一个子版块网站...
import urllib2
from bs4 import BeautifulSoup
website = "http://www.nytimes.com/pages/politics/index.html"
data = BeautifulSoup(urllib2.urlopen(website).read())
print data
当我运行代码时,我会返回 head 标签以及其中的内容。但是,它不会抓取正文标签内的内容。如果我要将网站 url 更改为 http://www.nytimes.com,那么 BS 会返回整页源代码。这里发生了什么事,为什么我在抓取http://www.nytimes.com/pages/politics/index.html 时没有得到正文标签?
【问题讨论】:
-
无法重现。当我运行此代码时,它会获取整个页面,而不仅仅是
head标记。 -
嗯...问题中的代码与我文件中的内容一字不差。我会说它还抓住了
html标签。就像body标签不存在一样。 -
您使用的是什么版本的 BeautifulSoup?需要明确的是,如果您在上面的代码(并且只有上面的代码)之后打印
data.body,它会打印None? (对我来说,它会打印body标签的内容) -
我有 BS4,是的,它打印
None。 -
有趣...旧版本没有这个错误,所以这看起来像一个错误。
标签: python url web-crawler beautifulsoup