gpt4 book ai didi

javascript - Python Selenium Scraping Javascript - 找不到元素

转载 作者:行者123 更新时间:2023-11-28 21:00:12 24 4
gpt4 key购买 nike

我正在尝试抓取以下 Javascript 前端网站来练习我的 Javascript 抓取技巧: https://www.oplaadpalen.nl/laadpaal/112618

我试图通过它们的 xPath 找到两个不同的元素。第一个是标题,它确实找到了。第二个是实际文本本身,它不知何故找不到。这很奇怪,因为我只是从 Chrome 浏览器复制了 xPath。

from selenium import webdriver

link = 'https://www.oplaadpalen.nl/laadpaal/112618'
driver = webdriver.PhantomJS()
driver.get(link)

#It could find the right element
xpath_attribute_title = '//*[@id="main-sidebar-container"]/div/div[1]/div[2]/div/div[' + str(3) + ']/label'
next_page_elem_title = driver.find_element_by_xpath(xpath_attribute_title)
print(next_page_elem_title.text)

#It fails to find the right element
xpath_attribute_value = '//*[@id="main-sidebar-container"]/div/div[1]/div[2]/div/div[' + str(3) + ']/text()'
next_page_elem_value = driver.find_element_by_xpath(xpath_attribute_value)
print(next_page_elem_value.text)

我尝试了一些方法:将“text()”更改为“text”、“(text)”,但它们似乎都不起作用。

我有两个问题:

  • 为什么找不到正确的元素?
  • 我们怎样才能让它找到正确的元素?

最佳答案

Selenium 的find_element_by_xpath() 方法返回匹配给定 XPath 查询的第一个元素节点,如果有的话。然而,XPath 的 text() 函数返回一个文本节点——而不是包含它的元素节点。

要使用 Selenium 的查找器方法提取文本,您需要找到包含的元素,然后从返回的对象中提取文本。

关于javascript - Python Selenium Scraping Javascript - 找不到元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48788782/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com