我目前有一个脚本可以将我登录到一个网站,如果当前没有点击,我想让它点击网站上的按钮。这是按钮的信息:
当按钮已经激活时:
<p class="toast_btn">
<a class="button grey toast track-click active" data-user-avatar="https://dwebsite.net/picture.jpg" data-checkin-id="123456789" data-href=":feed/toast" data-track="activity_feed" href="#">
当按钮未激活时:
<p class="toast_btn">
<a class="button grey toast track-click" data-user-avatar="https://dwebsite.net/picture.jpg" data-checkin-id="123456789" data-href=":feed/toast" data-track="activity_feed" href="#">
我只想在class="button grey toast track-click"
最好的方法是什么?我目前使用urllib2和mechanize登录并检查一些表格。谢谢!
答案 0 :(得分:12)
当我比较两个标签时,我发现不同之处在于类标签。 所以,如果你能阅读它,那么你就完成了
如果您愿意,可以使用Selenium
第1步:找到XPath - 获取按钮的XPath:为此,在Chrome中打开页面,单击它并选择Inspect element - 它将打开html文件并右键单击突出显示的行并选择复制Xpath - 在NotePad中复制XPath
现在您已拥有XPath,您可以通过Python脚本选择按钮并查询属性
这是一个原型
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Firefox()
driver.get("http://www.youradress.org")#put here the adress of your page
elem = driver.find_elements_by_xpath("//*[@type='submit']")#put here the content you have put in Notepad, ie the XPath
print(elem.get_attribute("class"))
driver.close()
希望有所帮助,如果您有疑问请告诉我
我将这些链接用于文档
Python Selenium: Find object attributes using xpath
https://selenium-python.readthedocs.io/locating-elements.html