【发布时间】:2021-09-19 15:15:47
【问题描述】:
我正在使用Python/Selenium 访问网页上的unordered 列表。我使用find_element_by_xpath 来正确识别我所追求的 div(text "$x.xx" 几乎总是唯一的)。
然后我想指示代码按下驻留在我已识别的 div 中的购买按钮(假设同一列表上还有 100 个其他“购买”按钮)。
但是有一个条件,在下面的两个示例中,'a classes' includes the text "disabled". 之一如果已识别具有正确文本的 div,但 'a class' includes "disabled",我希望脚本循环并再次运行 1 秒稍后。
总之,如果我在下面搜索 $50.00,代码会循环,如果我在搜索 $30.00,它会点击()该特定 div 中的“购买”按钮。
任何帮助将不胜感激。
(如果以下格式不正确,请见谅,第一次发帖!)
Python 代码:
from selenium import webdriver
PATH = "C:\\Users\\abc\\Desktop\\Automation\\chromedriver.exe"
driver = webdriver.Chrome(PATH)
findClick = driver.find_element_by_xpath("//*[text()='$30.00']")
网页:
<ul>
<li class="List-row">
<div class="List-rowContent Market">
<div class="Market-item Total"><span>$50.00</span></div>
<div class="Market-item Buy">
<a class="Button-small Market-Buy disabled" data-dialog="#buy_start">Purchase</a></div></div></li>
<li class="List-row">
<div class="List-rowContent Market">
<div class="Market-item Total"><span>$30.00</span></div>
<div class="Market-item Buy">
<a class="Button-small Market-Buy" data-dialog="#buy_start">Purchase</a></div></div></li>
【问题讨论】:
标签: python google-chrome selenium-webdriver selenium-chromedriver