日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python 滑块验证码_python selenium 淘宝滑块验证码 问题

發布時間:2023/12/15 python 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 滑块验证码_python selenium 淘宝滑块验证码 问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

正常打開淘寶等頁面,搜索商品和滑塊驗證碼是沒有問題的,但是用selenium打開,在多次翻頁后出現的滑塊驗證碼就總是失敗,無論是手動滑還是代碼控制都不可以,目前正在找解決辦法。。。

此問題針對多次翻頁出現的滑塊驗證碼,解決思路:

經過各種搜索資料,驗證碼有兩個驗證(2018/12/26,具體時間記不清了,這個是文件創建時間,淘寶后續還會繼續反爬,此處做記錄):

1.檢測是否存在特有標識$cdc_lasutopfhvcZLmcfl

2.檢驗window.navigator.webdriver等

$cdc_lasutopfhvcZLmcfl這個屬性在你的chromedriver的位置,我的是放在user/local/bin下面了,《Can a website detect when you are using selenium with chromedriver?》這篇文章介紹了如何更改$cdc_asdjflasutopfhvcZLmcfl,用vim更改(如果懶得改,網盤鏈接:https://pan.baidu.com/s/1q18FQMeciArjb5Wo0JtaSA 密碼:vr3h)

對于window.navigator.webdriver屬性,網上有很多方法,可以用await異步,也可以用mitmproxy代理,這兩種方法我沒有用到,目的就是為了改window.navigator.webdriver屬性,所以,還是注入js比較簡單:

browser.get(url)

js1= '''Object.defineProperties(navigator,{ webdriver:{ get: () => false } }) '''

js2= '''window.navigator.chrome = { runtime: {},? }; '''

js3= '''Object.defineProperty(navigator, 'languages', { get: () => ['en-US', 'en'] }); '''

js4= '''Object.defineProperty(navigator, 'plugins', { get: () => [1, 2, 3, 4, 5,6], }); '''

browser.execute_script(js1)

browser.execute_script(js2)

browser.execute_script(js3)

browser.execute_script(js4)

此時,淘寶的這兩個驗證就已經更改了,下面 就是 開始滑動滑塊兒了(代碼百度吧有很多)

這里需要注意一點,滑動的軌跡一定要隨機,如果是同一軌跡,就會失敗

總結

以上是生活随笔為你收集整理的python 滑块验证码_python selenium 淘宝滑块验证码 问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。