使用硒我想抓取这段文字

Using selenium I want to scrape this text

大家好,我正在尝试使用 selenium 从 this url 抓取 以下文本: 但是我收到错误消息,它无法通过该 class 名称找到任何元素。这是我的代码:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

driver = webdriver.Chrome(r'C:\Users\User\AppData\Local\Programs\Python\Python37\Lib\site-packages\chromedriver_py\chromedriver_win32.exe')
driver.get('https://xangle.io/project/XTZ/full-disclosure')
driver.find_element_by_class_name('fv1').text

引入 WebDriverWait() 和 visibility_of_element_located() 并遵循 xpath。

driver.get("https://xangle.io/project/XTZ/full-disclosure")
print(WebDriverWait(driver,15).until(EC.visibility_of_element_located((By.XPATH,"//div[text()='Token Name']/following-sibling::div[1]"))).text)

print(WebDriverWait(driver,15).until(EC.visibility_of_element_located((By.XPATH,"(//div[@class='token-profile-cont']//div[@class='fv1'])[1]"))).text)

导入以下库。

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

错误是因为有多个具有相同 class 名称的元素。

使用 XPATH 更好地遍历页面,识别所需的元素。

WebDriverWait(driver,15).until(EC.visibility_of_element_located((By.XPATH,"//div[contains(@class, 'token-name')]/div[2]")))

driver.find_element_by_xpath("//div[contains(@class, 'token-name')]/div[2]").text

这将为您提供 Token 名称文本内容。