python - 在 python 中使用 selenium 时出现了一些错误
问题描述
问题是消息:没有这样的元素:无法找到元素:
{"method":"css 选择器","selector":"[name="user_name"]"}
我的代码是这样的
import openpyxl as xl
from selenium import webdriver
from selenium.webdriver.common import keys
driver = webdriver.Chrome(executable_path='C:\Program Files\chromedriver.exe')
wb = xl.load_workbook('Sample.xlsx')
sheet_1 = wb["Sheet1"]
cell1 = sheet_1.cell(2, 2)
cell2 = sheet_1.cell(2, 3)
driver.get('https://services.gst.gov.in/services/login')
name = driver.find_element_by_name('user_name')
name.send_keys(cell_1)
mail = driver.find_element_by_name('user_pass')
mail.send_keys(cell_2)
解决方案
试试看ExplicitWait
:
driver.get("https://services.gst.gov.in/services/login")
wait = WebDriverWait(driver, 10)
wait.until(EC.element_to_be_clickable((By.ID, 'username'))).send_keys("some user name")
wait.until(EC.element_to_be_clickable((By.ID, 'user_pass'))).send_keys("some password")
进口 :
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
推荐阅读
- jquery - Grails 2.5.1 的 Jquery UI 日历问题
- c# - 注册后如何使用户未登录 Asp.Net MVC
- python - NMF 产生全零权重
- java - 如何将所有这些索引放入 char 数组?
- scala - Akka PingPong 示例不会在 scala 工作表中运行
- android - 如何在 Kotlin 中使用 Retrofit 传递 URL 字符串
- node.js - 如何从mongodb中的多个值中查找
- c - 为什么我会在非结构或联合的情况下收到“对成员 '******' 的请求”?
- python - 当我为 Django Rest Framework API 测试我的 POST 路由时,即使已登录,它也会返回未经过身份验证的 401
- python - tf.losses.log_loss 用于乘法类