简介
- 最初是作为自动化工具,网页测试工具。能够像正常浏览器一样执行js、ajax,可以轻易过加密、验证等反爬技术。在反爬越来越严格的今天,可以有效地爬取一些网站,比如京东。
程序启动
- 驱动下载:选取和自己的chrome、msedge、firefox版本对应的驱动。
- python安装selenium库,pip install selenium就行。
- 然后可以自定义驱动和chrome文件路径,主要是方便一些绿软爱好者。
Option=Options()
Option.binary_location=r"D:\python\Chrome\Chrome-bin\chrome.exe"
S =Service(r"D:\python\Chrome\chromedriver.exe")
参数设置
- 反爬当然不会放过selenium,所以需要设置一些参数
Option.add_argument("--disable-blink-features=AutomationControlled")
Option.add_experimental_option('excludeSwitches', ['enable-automation'])
Option.add_experimental_option('useAutomationExtension', False)
据说这样可以掩饰一些特征
终极手段是这样:
os.system(r'start D:\python\Chrome\Chrome-bin\chrome.exe --remote-debugging-port=9222 --user-data-dir="D:\python\Chrome\Data"')
Option.add_experimental_option('debuggerAddress', '127.0.0.1:9222')
注意,这个和上面的excludeSwitches和useAutomationExtension冲突。
还有几个设置,比较实用
Option.add_argument('--headless')
Option.add_argument('--no-sandbox')
prefs = {"profile.managed_default_content_settings.images": 2,'permissions.default.stylesheet':2}
Option.add_experimental_option('prefs',prefs)
WD=webdriver.Chrome(service=S,options=Option)