无法阅读HTML内容

时间:2016-06-24 06:08:31

标签: python python-2.7 web-crawler urllib2

我正在构建一个需要读取网页内链接的webCrawler。为此我正在使用python的urllib2库来打开和阅读网站。

我找到了一个我无法获取任何数据的网站。 网址为“http://www.biography.com/people/michael-jordan-9358066

我的代码,

import urllib2

response = urllib2.urlopen("http://www.biography.com/people/michael-jordan-9358066")
print response.read()

通过运行上面的代码,我从网站获得的内容,如果我在浏览器中打开它,我从上面的代码得到的内容是非常不同的。上述代码中的内容不包含任何数据。

我认为这可能是因为阅读网页的延迟,所以我引入了延迟。即使在延迟之后,反应也是一样的。

response = urllib2.urlopen("http://www.biography.com/people/michael-jordan-9358066")
time.sleep(20)
print response.read()

网页在浏览器中完全打开。

但是,上述代码适用于阅读维基百科或其他一些网站。 我无法找到这种奇怪行为背后的原因。请提前帮助,谢谢。

1 个答案:

答案 0 :(得分:3)

您遇到的最有可能是dynamic web pages的影响。这些网页没有urllibrequests的静态内容。数据在现场加载。您可以使用Python的selenium来解决此问题。