我的脚本执行以下操作。它打算从一个站点下载5个页面并将它们放入一个字符串,然后传递给BeautifulSoup。
from bs4 import BeautifulSoup
import urllib
import urllib2
#define a base URL & page variable to increment
baseURL = "http://mitadmissions.org/blogs/P"
p = 0
html = ""
#loop through & download last 100 blog posts into soup
while p <= 80:
doc = urllib2.urlopen(baseURL + str(p))
html = html + doc.read()
p = p + 20
#load to soup
soup = BeautifulSoup(html)
这在我的本地计算机上正常运行,该计算机运行bs4。但是,它在“加载到汤”阶段在我的远程服务器上中断。 html字符串的内容在本地和远程计算机上都是相同的,但是在远程计算机上,在html字符串的第一页值(5)之后,汤被截断。
Remote正在全局运行bs3。我认为这可能是bs3中的一些奇怪的怪癖,所以我在我的用户文件夹中安装了bs4并在第一行调用它。
所以它应该使用bs4,但也许不是?有没有更好的方法来做到这一点,如果bs3是原因(如modifying the tree),它不会导致它破坏?或者还有其他我想念的东西?