我有两台计算机,都运行64位Windows 7.一台机器有python 32位,一台运行python 64位。两台机器都有8GB的RAM。
我使用BeautifulSoup抓取网页,但我的python64计算机上遇到了问题。我已经能够发现我的len(str(BeautifulSoup(request.get(http://www.sampleurl.com).text)))
在64位中的输出只返回92520个字符,但是在我的python32位机器上的同一个静态站点上,它返回了135000个字符
在过去的某个时刻我的python64位机器上有python32位,但是卸载它来安装python64位因为我在使用pip install安装scipy时出现问题(事实证明这不是问题所在)。
无论如何,我不确定为什么我的64位python机器没有返回整个html字符串,我想知道是否有人可以帮助我理解发生了什么以及如何解决它。
答案 0 :(得分:1)
这不是32位/ 64位问题。您很可能是解析器问题;例如,一台机器使用lxml
与html.parser
相比较。
不同的解析器与损坏的HTML的处理方式不同,lxml
仅在安装时才是默认值。
参见例如:
等
在两台计算机上运行import lxml
进行验证。当您在具有64位版本的计算机上替换Python安装时,您可能没有包含兼容的lxml
版本。