我试图用python 2.7.3和urllib2获取几个页面的html内容。 对于大多数页面,它工作正常,但像http://www.bbc.co.uk/news/entertainment-arts-22441507#sa-ns_mchannel=rss&ns_source=PublicRSS20-sa这样的页面会返回我的内容:
此页面最好在启用了样式表(CSS)的最新Web浏览器中查看。虽然您可以在当前浏览器中查看此页面的内容,但您将无法获得完整的视觉体验。如果能够这样做,请考虑升级您的浏览器软件或启用样式表(CSS)。
对于需要javascript的页面,也会出现此问题。我只获得了返回的noscript-tag中的内容。
以下是我获取内容的方法:
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
response = urllib2.urlopen(url).read().decode("utf-8")
是否需要额外的标题?
答案 0 :(得分:0)
在javascript / ajax开始之前,听起来像你正在抓取原始的HTML页面。尝试使用webkit
来获取应用了JavaScript的页面。有关链接的答案,请参阅here。