我正在使用Selenium chrome webdriver用python编写脚本,我想点击一个链接。链接本身是:
ahref="javascript:contentReplace('/cgi-bin/ssol/9PGaiwzaxu43ZaLXZ8mAix/?p%.5Fr%.5Fid=a5UAMSbnZrZMIowCvr5gzh&p%.5Ft%.5Fid=1&tran%.5B1%.5D%.5Fentry=student&tran%.5B1%.5D%.5Ftran%.5Fname=sreg')">Registration/a>
(我取下了链接元素的开头<,以便能够在浏览器中显示代码,而不是文本)
我无法使用find_element_by_link_text找到它 - 它一直抛出错误 - 所以我尝试使用xpath。我使用 firebug 来获取 xpath,它是:"/html/body/table
/tbody/tr[2]/td[2]/table/tbody/tr[2]/td/ul/li/ul/li[10]/a"但是当我这样做时link = driver.find_element_by_xpath("//html/body/table/tbody/tr[2]/td[2]/ta\ble/tbody/tr[2]/td/ul/li/ul/li[10]/a")
我收到"urlopen 错误 [Errno 61] 连接被拒绝"的错误
不知道出了什么问题,因为 xpath 在火虫中工作。
试试
driver.find_element_by_link_text("Registration").click()
为什么不能在Selenium IDE中录制脚本?当您单击链接时,它将直接提供指向链接的 xpath。
如果你想要代码,然后发布指向你点击该link
的网页的链接。这样就很容易给出答案了。