【发布时间】:2017-11-24 05:30:30
【问题描述】:
我使用 selenium 制作了一个程序,可以访问我的学校网站,登录,然后使用 CSS 选择器获取整个文本并将其打印出来。然后它会打印出所有可用的考试。但是,每个考试旁边都有一个下载链接,我试图用考试名称创建一个输入,然后让 selenium 单击连接到该考试的特定下载按钮。
我对 HTML 不太了解,所以我会尽量说清楚。
这里是代码和一些图片:
from selenium import webdriver
browser = webdriver.Chrome('/usr/local/bin/chromedriver')
browser.get('https://minatentor.hv.se/minatentor/')
username = browser.find_element_by_css_selector('#userNameInput')
password = browser.find_element_by_css_selector('#passwordInput')
username.send_keys(r"my_username")
password.send_keys('my_password')
password.submit()
tentor = browser.find_element_by_css_selector('#examTable > tbody')
print(tentor.text)
browser.close()
这是网站的外观。我使用 CSS 选择器获取此文本并打印它 ('#examTable > tbody')。
这是它在 shell 中打印的内容。
这是检查员的外观。
我使用<tbody> 的 CSS 选择器来获取整个文本。每个<tr>...</tr> 是在图片上标记的一行。 “Hämta”在瑞典语中是“下载”的意思,这就是下载按钮。
我希望能够使用课程名称(图片中的“Kursnamn”)编写输入,并让 selenium 按下与该课程名称关联的下载按钮。像这样:
这可能吗?我希望我尽可能清楚!
【问题讨论】: