现在有大量的反爬机制,通常我们爬虫有re,bs4,selenium,这里重点说selenium的。
之前有业务需求需要爬取boos直聘的信息,我们在使用selenium进行爬虫的时候,发现我们无法登陆进去。
在这里我们通过js代码发现他有个检测机制
#通过查看window.navigator.webdriver信息可以看到这里是为true
window.navigator.webdriver
因此我们需要修改我们的登陆信息
from selenium.webdriver import ChromeOptions
option = ChromeOptions() # 实例化一个ChromeOptions对象
option.add_experimental_option('excludeSwitches', ['enable-automation']) # 以键值对的形式加入参数
driver = webdriver.Chrome(chromedriver.exe',options=option)
在添加option实例之后我们打开网页输入js代码
window.navigator.webdriver
输出undefined
这样我们就可以避开selenium的检测机制。