日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

來源:公眾號Python知識圈
作者 pk哥
 

前言

很多時候我們做 Python 爬蟲時或者自動化測試時需要用到 selenium 庫,我們經(jīng)常會卡在登錄的時候,登錄驗(yàn)證碼是最頭疼的事情,特別是如今的文字驗(yàn)證碼和圖形驗(yàn)證碼。文字和圖形驗(yàn)證碼還加了干擾線,本文就來講講怎么繞過登錄頁面。

登錄頁面的驗(yàn)證,比如以下的圖形驗(yàn)證碼。

講講Python爬蟲繞過登錄的小技巧

 

 

還有我們基本都看過的 12306 的圖形驗(yàn)證碼。

講講Python爬蟲繞過登錄的小技巧

 

 

繞過登錄方法

繞過登錄基本有兩種方法,第一種方法是登錄后查看網(wǎng)站的 cookie,請求 url 的時候把 cookie 帶上,第二種方法是啟動瀏覽器帶上瀏覽器的全部信息,包括添加的書簽和訪問網(wǎng)頁的 cookie 信息。

第一種 cookie 方法我們要分析別人網(wǎng)站的 cookie 值,找出相應(yīng)的值然后添加進(jìn)去,對于我們不熟的網(wǎng)站,他們可能也會做加密或者動態(tài)處理,所以有些網(wǎng)站也不是那么好操作。如果是自己公司的網(wǎng)站需要測試,我們可以詢問對應(yīng)的開發(fā)那個 cookie 值是區(qū)分獨(dú)立用的值,拿出來放在請求里面就行。

添加 cookie 繞過登錄

比如我們登錄百度賬號比較費(fèi)勁,每次都需要登錄也比較繁瑣,我們 F12 打開頁面調(diào)試工具,登錄后找到www.baidu.com文件,在 cookie 中,我們發(fā)現(xiàn)很多值,其中圖中圈起來的就是我們要找的值。

講講Python爬蟲繞過登錄的小技巧

 

 

我們在訪問 baidu 鏈接的時候加上這個 cookie 值,這樣就是直接登錄后的百度賬號了。

講講Python爬蟲繞過登錄的小技巧

 

 

下載瀏覽器驅(qū)動

我們要 selenium 啟動瀏覽器時,需要下載后對應(yīng)的驅(qū)動文件并放在 Python 安裝的根目錄下,比如我會用到谷歌 Chrome 瀏覽器和 Firefox 火狐瀏覽器。

講講Python爬蟲繞過登錄的小技巧

 

谷歌瀏覽器驅(qū)動下載地址:

http://chromedriver.storage.googleapis.com/index.html

 

火狐瀏覽器驅(qū)動下載地址:

https://github.com/mozilla/geckodriver/releases/

 

啟動 Chrome 瀏覽器繞過登錄

我們每次打開瀏覽器做相應(yīng)操作時,對應(yīng)的緩存和 cookie 會保存到瀏覽器默認(rèn)的路徑下,我們先查看個人資料路徑,以 chrome 為例,我們在地址欄輸入 chrome://version/

講講Python爬蟲繞過登錄的小技巧

 

 

圖中的個人資料路徑就是我們需要的,我們?nèi)サ艉竺娴?Default,然后在路徑前加上「–user-data-dir=」就拼接出我們要的路徑了。

profile_directory = r'--user-data-dir=C:Users\xxxAppDataLocalGoogleChromeUser Data'

 

接下來,我們啟動瀏覽器的時候采用帶選項(xiàng)時的啟動,這種方式啟動瀏覽器需要注意,運(yùn)行代碼前需要關(guān)閉所有的正在運(yùn)行 chrome 程序,不然會報(bào)錯。全部代碼如下。

講講Python爬蟲繞過登錄的小技巧

 

 

selenium 自動化啟動瀏覽器后我們會發(fā)現(xiàn)我之前保存的書簽完整在瀏覽器上方,baidu 賬號也是登錄的狀態(tài)。

講講Python爬蟲繞過登錄的小技巧

 

啟動 Firfox 瀏覽器繞過登錄

Firfox 火狐瀏覽也可以這樣啟動它,設(shè)置略有不同。

首先,查看配置文件的存儲路徑,查看方法:幫助–故障排除信息–配置文件夾,把里面的路徑復(fù)制過來就行。

講講Python爬蟲繞過登錄的小技巧

 

 

同樣,我們把路徑放在變量中。

profile_path = <span class="hljs-string">r'C:UsersguixianyangAppDataRoamingMozillaFirefoxProfilesdvm6wqam.default'</span>

 

我們也在火狐瀏覽器中登錄好百度的賬號,用 selenium 自動化啟動帶配置文件的火狐瀏覽器,也會發(fā)現(xiàn)啟動時已經(jīng)啟動了瀏覽器安裝的插件和登錄好的百度賬號。

講講Python爬蟲繞過登錄的小技巧

 

 

繞過圖形驗(yàn)證碼的網(wǎng)站

文中第一個圖是簡書登錄時的圖形驗(yàn)證碼,我們登錄簡書后(cookie 有一定的時效,貌似有 10 天半個月左右),把上面代碼中的鏈接換成簡書的,再用上面的方法覺可以實(shí)現(xiàn)繞過登錄頁的圖形驗(yàn)證碼。

比如我直接打開我的簡書個人主頁

https://www.jianshu.com/u/52353ffa8b86

 

自動化啟動后也是保留了登錄的狀態(tài)。

講講Python爬蟲繞過登錄的小技巧

 

 

網(wǎng)站的登錄大門已被打開,接下來就可以做自己想做的事情了,比如爬蟲、自動化測試驗(yàn)證之類的。

PS:以上技巧對有些網(wǎng)站可能不管用,但是對大部分網(wǎng)站還有適用的,覺得本文小技巧有用的自己趕緊試試吧。

分享到:
標(biāo)簽:爬蟲 Python
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定