BeautifulSoup正在结束一个不应该的文档,我无法弄清楚原因

时间:2011-12-24 03:22:21

标签: python html parsing screen-scraping beautifulsoup

目标:我正在使用Mechanize连接到我学校的网站,在那里我可以查看我的最终成绩。我想把这个脚本放在一个cron计时器上,让它刮掉网站,检查更改,如果有新的成绩发布,请给我发电子邮件。

到目前为止,我已经使用Mechanize连接到网站而没有任何问题。我到了发布成绩的页面,我将页面读成变量。

当我获取html并将原始HTML保存到文件时,我可以看到它就在那里但是当我尝试将其发送到BeautifulSoup时,它会在我尝试检索的任何数据之前提前结束文件。

这是它应该接收的完整HTML:http://pastebin.com/hd91JZS2

这是我将它传递给BeautifulSoup时获得的:http://pastebin.com/dakaWAf5

它正在完整HTML文件中第101行的管道之后切断。我尝试使用正则表达式来删除管道,认为可能是这样的问题:

myMassage = [(re.compile('\|'),'')]
newParser = copy.copy(bs.BeautifulSoup.MARKUP_MASSAGE)
newParser.extend(myMassage)
soup = bs.BeautifulSoup(html,markupMassage=newParser)

我尝试使用MinimalSoup和ICantBelieveItsBeautifulSoup,但他们都给出了相同的结果。

我不知道为什么它会切断它的位置,任何人都有任何见解?

谢谢!

0 个答案:

没有答案