【问题标题】:How would I find these grades and these class names using mechanize and BeautifulSoup?我如何使用 mechanize 和 BeautifulSoup 找到这些成绩和这些班级名称?
【发布时间】:2015-03-22 00:46:34
【问题描述】:

所以,我想出了如何登录网站,该网站允许我使用 python、mechanize 和 BeautifulSoup 检查我的成绩、进度簿。但是我遇到了从 html 页面获取课程名称和成绩的问题。这是其中一个班级和年级:

< a class="expandable-row" href="/student/assignments/class/16152? 

< span class="expandable-row">85.42 B< /span>

所以,我需要用 python 搜索 html 来找到所有的班级名称和所有的成绩。 这是完整的 html 代码:http://pastebin.com/ikaw0FmN 感谢您的帮助。

【问题讨论】:

  • 如果你写了一些代码,请发布。没有人会为您这样做,但他们会纠正您尝试做的事情。

标签: python beautifulsoup mechanize urllib


【解决方案1】:

假设您知道如何通过请求获取页面,您将执行以下操作:

...
from bs4 import BeautifulSoup
...  

gradetd = BeautifulSoup(html).find_all('td',{'class':'fixed-column important'})

for row in gradetd:
    grades = row.find('span',{'class':'expandable-row'}).text.strip()
    if grades:
        avg, grade = grades.split(' ')
        print("{}/{}".format(avg,grade))



89.83/A-
99.14/A+
98.20/A+
91.14/A-
94.32/A
95.76/A
91.28/A-
85.42/B
97.86/A+
95.63/A
90.16/A-
94.09/A
97.02/A+
92.64/A-
100.00/A+
100.00/A+
100.00/A+
98.18/A+
100.00/A+

【讨论】:

  • 我明白了,这很有帮助,谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多