我刚刚开始使用Python,并且我尝试使用urllib2请求网站的html源代码。然而,当我尝试从网站获取html内容时,我没有获得完整的html内容 - 缺少标签。我知道他们失踪了,因为当我在firebug中查看代码显示的网站时。这是由于我申请数据的方式 - 还是由于网站的原因?如果是这样,我可以在python中获取网站的完整源代码,然后解析它?
目前我用来请求内容的代码和我尝试的网站是:
import urllib2
url = 'http://marinetraffic.com/ais/'
response = urllib2.urlopen(url)
html = response.read()
print(html)
具体是 - div id =" map_area"之间的内容。 - 不见了。任何帮助/指针非常感谢!
答案 0 :(得分:4)
您收到的数据不完整,因为此页面上的大多数内容都是通过Javascript动态生成的...
答案 1 :(得分:0)
read
返回的描述符上的 urlopen
仅返回已下载的内容。所以你很容易得到简短的阅读。您最好使用urllib.urlretrieve()
,它会尝试获取整个文件,检查Content-Length标头,如果失败则会引发错误。