Selenium自动化教程02:浏览器options配置及常用的操作方法 您所在的位置:网站首页 webdriver打开新窗口 Selenium自动化教程02:浏览器options配置及常用的操作方法

Selenium自动化教程02:浏览器options配置及常用的操作方法

2024-06-04 02:04| 来源: 网络整理| 查看: 265

1.配置Chrome浏览器的选项

# @Author : 小红牛 # 微信公众号:WdPython options = webdriver.ChromeOptions() # 创建配置对象 options.add_argument('lang=zh_CN.UTF-8') # 设置中文 options.add_argument('--headless') # 无头参数,浏览器隐藏在后台运行 options.add_argument('--disable-gpu') # 禁用GPU加速 options.add_argument('--start-maximized') # 浏览器最大化 options.add_argument('--window-size=1920x1024') # 设置浏览器分辨率(窗口大小) options.add_argument('--user-agent=""') # 设置请求头的User-Agent options.add_argument('--incognito') # 隐身模式(无痕模式) options.add_argument(f'--proxy-server={proxy}') # 添加IP代理 proxy=f"http://{ip}:{port}" # 关闭'Chrome正受到,自动测试软件的控制'的提示 options.add_experimental_option('useAutomationExtension', False) options.add_experimental_option('excludeSwitches', ['enable-automation']) options.add_experimental_option('prefs', {'profile.managed_default_content_settings.images': 2}) # 禁用图片加载 driver.set_page_load_timeout(20) # 设置连接超时20秒 options.add_experimental_option('detach', True) # 不自动关闭浏览器 driver = webdriver.Chrome(options=options) # 创建浏览器对象 driver.get('https://www.baidu.com')

2.修改浏览器窗口大小,set_window_size() 方法来修改浏览器窗口的大小,maximize_window() 方法可以实现浏览器全屏显示,get_window_size()获取网页的窗口大小。

import time from selenium import webdriver from selenium.webdriver.common.by import By driver = webdriver.Chrome() # 访问百度首页 driver.get('https://www.baidu.com') # 获取网页的窗口大小 print(driver.get_window_size()) # {'width': 1050, 'height': 708} # 1.设置浏览器的宽高为:600x800 driver.set_window_size(600, 800) time.sleep(3) # 2.网页界面最大化 driver.maximize_window() time.sleep(3) # 关闭网页 driver.quit()

3.浏览器前进&后退,webdriver 提供 back 和 forward 方法来实现页面的后退与前进。下面我们 ①进入百度首页,②打开百度图片网,③back 返回百度首页,④ forward 前进到百度图片网。为了看到自动化的过程,可以加延时处理,driver.title显示网页的标题。

import time from selenium import webdriver driver = webdriver.Chrome() # 1.访问百度首页 driver.get('https://www.baidu.com/') print(driver.title) # 百度一下,你就知道 time.sleep(2) # 2.访问百度图片,主页 driver.get('https://image.baidu.com/') print(driver.title) # 百度图片-发现多彩世界 time.sleep(2) # 3.返回(后退)到百度首页 driver.back() time.sleep(2) # 4.前进到百度图片网 driver.forward()

大家会发现第2次 get() 打开新页面时,会在原来的页面打开,而不是在新标签中打开。如果想的话,可以执行 js 语句来打开新的标签。

js = "window.open('https://image.baidu.com/')" driver.execute_script(js)

4.常用的浏览器操作方法,自己敲代码练习一下,这里就不一一演示了。

# @Author : 小红牛 # 微信公众号:WdPython driver.maximize_window() # 最大化浏览器 driver.set_window_size(w,h) # 设置浏览器大小 单位像素 driver.set_window_position(x,y) # 设置浏览器位置 driver.back() # 后退操作 driver.forward() # 前进操作 driver.refresh() # 刷新操作 driver.close() # 关闭当前主窗口(主窗口:默认启动那个界面,就是主窗口) driver.quit() # 关闭driver对象启动的全部页面 driver.get() #要打开的网址 driver.title # 获取当前页面title信息 driver.current_url # 获取当前页面url信息 # 截图预览 driver.get_screenshot_as_file('截图.png') # 浏览器名称 driver.name # 网页源码 driver.page_source

5.常见元素的基本方法:在百度先输入李白,清空李白,输入杜甫,最后点击查询按钮。在这里插入图片描述

import time from selenium import webdriver from selenium.webdriver.common.by import By driver = webdriver.Chrome() driver.get('https://www.baidu.com') # 1.查找输入框,并输入关键词李白 input = driver.find_element(By.ID, 'kw') input.send_keys('李白') time.sleep(1) # 2.清除李白,输入杜甫 input.clear() time.sleep(1) input.send_keys('杜甫') button = driver.find_element(By.ID, 'su') button.click() # 输出按钮的大小 print(button.size) # {'height': 40, 'width': 112} print(button.is_displayed()) # True # 输出value属性的值 print(button.get_attribute('value')) # 百度一下 time.sleep(5) # 关闭网页 driver.quit()

完毕!!感谢您的收看

----------★★历史博文集合★★---------- 我的零基础Python教程,Python入门篇 进阶篇 视频教程 Py安装py项目 Python模块 Python爬虫 Json Xpath 正则表达式 Selenium Etree CssGui程序开发 Tkinter Pyqt5 列表元组字典数据可视化 matplotlib 词云图 Pyecharts 海龟画图 Pandas Bug处理 电脑小知识office自动化办公 编程工具 在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有