Python selenium + Firefox启动浏览器

Python selenium 的运用

 1 from selenium import webdriver
 2 # from selenium.webdriver.firefox.firefox_profile import FirefoxProfile
 3 
 4 
 5 user_agent = 'Mozilla/5.0 (Linux; Android 7.0; BND-AL10 Build/HONORBND-AL10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.132 MQQBrowser/6.2 TBS/044304 Mobile Safari/537.36 MicroMessenger/6.7.3.1340(0x26070331) NetType/4G Language/zh_CN Process/tools'
 6 
 7 proxy = '127.0.0.1:5000'
 8 proxy = proxy.split(':')
 9 
10 
11 # selenium headless 启动无头模式
12 options = webdriver.FirefoxOptions()
13 options.add_argument('-headless')    
14 
15 
16 # 第一步:创建一个FirefoxProfile实例
17 profile = webdriver.FirefoxProfile()
18 # 第二步:开启“手动设置代理”
19 profile.set_preference('network.proxy.type',1)
20 # 第三步:设置代理IP
21 profile.set_preference('network.proxy.http', proxy[0])
22 # 第四步:设置代理端口,注意端口是int类型,不是字符串
23 profile.set_preference('network.proxy.http_port', int(proxy[1]))
24 
25 # 第五步:设置htpps协议也使用该代理
26 # profile.set_preference('network.proxy.ssl', proxy[0])
27 # profile.set_preference('network.proxy.ssl_port', proxy[1])
28 
29 # 第六步:所有协议共用一种 ip 及端口,如果单独配置,不必设置该项,因为其默认为 False
30 profile.set_preference("network.proxy.share_proxy_settings", True)
31 # 第七步:设置请求header
32 profile.set_preference("general.useragent.override", user_agent)
33 
34 # 默认本地地址(localhost)不使用代理,如果有些域名在访问时不想使用代理可以使用类似下面的参数设置
35 # profile.set_preference("network.proxy.no_proxies_on", "localhost")
36 
37 
38 # 以代理方式启动 firefox
39 firefox = webdriver.Firefox(profile,executable_path='/opt/geckodriver',options=options)
40
42 firefox.get('http://www.baidu.com')
43 
44 
45 # 退出
46 firefox.quit()

猜你喜欢

转载自www.cnblogs.com/moying-wq/p/10552477.html