python - 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)
解决方案
试试这样:
需要切换到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
推荐阅读
- vba - 访问 VBA 以打开/激活数据库表
- c# - 我们可以在 EF Core 的实体类中使用字符串字段而不是字符串属性吗?
- excel - 有没有办法将字符串从一个excel单元格输出到另一个?
- javascript - 仅在表单验证时触发 ajax 调用
- java - 遇到无效的@Scheduled 方法“processNotifications”:Cron 表达式必须包含 6 个字段(在“#{@getConfigRetryValue}”中找到 1 个)
- java - 在方法中从父类动态转换为适当的子类
- appium - 我如何学习 Appium 自动化的语法?
- flutter - 如何在颤动的页面浏览小部件中同时滚动两种方式?
- mysql - Laravel:AWS RDS laravel 中没有表的此类文件或目录
- amazon-web-services - 带有弹性豆茎和 symfony 的 Cron - 不工作