编程语言
首页 > 编程语言> > python-我无法获取HTML页面的完整源代码

python-我无法获取HTML页面的完整源代码

作者:互联网

我想使用Python来爬网网页上的数据,该网页的来源如果很大(它是某个用户的Facebook页面).

假设该网址是我要抓取的网址.我运行以下代码:

import urllib2

usock = urllib2.urlopen(url)
data = usock.read()
usock.close()

数据应该包含我正在爬网的页面的源,但是由于某些原因,它不包含当我直接与页面的源进行比较时可用的所有字符.我不知道我在做什么错.我知道我要爬网的页面最近没有更新,因此不是由于我缺少一些最新数据.

有人有线索吗?

编辑:我所缺少的信息种类是:

<code class="hidden_elem" id="up82eq_33"><!-- <div class="mbs profileInfoSection"><div class="uiHeader uiHeaderTopAndBottomBorder uiHeaderSection infoSectionHeader"><div class="clearfix uiHeaderTop"><div><h4 tabindex="0" class="uiHeaderTitle">Basic Information</h4></div></div></div><div class="phs"><table class="uiInfoTable mtm profileInfoTable uiInfoTableFixed"><tbody><tr><th class="label">Networks</th><td class="data"><div class="uiCollapsedList uiCollapsedListHidden" id="up82eq_32"><span class="visible">XXXX</span></div></td></tr></tbody></table></div></div> --></code>

基本上,这是我感兴趣的某个领域.令我惊讶的是,我可以得到一些领域,但不是全部.

解决方法:

Facebook高度以Javascript为导向.在运行任何JS代码之后,您在浏览器中看到的页面源就是DOM(无论如何页面源经常都会改变).您可能必须使浏览器自动化(使用Selenium),或者尝试使用其他工具(例如机械化…),或者研究适当的FB应用程序并使用FB API.

标签:python,web-crawler
来源: https://codeday.me/bug/20191011/1895747.html