首页 > 解决方案 > xpath selenium 找不到元素

问题描述

我想找到最大页数(即 20),
但它找不到元素。网站链接


图片

代码:

from functools import total_ordering
from pandas.core.base import DataError
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import csv
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
import string
from csv import reader
import code
import pandas

from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.common.by import By
    
driver=webdriver.Firefox()
driver.get("https://etherscan.io/token/0xB8c77482e45F1F44dE1745F52C74426C631bDD52#balances")
wait = WebDriverWait(driver,30)
num = wait.until(EC.element_to_be_clickable((By.XPATH,"//div[@class='d-inline-block']//*[@class=page-link text-nowrap]")))
print(num)

标签: pythonseleniumselenium-webdriverweb-scraping

解决方案


试试这样:

需要切换到iframe然后尝试找到pagination元素。

wait.until(EC.frame_to_be_available_and_switch_to_it((By.ID,"tokeholdersiframe")))

num = wait.until(EC.presence_of_element_located((By.XPATH,"//div[@class='d-inline-block']//strong[2]"))).text
print(num)

# print(driver.find_element_by_xpath("//div[@class='d-inline-block']//strong[2]").text)
driver.switch_to.default_content()
20

推荐阅读