Selenium Python scrape元素返回空白文本

时间:2018-01-21 03:58:34

标签: python selenium

我正在尝试提取2016年(显示在图片中的红色框中)。我试过了:

driver.find_element_by_xpath("//*[@class = 'zsg-table yui3-toggle-content-minimized']/tbody/tr[1]/td[1]")

但它只返回一个空白文本。

html source screenshot

感谢任何帮助!

4 个答案:

答案 0 :(得分:1)

要提取text(年) 2016 ,您可以使用以下代码行:

print(driver.find_element_by_xpath("//table[@class='zsg-table yui3-toggle-content-minimized' and starts-with(@id,'yui_')]//tbody/tr/td").get_attribute("innerHTML"))

答案 1 :(得分:0)

你可以试试这个XPATH: - driver.find_element_by_xpath("//*[@class ='zsg-table yui3-toggle-content-minimized']//td[text()='2016']")

答案 2 :(得分:0)

我弄清楚为什么我的代码会返回一个空白文本。这是因为我正在抓的桌子不是税务历史表,而是价格历史。一旦我改变了这一点,我的代码工作正常。

答案 3 :(得分:0)

尝试此方法将起作用:

year = driver.find_elements_by_xpath('//*[@class = 'zsg-table yui3-toggle-content-minimized']/tbody/tr[1]/td[1]')

如果年份:

year= year[0].text.strip()