在通过selenium登陆知乎的时候提示请求信息异常

参考文章:https://www.v2ex.com/amp/t/534322

今天在学习selenium的时候尝试了一下登陆知乎,本来我觉着我这不就是通过浏览器进行登陆的,肯定没有问题,然而,打脸来的太快了,提示了求情信息异常,好吧,我很菜,在通过百度过后解决了问题(菜鸡一枚,不会就百度)
首先我们先来想一下,使用selenium操作浏览器与人工操作浏览器有什么不同(小声嘀咕,能有啥不同),简单的说,就是应该怎样能识别出是人工操作还是selenium操作,先来测试一下
在这里插入图片描述
在使用selenium打开浏览器的室友使用window.navigator.webdriver测试一下发现为true,下面我们再正常打开浏览器测试一下

在这里插入图片描述
此时,我们发现它的值为undefined,这下出问题了。要怎么才能将它的值在请求的时候更改为undefined呢
设置Chimmedriver的启动参数即可解决问题

from selenium import webdriver

option = webdriver.ChromeOptions()
option.add_experimental_option('excludeSwitches', ['enable-automation'])
browser = webdriver.Chrome(executable_path='chromedriver.exe', options=option)

这样我们在请求的时候就不会出现信息异常了,而且我们也能登陆知乎了
当然,我们也能用这种方法来判断是否是通过selenium发起的请求(假如他没有设置启动参数的话,手动滑稽)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章