目标:我正在使用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,但他们都给出了相同的结果。
我不知道为什么它会切断它的位置,任何人都有任何见解?
谢谢!