微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python+selenium常用命令总结

  导入所需要的模块

from selenium.webdriver.chrome.options import Options
from selenium import webdriver
from selenium.webdriver.support.ui import webdriverwait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC

  构建带有参数的谷歌浏览器

chrome_options = Options()
chrome_options.add_argument('--no-sandBox')          #解决DevToolsActivePort文件不存在的报错
chrome_options._arguments = ['disable-infobars']     #去掉谷歌浏览器正在被自动测试控制字样
chrome_options.add_argument('window-size=1920x3000') #指定浏览器分辨率
chrome_options.add_argument('--disable-gpu')         #谷歌文档提到需要加上这个属性来规避bug
chrome_options.add_argument('--hide-scrollbars')     #隐藏滚动条, 应对一些特殊页面
# 不加载图片, 提升速度
chrome_options.add_argument('blink-settings=imagesEnabled=false') 
# 加载用户信息的谷歌浏览器
chrome_options.add_argument("--user-data-dir="+r"C:\Users\Administrator\AppData\Local\Google\Chrome\User Data") 
chrome_options.add_argument('--headless')            #浏览器不提供可视化页面. linux下如果系统不支持可视化不加这条会启动失败
# 调用带参数的谷歌浏览器  
driver = webdriver.Chrome(chrome_options=chrome_options)  

  窗口最大化

driver.maximize_window() 

  调节最大等待时间

wait = webdriverwait(driver, 15)    

  加载指定网址

driver.get(url)

  位置定位

wait.until(EC.presence_of_element_located((By.XPATH,'')))  #以Xpath定位第一个满足元素,等待最大响应时间 
driver.find_element_by_xpath('').click()                   #以Xpath定位第一个满足元素,并进行点击操作
driver.find_elements_by_id("")							   #以属性ID定位所有满足的元素
# 以属性ID定位第一个满足元素,等待最大响应时间,并输入文本信息
wait.until(EC.presence_of_element_located((By.ID, ""))).send_keys('')

  切换到iframe

driver.switch_to.frame(1)               #转入网页内iframe(内嵌的网页元素)
driver.switch_to_default_content()      #返回到主页面

  切换网页窗口

windows=driver.window_handles        #获得当前浏览器所有窗口
driver.switch_to.window(windows[0])  #切换到最左侧窗口
driver.switch_to.window(windows[-1]) #切换到最新打开窗口(注:也就是最右侧窗口)

  浏览器操作

driver.execute_script("window.scrollBy(0,5000)")   #滑动界面
driver.back()                                      #返回界面
driver.refresh()                                   #刷新界面

  关闭窗口

driver.close()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐