selenium常见方法(clear(),send_keys(),click(),submit())实例

本文介绍如何使用Python和Selenium WebDriver实现自动化登录优快云网站的过程。通过具体的代码示例,详细展示了如何打开网页、定位用户名和密码输入框、清除默认提示信息并输入登录凭据,最后提交表单完成登录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#!/usr/bin/python
# -- coding: UTF-8 --

from selenium import webdriver
import time
driver = webdriver.Firefox()
driver.get(“https://passport.youkuaiyun.com/account/login?ref=toolbar“)
driver.find_element_by_css_selector(“input#username”).clear() #清空输入框内的提示信息,例如用户名,密码等提示信息,如果直接输入内容,可能会与输入框的默认提示信息拼接,从而造成输入信息的错误,这是clear()将会变得非常有用
driver.find_element_by_css_selector(“input#username”).send_keys(“1285154416@qq.com”) #用于在一个输入框内输入XX内容
driver.find_element_by_css_selector(“input#password”).clear()
driver.find_element_by_css_selector(“input#password”).send_keys(“123456”)
driver.find_element_by_css_selector(“input.logging”).submit()#用于对信息进行提交,也可以使用click()进行代替,submit()要求提交对象是一个表单,click()更强调事件的独立性
time.sleep(10)
driver.quit()

import time import os from watchdog.observers import Observer from watchdog.events import FileSystemEventHandler import openpyxl from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC class ExcelFileHandler(FileSystemEventHandler): def __init__(self, upload_function): self.upload_function = upload_function def on_modified(self, event): if event.src_path.endswith('.xlsx') and os.path.getsize(event.src_path) > 0: print(f"检测到文件 {event.src_path} 被修改") # 暂时不调用上传函数 # self.upload_function(event.src_path) def read_excel(file_path): try: workbook = openpyxl.load_workbook(file_path) sheet = workbook.active data = [] for row in sheet.iter_rows(min_row=2, values_only=True): if row[0] is not None: data.append((row[0], row[1])) workbook.close() return data except Exception as e: print(f"读取Excel文件时出错: {e}") return None def upload_data(file_path): try: driver = webdriver.Chrome() driver.get("https://target-website.com/upload") wait = WebDriverWait(driver, 10) username_input = wait.until(EC.presence_of_element_located((By.ID, "username"))) password_input = driver.find_element(By.ID, "password") username_input.send_keys("your_username") password_input.send_keys("your_password") login_button = driver.find_element(By.ID, "login-button") login_button.click() upload_page = wait.until(EC.presence_of_element_located((By.ID, "upload-form"))) data = read_excel(file_path) if data is None: return for item in data: field1 = driver.find_element(By.ID, "field1") field2 = driver.find_element(By.ID, "field2") submit_button = driver.find_element(By.ID, "submit-button") field1.clear() field2.clear() field1.send_keys(item[0]) field2.send_keys(item[1]) submit_button.click() time.sleep(2) print("数据上传完成") driver.quit() except Exception as e: print(f"上传数据时出错: {e}") driver.quit() def setup_file_monitor(folder_path, upload_function): event_handler = ExcelFileHandler(upload_function) observer = Observer() observer.schedule(event_handler, path=folder_path, recursive=False) observer.start() try: while True: time.sleep(1) except KeyboardInterrupt: observer.stop() observer.join() if __name__ == "__main__": folder_path = r"D:\\\\work_project\\\\import_data" setup_file_monitor(folder_path, upload_data) 请你这个代码上按照你的方式来修改
最新发布
07-09
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值