1.安装selenium
2.安装python
3.浏览器配置
下载相应浏览器的driver文件,
谷歌:http://chromedriver.storage.googleapis.com/index.html
火狐:http://docs.seleniumhq.org/download/
driver配置的三种方式:
1.可以直接把driver文件放到根目录
2.放在任意环境变量下path,就是说你要配置下
3.测试文件中配置驱动路径:
System.setProperty("webdriver.chrome.driver","C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe");
4.设置代理
String proxyIpAndPort= "localhost:8080";
DesiredCapabilities cap = new DesiredCapabilities();
Proxy proxy=new Proxy();
proxy.setHttpProxy(proxyIpAndPort).setFtpProxy(proxyIpAndPort).setSslProxy(proxyIpAndPort);
cap.setCapability(CapabilityType.ForSeleniumServer.AVOIDING_PROXY, true);
cap.setCapability(CapabilityType.ForSeleniumServer.ONLY_PROXYING_SELENIUM_TRAFFIC, true);
System.setProperty("http.nonProxyHosts", "localhost");
cap.setCapability(CapabilityType.PROXY, proxy);
5.请停用一开发者模式运行的扩展程序
这个不用管,要是有强迫症,可以在本地组策略里面改一下
6.浏览器加载用户配置
1.用Chrome地址栏输入chrome://version/,查看自己的“个人资料路径”,然后在浏览器启动时,调用这个配置文件,代码如下:
#coding=utf-8
from selenium import webdriver
option = webdriver.ChromeOptions()
option.add_argument('--user-data-dir= C:UsersAdministratorAppDataLocalGoogleChromeUser Data') #设置成用户自己的数据目录
driver = webdriver.Chrome(chrome_options=option)
2.火狐浏览器加载用户配置
profileDir = r"C:\Users\Administrator\AppData\Roaming\Mozilla\Firefox\Profiles\wc0rm183.selenium"
profile1 = webdriver.FirefoxProfile(profileDir)
browser=webdriver(profile1)
time.sleep(3)
7.修改谷歌浏览器的User-agent来伪装你的浏览器访问m站
option.add_argument('--user-agent=iphone')
8.谷歌浏览器启动时安装CRX插件
option.add_extension('d:crxAdBlock_v2.17.crx') #自己下载的crx路径
附表一:google浏览器相关配置查看命令
about:version | - 显示当前版本 |
about:memory | - 显示本机浏览器内存使用状况 |
about:plugins | - 显示已安装插件 |
about:histograms | - 显示历史记录 |
about:dns | - 显示DNS状态 |
about:cache | - 显示缓存页面 |
about:gpu | -是否有硬件加速 |
about:flags | -开启一些插件 |
chrome://extensions/ | - 查看已经安装的扩展 |
附表二:option.add_argument()相关参数
–user-data-dir="[PATH]" | 指定用户文件夹User Data路径,可以把书签这样的用户数据保存在系统分区以外的分区。 |
–disk-cache-size= "" | 指定Cache大小,单位Byte |
–first run | 重置到初始状态,第一次运行 |
–incognito | 隐身模式启动 |
–disable-JavaScript | 禁用Javascript |
--omnibox-popup-count="num" | 将地址栏弹出的提示菜单数量改为num个。我都改为15个了。 |
--user-agent="xxxxxxxx" | 修改HTTP请求头部的Agent字符串 |
--disable-plugins | 禁止加载所有插件,可以增加速度 |
--disable-Java | 禁用java |
--start-maximized | 启动就最大化 |
--no-sandbox | 取消沙盒模式 |
--single-process | 单进程运行 |
--process-per-tab | 每个标签使用单独进程 |
--process-per-site | 每个站点使用单独进程 |
--in-process-plugins | 插件不启用单独进程 |
--disable-popup-blocking | 禁用弹出拦截 |
--disable-images | 禁用图像 |
--enable-udd-profiles | 启用账户切换菜单 |
--proxy-pac-url | 使用pac代理 [via 1/2] |
--lang=zh-CN | 设置语言为简体中文 |
--disk-cache-dir=["path"] | 自定义缓存目录 |
--disk-cache-size | 自定义缓存最大值(单位byte) |
--media-cache-size | 自定义多媒体缓存最大值(单位byte) |
--bookmark-menu | 在工具 栏增加一个书签按钮 |
--enable-sync | 启用书签同步 |