selenium
讲解视频:【selenium web自动化,python全自动操作浏览器,适合初学者了解学习】 https://www.bilibili.com/video/BV1xr4y1m7KG
环境搭建
安装selenium库
pip install selenium
安装浏览器驱动
网页链接:Microsoft Edge Driver - Microsoft Edge Developer
简单起见将下载的msedgedriver.exe与py文件放在同一目录下,可以不用配置环境变量。
初始化
启动浏览器驱动
from selenium import webdriver
wd = webdriver.Edge(service=Service('msedgedriver.exe'))
设置等待时间
wd.implicitly_wait(5)
打开网站
wd.get("https://www.bv2008.cn/app/user/register.php?type=org")
程序的最后关闭浏览器驱动
wd.quit()
选择元素
导入库
from selenium.webdriver.common.by import By
根据ID查找
element = wd.find_element(By.ID, 'ID值')
根据css选择器查找
element = wd.find_element(By.CSS_SELECTOR, 'css选择器')
其他查找方法
element = wd.find_element(By.CLASS_NAME, 'class属性')
element = wd.find_element(By.TAG_NAME, '标签名')
find_element与find_elements
find_element返回一个元素(第一个)
find_elements返回元素列表
等待元素可点击再选择
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
element = WebDriverWait(wd, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "选择器")
操作元素
输入文字
element.send_keys('文本') # 用于文本框
点击
element.click() # 用于按钮、超链接、单选框、多选框
# 有时直接点不了,用js点击
wd.execute_script("$(arguments[0]).click()", element)
获取文字
element.text
下拉框选择
s = Select(element)
s.select_by_value('value值')
# s.select_by_visible_text('文本信息')
切换窗口
iframe
# 进入到iframe
wd.switch_to.frame('iframe名')
# wd.switch_to.frame(element)
# 回到原页面
wd.switch_to.default_content()
切换页面
for window_handle in wd.window_handles:
wd.switch_to.window(window_handle)
if '内容' in wd.title:
break
selenium
https://shuusui.site/blog/2021/12/31/selenium/