使用Selenium Python获取react文本代码中嵌入的值

使用Selenium Python获取react文本代码中嵌入的值,python,selenium-webdriver,Python,Selenium Webdriver,我正在使用Python中的Selenium从Internet上为我的作品抓取一些数据。 但是,我无法从以下HTML源代码获取电话号码(即04 81 68 30 45): '<a class="_2sNbI ObuDQ GXQkc _2BP2c" href="tel:0481683045" title="Contact le vendeur" ><!-- react-text: 619 -->04 81 68 30 45<!-- /react-text -->&

我正在使用Python中的Selenium从Internet上为我的作品抓取一些数据。 但是,我无法从以下HTML源代码获取电话号码(即04 81 68 30 45):

'<a class="_2sNbI ObuDQ GXQkc _2BP2c" href="tel:0481683045" title="Contact le vendeur" ><!-- react-text: 619 -->04 81 68 30 45<!-- /react-text --></a>'
如果有人知道怎么做,我将非常感激


***感谢JeffC的回答,问题解决了,结果是xpath中有5个隐藏元素(电话号码是第4个)。

在这种情况下,我通常会调查页面并确保我使用的定位器正在查找我想要的元素。我通常使用Chrome中的开发控制台,使用
$$()
测试CSS选择器,使用
$x()
测试XPath


正如您发现的,您要查找的元素不是返回的元素,因为它在页面上不是唯一的,并且不是与定位器匹配的元素集合的第一个。

您可以发布您正在使用的代码以及它给您带来的结果吗?请参阅,因为您提供的代码仍然不允许我们复制您遇到的问题。您还应该编辑post标记,以指定Selenium使用的语言(本例中为Python)。我还尝试了get_attribute(“innerHTML”)和get_attribute(“outerHTML”),但两者都没有给我包含我想要的电话号码的字符串。你确定定位器正在查找确切的元素吗?可能找到了多个元素,并且返回的第一个元素的值不是您想要的。您可以打印
len(driver.find_elements_*()
,查看有多少个元素,或者您可以使用
$x()在浏览器的DEV控制台中,我更新了我的代码,并添加了一个我需要得到的电话号码的图像。你的答案的序言,例如“代码”,只是张贴……所以这个问题没有得到回答。通常被认为是StAcExcel标准的噪音。只考虑答案部分。
from selenium import webdriver

driver = webdriver.Chrome('chromedriver')
driver.get('https://www.leboncoin.fr/locations/1107498086.htm/')

try:
    elem = driver.find_element_by_xpath('//div[@class="_2sPVF"]//button')
    elem.click()
except:
    pass

elem = driver.find_element_by_xpath('//span[@class="_28rnK"]/a')
tel = elem.text
print('Contact:', tel)