python - 使用Selenium和Python在网页上查找文本,然后获取其正下方的文本

标签 python selenium selenium-webdriver web-scraping xpath

如果这是一个糟糕的解释,我深表歉意,但我不知道如何更好地表达它。

The html for the webpage

从图像中您可以看到有一个名为 UPC 的文本,其正下方有一个数字。我想获取UPC正下方的号码。我想通过在网站上搜索文本“UPC”并在可能的情况下获取其正下方的数字来找到它。

最佳答案

如果您是此页面的所有者,最好使用唯一元素 ID 来定位它们。无论如何,还有另一个解决方案。 正如 selenium documentation 中所写您可以使用 css 选择器并仅使用“下一个元素”css-选择器“~”。它看起来像这样:

content = driver.find_element_by_css_selector('div:contains("UPC") ~ div')

您可以阅读有关 CSS 选择器的更多信息 here

祝你好运!

更新:正确答案是:

driver.find_element(By.XPATH, '//div[text()="UPC"]/following-sibling::div')

关于python - 使用Selenium和Python在网页上查找文本,然后获取其正下方的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65639670/

相关文章:

c# - 使用 Selenium2,如何检查页面上是否存在某些文本?

python - 如何自动在 Python 函数中设置 "input"?

python - 错误 :float argument required, 不是字典

java - 使用 Java 处理 Selenium 中的多个窗口

java - FluentWait类型不是通用的;无法通过Selenium和Java使用FluentWait类的参数<WebDriver>错误对它进行参数化

java - 如何检查 geckodriver 是否在远程计算机上运行?

python - 使用分隔符连接数据框的列

python - 如何纠正python错误: "icon object is not callable"?

java - 选择动态保管箱

html - 在 pastebin bin selenium 上定位元素(python)