优质中文开源软件代码项目资源技术共享平台
传播开源的理念,推广开源项目
学习是对自己最棒的投资!与君共勉!

网站首页 > 主流语言 > python 正文

Selenium Python3 请求头配置

longtao100 2022-03-29 23:14:26 python 382 ℃ 0 评论

Selenium官方文档

https://seleniumhq.github.io/selenium/docs/api/py/api.html

谷歌浏览器

一、chromeOptions相关配置

chromeOptions 是一个配置 chrome 启动是属性的类。通过这个类,我们可以为chrome配置如下参数(这个部分可以通过selenium源码看到):

1.设置 chrome 二进制文件位置 (binary_location
2.添加启动参数 (add_argument
3.添加扩展应用 (add_extension, add_encoded_extension
4.添加实验性质的设置参数 (add_experimental_option
5.设置调试器地址 (debugger_address)

源码剖析:

# .\Lib\site-packages\selenium\webdriver\chrome\options.py class Options(object):     def __init__(self):         self._binary_location = ''           # 设置 chrome 二进制文件位置         self._arguments = []                 # 添加启动参数         self._extension_files = []           # 添加扩展应用         self._extensions = []         self._experimental_options = {}      # 添加实验性质的设置参数         self._debugger_address = None        # 设置调试器地址

1.模拟移动设备

# 通过设置user-agent,用来模拟移动设备 user_ag='MQQBrowser/26 Mozilla/5.0 (Linux; U; Android 2.3.7; zh-cn; MB200 Build/GRJ22; '+ 'CyanogenMod-7) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1' options.add_argument('user-agent=%s'%user_ag) #option.add_argument('--user-agent=iphone')

2禁止图片加载

from selenium import webdriver options = webdriver.ChromeOptions() prefs = {   "profile.managed_default_content_settings.images": 2} options.add_experimental_option("prefs", prefs) driver = webdriver.Chrome(chrome_options=chrome_options) #或者 使用下面的设置, 提升速度 options.add_argument('blink-settings=imagesEnabled=false')

3.添加代理

from selenium import webdriver # 静态IP:102.23.1.105:2005 PROXY = "proxy_host:proxy:port" options = webdriver.ChromeOptions() desired_capabilities = options.to_capabilities() desired_capabilities['proxy'] = {     "httpProxy": PROXY,     "ftpProxy": PROXY,     "sslProxy": PROXY,     "noProxy": None,     "proxyType": "MANUAL",     "class": "org.openqa.selenium.Proxy",     "autodetect": False } driver = webdriver.Chrome(desired_capabilities = desired_capabilities)

4.浏览器启动时安装crx扩展

# -*- coding=utf-8 -*- from selenium import webdriver option = webdriver.ChromeOptions() option.add_extension('d:\crx\AdBlock_v2.17.crx') # 自己下载的crx路径 driver = webdriver.Chrome(chrome_options=option) driver.get('http://www.taobao.com/')

5.加载所有Chrome配置

  用Chrome地址栏输入chrome://version/,查看自己的“个人资料路径”,然后在浏览器启动时,调用这个配置文件,代码如下: 
  

#-*- coding=utf-8 -*- from selenium import webdriver option = webdriver.ChromeOptions() p=r'C:\Users\Administrator\AppData\Local\Google\Chrome\User Data' option.add_argument('--user-data-dir='+p)  # 设置成用户自己的数据目录 driver = webdriver.Chrome(chrome_options=option)

6.携带Cookie

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

请填写验证码
开源分类
最近发表
开源网标签
开源网归档