Цель: я использую Mechanize, чтобы подключиться к веб-сайту моей школы, где я могу просмотреть свои итоговые оценки. Я хочу поставить этот скрипт на таймер cron, чтобы он очистил сайт, проверил изменения и отправил мне электронное письмо, если будет опубликована новая оценка.
Пока у меня есть Mechanize для подключения к сайту без проблем. Я попадаю на страницу, где выставляются оценки, и читаю страницу в переменную.
Когда я получаю html и сохраняю необработанный HTML-файл в файл, я вижу, что все это есть, но когда я пытаюсь отправить его в BeautifulSoup, он рано заканчивает файл, прежде чем какие-либо данные, которые я пытаюсь получить.
Это полный HTML-код, который он должен получать: http://pastebin.com/hd91JZS2
Вот что я получаю, передавая BeautifulSoup: http://pastebin.com/dakaWAf5
Он обрезается сразу после канала в строке 101 в полном HTML-файле. Я попытался использовать регулярное выражение, чтобы просто удалить трубу, думая, что это может быть проблемой, например так:
myMassage = [(re.compile('\|'),'')]
newParser = copy.copy(bs.BeautifulSoup.MARKUP_MASSAGE)
newParser.extend(myMassage)
soup = bs.BeautifulSoup(html,markupMassage=newParser)
Я также пытался использовать MinimalSoup и ICantBelieveItsBeautifulSoup, но они оба дали одинаковые результаты.
Я в недоумении, почему он отрезал, где он есть, у кого-нибудь есть понимание?
Спасибо!