【发布时间】:2020-08-29 05:28:56
【问题描述】:
driver = webdriver.Chrome()
i=driver.find_element_by_xpath('/html/body/div[5]/div/div[5]/div/div[1]/text()[1]')
然后我得到错误:
selenium.common.exceptions.InvalidSelectorException:消息:无效 选择器:xpath 表达式的结果 "//*[@id="watchListPage"]/div/div[5]/div/div[1]/text()[54]" 是: [对象文本]。它应该是一个元素。
如果我删除 /text()[1] 它可以正常工作,但我需要指定我希望它读取的行。
html 看起来像这样
div class="spoiler-body" style="display: block;">
br>
br>
标题
br>
br>
文字
br>
br>
变化
br>
br>
每周........ 0 | 3.314% | 320412 | 0.67% |
br>
每月....... 0 | 23.58% | 253268 | 11.58% |
br>
季度..... 0 | 40.94% | 252030 | 11.61% |
br>
每年........ 0 | 19.2% | 186700 | 14.52% |
div>
我希望能够专门选择其中一行文本
谁能帮忙?
【问题讨论】:
-
您是否尝试在您的 broser 中使用 xpath finder 扩展来查找 xpath ?您也可以在问题中包含网站和要查找的元素。
-
为什么不直接使用 i.text 而删除 /text()[54] 并解析它。
标签: python-3.x selenium xpath