我正在使用BeautifulSoup和mechanise从网页中查找一些内容。问题是,有时我要找的字符串找不到。我不知道有什么问题
它在许多网页上运行了好几个月,但突然停止了工作。然后我必须重新启动我的程序,并希望得到正确的结果。
问题出在data.find(text=re.compile('string to find'))上。网页总是在下载,但有时找不到字符串。我想问题可能出在加载页面的错误HTML格式上。有什么想法吗?
以下是我正在使用的代码中的一小部分,仅供您审阅
from BeautifulSoup import BeautifulSoup as soup
from mechanize import Browser
import sys, re
def get_page(url):
mech = Browser()
page = mech.open(url)
return page.read()
def test():
data = soup(get_page('some url'))
div_pages = data.find(text=re.compile('string to find'))
try: pager = div_pages.strip().split(' ')
except:
print div_pages
sys.exit()
print 'ok'
if __name__ == '__main__':
test()发布于 2011-09-01 16:57:09
我帮助别人解决了一个类似的问题,结果是字符串的编码问题。此链接(来自他们的文档)可能会在此过程中帮助您- Beautiful Soup Gives You Unicode, Dammit
https://stackoverflow.com/questions/7267846
复制相似问题