Javascript 不了解驱动程序如何无法定位元素

Javascript 不了解驱动程序如何无法定位元素,javascript,python,selenium,xpath,webdriverwait,Javascript,Python,Selenium,Xpath,Webdriverwait,以下是网站: 我正在尝试用网络垃圾处理EPS、EPS、GEPS、GEPS和收入 List1 = driver.find_element_by_xpath("""/html/body/div[2]/div[1]/div/main/div[2]/div[3]/div[2]/section[1]/div/div/div[3]/div/div/div[1]/ul/li[1]/text()[2]""") 这将返回无法定位元素 这也不起作用 Li

以下是网站:

我正在尝试用网络垃圾处理EPS、EPS、GEPS、GEPS和收入

List1 = driver.find_element_by_xpath("""/html/body/div[2]/div[1]/div/main/div[2]/div[3]/div[2]/section[1]/div/div/div[3]/div/div/div[1]/ul/li[1]/text()[2]""")
这将返回无法定位元素

这也不起作用

List1 = driver.find_element_by_xpath("""/html/body/div[2]/div[1]/div/main/div[2]/div[3]/div[2]/section[1]/div/div/div[3]""")

我不认为这是由于网站被加载。我把时间。睡眠时间设为10秒,它也不起作用。我不知道如何浏览网站,找到包含我想要的信息的列表。

非常奇怪的问题。我能够通过以下代码获取数据:

driver = webdriver.Chrome(path_to_chrome_driver)
driver.get("https://seekingalpha.com/news/3580581-docusign-eps-beats-0_02-beats-on-revenue")
time.sleep(40)
driver.execute_script("window.scrollTo(0, 400)") 
time.sleep(20)
data = driver.find_elements_by_xpath('/html/body/div[2]/div[1]/div/main/div[2]/div[3]/div/section[1]/div/div/div[3]/div/div/div[1]/ul/li[1]')
for dat in data:
    print(dat.text)

除非用户进行一些滚动(可能是出于优化目的),否则页面似乎不会完全加载。希望这对你也有用

要打印所需的文本,您必须为位于()的元素的可见性诱导
,并且您可以使用以下任一选项:

  • 打印DocuSign(纳斯达克股票代码:DOCU):第一季度非公认会计准则每股收益0.12美元,比第一季度每股收益0.02美元高;GAAP每股收益为-0.26美元,未命中率为0.03美元:

  • 要打印0.12美元的第一季度非公认会计原则每股收益:

  • 要按$0.02打印节拍,请执行以下操作:

  • 要打印-0.26美元的GAAP每股收益:

  • 要按$0.03打印未命中项,请执行以下操作:

  • 注意:您必须添加以下导入:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    

谢谢,我的问题在于我忘了切换标签。我进入了seekingalpha网站。单击链接,但未切换到该新选项卡。一旦我把它固定在正确的标签上,事情又开始了。
print(driver.execute_script('return arguments[0].childNodes[2].textContent;', WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//div[@data-test-id='content-container']/ul/li")))).strip())
print(driver.execute_script('return arguments[0].childNodes[3].textContent;', WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//div[@data-test-id='content-container']/ul/li")))).strip())
print(driver.execute_script('return arguments[0].childNodes[4].textContent;', WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//div[@data-test-id='content-container']/ul/li")))).strip())
print(driver.execute_script('return arguments[0].childNodes[5].textContent;', WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//div[@data-test-id='content-container']/ul/li")))).strip())
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC