擅长:python、mysql、java
<p>尝试使用EC和下面的xpath。你知道吗</p>
<p><strong>选项1:</strong></p>
<p>检查链接是否存在,然后单击(如果要查找任何特定链接,可以在xpath中添加属性到link)</p>
<pre><code>link =WebDriverWait(driver,10).until(EC.presence_of_element_located((By.XPATH,"//div[@class='card' and div[normalize-space(.)='Bar']]/a")))
if (link):
link.click()
</code></pre>
<p>选项2:</p>
<p>使用不同的xpath和len</p>
<pre><code>links =WebDriverWait(driver,10).until(EC.presence_of_all_elements_located((By.XPATH,"//div[@class='card']/div[normalize-space(.)='Bar']/following-sibling::a[normalize-space(.)='View Item']")))
if len(links)>0:
links[0].click()
</code></pre>
<p>方案3:</p>
<p>如果您不确定在<code>B</code>和<code>A</code>之间是否存在任何级别,可以使用下面的xpath。你知道吗</p>
<pre><code>links =WebDriverWait(driver,10).until(EC.presence_of_all_elements_located((By.XPATH,"//div[normalize-space(.)='Bar']/ancestor::div[@class='card']//a[normalize-space(.)='View Item']")))
if len(links)>0:
links[0].click()
</code></pre>