对于使用XPath
Selenium
Python
的相对<td> UCITS IV-Konform </td>
网络抓取器实施,我遇到了一些困难。
从这个Börse Frankfurt web page开始,我希望单元格中的文本与<td class="text-right"> Ja </td>
相邻,即单元格中显示None
的文本。
我已经测试过我使用Freeformatter的XPath,它表明我的XPath是正确的。
导航到页面工作正常。但是,当我尝试检索文本内容时,我得到from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
driver = webdriver.Firefox()
driver.get("http://www.boerse-frankfurt.de/etp/db-x-trackers-STOXX-GLOBAL-SELECT-DIVIDEND-100-UCITS-ETF-1D-LU0292096186")
try:
find_value = driver.find_element_by_xpath("//td[text()=' UCITS IV-Konform ']/following-sibling::td").text
except NoSuchElementException:
find_value = None
print find_value
。显然,它没有找到XPath。
回复后修改:问题是由于空白导致/尾随文本内容。
a
答案 0 :(得分:1)
尝试XPath "//td[normalize-space(.) = 'UCITS IV-Konform']/following-sibling::td"
因为我认为该单元格中有很多前导和尾随空格。
答案 1 :(得分:1)
尝试在xpath中使用contains
函数:
"//td[contains(text(), 'UCITS IV-Konform')]/following-sibling::td"
对此here有一个很好的解释。