在谷歌浏览器地址栏输入:chrome://version/
结果示例:
驱动官方下载地址(需要挂代理访问):https://sites.google.com/a/chromium.org/chromedriver/downloads
1、根据“一”中自己浏览器的版本下载对应需要的代理版本:
2、将chrome浏览器安装位置及chrome驱动位置添加到计算机环境变量中去。可通过右键单击谷歌浏览器图标,选择“打开文件所在位置”,复制相应的路径即可。此处我将“1”中下载的驱动放入了相同的文件目录下,这样只需添加一次环境变量即可,且方便查找。
class WebAPI(object):
def __init__(self):
"""
模拟浏览器
"""
self.chrome_options = webdriver.ChromeOptions()
self.driver = webdriver.Chrome()
def get_baidu(self):
self.driver.get("www.baidu.com")
此方法仅需要创建实例,调用“get_baidu()”函数即可实现基本的模拟浏览器访问百度的功能。
class WebAPI(object):
def __init__(self, proxy='kb111.asuscomm.com:8119', profile_dir=r'C:\Users\yy\AppData\Local\Google\Chrome\User Data'):
"""
模拟浏览器
:param proxy: 代理ip
:param profile_dir: 本地浏览器的默认设置文件路径 C:\Users\用户名\AppData\Local\Google\Chrome\User Data
"""
self.chrome_options = webdriver.ChromeOptions()
if profile_dir:
self.chrome_options.add_argument('--no-sandbox') # root权限
self.chrome_options.add_argument("user-data-dir="+os.path.abspath(profile_dir))
self.chrome_options.add_argument('disable-infobars') # 去除"你的浏览器正在受自动化软件的控制"的字样
self.chrome_options.add_argument('--proxy-server='+proxy) # 用代理跑driver
self.driver = webdriver.Chrome(chrome_options=self.chrome_options)
def get_baidu(self):
self.driver.get("www.baidu.com")
设置“无头浏览器”,即不显示浏览器界面:
def __init__(self, headless=True):
self.chrome_options = webdriver.ChromeOptions()
if headless: # 不显示浏览器
self.chrome_options.add_argument('--headless')
self.chrome_options.add_argument('--disable-gpu')
self.driver = webdriver.Chrome(chrome_options=self.chrome_options)
(未完成,更新中)