简介
上一篇文章我们快速入门的如何使用selenium,获取网页源码,此时使用selenium模拟的浏览器是一个纯净的浏览器,但是在我们平时使用的浏览器经常就会添加一些插件,扩展,代理之类的应用。相对应的,当我们用chrome浏览器爬取网站时,可能需要对这个chrome做一些特殊的配置,以满足爬虫的行为。
常见的配置有:
- 开启无界面模式,加快访问速度
- 配置代理,UA
- 配置拓展插件
- 禁止图片和视频的加载:提升网页加载速度
- 禁用javascript
- 禁用gpu等
常见的配置
Options.add_experimental_option("detach", True) # 引入不关闭浏览器的相关配置项
Options.add_experimental_option("excludeSwitches", ['enable-automation', 'enable-logging']) # 避免终端下执行代码报警告
Options.add_experimental_option("detach", True) # 不关闭网页
Options.add_extension('插件') # 加载拓展插件
Options.add_argument('--headless') # 开启无界面模式,如果涉及到与网页的交互(输入内容,点击按钮)那么有些网站就不能使用无头浏览器
Options.add_argument("--disable-gpu") # 禁用gpu
Options.add_argument('--user-agent=Mozilla/5.0 HAHA') # 配置对象添加替换User-Agent的命令
Options.add_argument('--window-size=1366,768') # 设置浏览器分辨率(窗口大小)
Options.add_argument('--start-maximized') # 最大化运行(全屏窗口),不设置,取元素会报错
Options.add_argument('--disable-infobars') # 禁用浏览器正在被自动化程序控制的提示
Options.add_argument('--incognito') # 隐身模式(无痕模式)
Options.add_argument('--disable-javascript') # 禁用javascript
Options.add_argument(f"--proxy-server=http://115.239.102.149:4214") # 使用代理
Options.add_argument('blink-settings=imagesEnabled=false') # 不加载图片, 提升速度
# 加载用户缓存,可以记录使用记录和cookie,如果不指定缓存路径,会自动创建临时文件夹。
user_dir = r'./browser_cache'
Options.add_argument(f"--user-data-dir={user_dir}")
使用方法
首先引入配置项
# 引入配置项
Options = webdriver.ChromeOptions()
使用自己所需要的配置项,写入下方,比如:
Options = webdriver.ChromeOptions()
Options.add_argument("--disable-gpu") # 禁用gpu
最后将配置项加入浏览器中
# 将配置添加到浏览器对象中
browser = webdriver.Chrome(service=s, options=options)
版权归原作者 嚄825 所有, 如有侵权,请联系我们删除。