我目前有一个脚本可以将我登录到一个网站,我想让它点击网站上的一个按钮,如果它当前没有被点击。这是按钮的信息:
当按钮已处于活动状态时:
<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登录并检查一些表格。谢谢!
当我比较两个标签时,我发现不同之处在于类标签。所以,如果你能阅读它,那么你就完成了
如果你愿意,你可以用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