【发布时间】:2015-03-07 16:46:29
【问题描述】:
所以我正在编写一个 Python 脚本来检查 Blackboard(学校界面站点)是否有更新。但是我从脚本中收到的 HTML 与在浏览器中查看时的 HTML 并不完全相同。我不确定这是 cookie 问题还是我遗漏了什么。
USERNAME = ''
PASSWORD = ''
updates = 0
site = 'http://schoolsite.edu'
browser = mechanize.Browser()
browser.open(site)
browser.select_form(nr = 0)
browser.form['j_username'] = USERNAME
browser.form['j_password'] = PASSWORD
browser.submit()
#it brings back an empty form, just submit it.
browser.select_form(nr = 0)
browser.submit()
html_resp = browser.response().read()
有问题的 HTML 如下所示(来自脚本)
<span id="badgeTotal" style="visibility: hidden" title="">
<span class="hideoff" id="badgeAXLabel">Activity Updates</span>
<span class="badge" id="badgeTotalCount" title=""></span>
我期望它的样子(来自 Chrome/实际浏览器)
<span id="badgeTotal" style="visibility: visible;" title="">
<span class="hideoff" id="badgeAXLabel">Activity Updates</span>
<span class="badge" id="badgeTotalCount" title="">1</span>
我真正想要的是最后一行中的“1”数字,但我觉得可见性属性阻碍了它。请注意,我从 Mechanize 获得的 cookie 与我在浏览器中获得的 cookie 相同。 (不完全相同,但相同的 id、名称等)
有什么想法吗?
感谢任何输入。
【问题讨论】:
标签: python html web-scraping mechanize hidden