当前位置: 首页 > 知识库问答 >
问题:

无法读取含硒的xpath元素[重复]

勾向文
2023-03-14

由于某种原因,当我试图读取xpath时,web抓取返回[]。参见下面的代码:

from selenium import webdriver
import time

PATH = 'D:\webdriver\chromedriver.exe'

driver = webdriver.Chrome(PATH)

url2 = 'https://www.rad.cvm.gov.br/ENET/frmGerenciaPaginaFRE.aspx?NumeroSequencialDocumento={}&CodigoTipoInstituicao=1'.format('91514')

driver.get(url2)

time.sleep(2)

variavel2 = driver.find_elements_by_xpath('//*[@id="ctl00_cphPopUp_tbDados"]/tbody/tr[2]/td[3]')

print(variavel2)

共有2个答案

申昌勋
2023-03-14

该表的加载似乎要晚一点,所以您需要等待:

element = WebDriverWait(driver, 20).until(EC.presence_of_element_located((By.XPATH,'//*[@id="ctl00_cphPopUp_tbDados"]/tbody/tr[2]/td[3]')))
公西俊德
2023-03-14

该页面使用 iframe,因此您需要切换到 iframe。

试试这个:

url2 = 'https://www.rad.cvm.gov.br/ENET/frmGerenciaPaginaFRE.aspx?NumeroSequencialDocumento={}&CodigoTipoInstituicao=1'.format('91514')

driver.get(url2)

time.sleep(2)
driver.switch_to.frame("iFrameFormulariosFilho")
variavel2 = driver.find_elements_by_xpath('//*[@id="ctl00_cphPopUp_tbDados"]/tbody/tr[2]/td[3]')

print(variavel2)
 类似资料:
  • 我正在删除一个网络应用程序,我需要找到一个特定的元素,但我不能用我的xpath找到它。这是我试图找到元素的HTML代码 我成功地找到了它,但是当我注意到id是自动生成的时,我陷入了困境。我试图解决这个问题,找到包含文字“名字”的标签,然后找到兄弟姐妹,但什么都没有。这是我的xpath:

  • 嗨,我是一个相当新的硒。可以有人请建议如何定位和元素在iframe asi是得到错误下面。 带有Iframe标记的DOM按钮元素的屏幕截图 以前编写的代码

  • 在火虫中,我有一个与此内容的链接: 如何使用“类名”访问链接(单击它)? 我尝试了以下方法: 但是我得到了错误: 线程“main” org.openqa.selenium中出现异常。InvalidSelectorException:给定的选择器cb_or_somename cb_area_0219无效或不产生WebElement 发生以下错误:InvalidSelectorError:不允许使用复

  • 我需要在HTML中找到此元素 我就是这样做的 使用XPATH,由Chrome控制台生成: 使用XPATH,它正在寻找某种正则表达式: 最后使用XPATH,它通过页面精确到我的元素 他们都没有工作。All给出了一个例外 硒。常见的例外情况。InvalidSelectorException:Message:u'由于以下错误,给定的选择器无法找到具有xpath表达式的元素:\n语法错误:表达式不是合法表

  • 我正在尝试使用Chrome浏览器定位一个元素。问题是当我试图用浏览器的新实例定位时,没有找到元素。现在,当我手动检查元素,然后尝试使用相同的xpath/id/name表达式在控制台中定位时,我能够找到它。我已经附上了截图。请建议一些工作。

  • 我使用Selenium WebDriver与Java。 下面是我的html代码: 我通过包含特定文本的xpath定义了一个WebElement。 它不起作用。但是,当我用一个词搜索时,没有任何空格,它工作正常。 这似乎是空间的问题。 请帮助。 蒂亚。