摘要:原因?yàn)樯兑獙戇@一篇文章呢主要是群內(nèi)有人在模擬登陸知乎,一直不成功然后我抓包看了下,發(fā)現(xiàn)知乎登陸頁已經(jīng)改版了,而且難度大大提高了。
原因
為啥要寫這一篇文章呢?
(主要是qq群內(nèi)有人在模擬登陸知乎,一直不成功)然后我抓包看了下,發(fā)現(xiàn)知乎登陸頁已經(jīng)改版了,而且難度大大提高了。
首先內(nèi),還是打開知乎首頁,然后輸入賬號密碼,登陸(記得輸錯密碼)
這樣我們就可以看到請求頭了(請求頭如下)
我們發(fā)現(xiàn)有這幾個請求頭和正常的不一樣(紅色框中的)
authorization (感覺應(yīng)該是js生成的,后面再看
Content-Type (后面多了boundary=xxx 這種,那這種是啥意思呢,后面和請求參數(shù)一起看
cookie:這個要注意,登陸前cookie就不為空,說明之前肯定有set-cookie的操作
x-udid,x-sxrftoken 這兩個都是驗(yàn)證參數(shù),估計(jì)都在網(wǎng)頁源代碼能找到
再看一下請求參數(shù)
可以看到參數(shù)是以payload的形式出現(xiàn)的
第一次看到這種的人估計(jì)會一臉懵逼
這個要結(jié)合請求中的
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary2KNsyxgtG28t93VF
來一起看
multipart/form-data 是一種表單提交的方式,后面的boundary=xxx 是表單分割的方式,那到底啥意思呢?看一個簡單的小列子你就能明白啦
------WebKitFormBoundary2KNsyxgtG28t93VF 是分割不同參數(shù)的,所以可以直接不看他(這個是由上面的Content-Type后面的boundary決定的,可以隨便修改)
那把分割線去掉后,上面的就相當(dāng)于 client_id=c3cef7c66a1843f8b3a9e6a1e3160e20,
grant_type=password.
那么這個payload就很好理解了.
我們來看一下,一共有哪些參數(shù)
參數(shù)還挺多的,可以看到很多參數(shù)都是固定的,如賬號,密碼,時間戳,等等
變動的有兩個 client_id,signature
開始找參數(shù)authorization:
我們在chrome內(nèi),直接按ctrl+shift+f(全局搜索,搜索js,css這些),可以看到已經(jīng)搜索到了,并且是直接寫在js里面的,然后重新隨便換個賬號再抓一次包,發(fā)現(xiàn)authorization 的值還是固定的,所以說明authorization 是直接寫在js里面的,不是動態(tài)修改的(那么authorization 的值我們就已經(jīng)找到了)
cookie:
在登陸之前,就發(fā)現(xiàn)cookie的值不為空,說明肯定打開網(wǎng)頁后就有set-cookie的操作了,我們想驗(yàn)證的話,先打開一個無痕瀏覽器(主要是為了把之前的cookie全部清空,避免干擾),然后打開http://zhihu.com,我們發(fā)現(xiàn)他有幾次set-cookie的動作
那我們想要模擬的話,很簡單的方法是直接使用requests.session
x-udid,x-sxrftoken:
一般這種驗(yàn)證參數(shù)都會在網(wǎng)頁源代碼里面,所以直接查看網(wǎng)頁源代碼
可以看到已經(jīng)找到了,后續(xù)就是如何把這個找出來而已,可以使用正則,或者xpath定位到
client_id:
你會發(fā)現(xiàn)client_id與上面的authorization 一模一樣
signature:
還是使用ctrl+shift+f 全局搜索
發(fā)現(xiàn)找到了,但是參數(shù)是js動態(tài)生成的...
主要是找到如何加密的,然后使用Python模擬出來
第一步:下載這個js,格式化(讓代碼好看一些)
第二步:使用fiddle替換掉原來的js,使用剛剛格式化的js
第三步:慢慢調(diào)試。。。直到找到如何生成的...
大概步驟是這樣
但是假如你js像我一樣很渣的話,你可以直接找到這段加密的js,然后Python執(zhí)行這段js就可以了。。。
上面呢,我們把該找的參數(shù)都找到了,接著只要模擬發(fā)送就可以了代碼請關(guān)注微信公眾號【python爬蟲分享】,發(fā)送“知乎登陸代碼”可見~~~
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/41297.html
摘要:模擬登陸知乎這個知乎的登陸也是坑滿滿,我也給踩了幾個,這個就直接說坑吧,其他的就不多說了。 以下內(nèi)容僅交流學(xué)習(xí),請勿用于非法用途 如果你現(xiàn)在想模擬登陸知乎,會發(fā)現(xiàn) fromdata 是一串加密的字符串 showImg(https://segmentfault.com/img/remote/1460000018245629); 看了之后是不是很痛苦?你是不是就想使用 selenium 來...
摘要:模擬登陸知乎這個知乎的登陸也是坑滿滿,我也給踩了幾個,這個就直接說坑吧,其他的就不多說了。 以下內(nèi)容僅交流學(xué)習(xí),請勿用于非法用途 如果你現(xiàn)在想模擬登陸知乎,會發(fā)現(xiàn) fromdata 是一串加密的字符串 showImg(https://segmentfault.com/img/remote/1460000018245629); 看了之后是不是很痛苦?你是不是就想使用 selenium 來...
摘要:微信知乎新浪等主流網(wǎng)站的模擬登陸爬取方法摘要微信知乎新浪等主流網(wǎng)站的模擬登陸爬取方法。先說說很難爬的知乎,假如我們想爬取知乎主頁的內(nèi)容,就必須要先登陸才能爬,不然看不到這個界面。圖片描述知乎需要手機(jī)號才能注冊登陸。 微信、知乎、新浪等主流網(wǎng)站的模擬登陸爬取方法摘要:微信、知乎、新浪等主流網(wǎng)站的模擬登陸爬取方法。 網(wǎng)絡(luò)上有形形色色的網(wǎng)站,不同類型的網(wǎng)站爬蟲策略不同,難易程度也不一樣。從是...
摘要:而且我覺得比上次的知乎的還難點(diǎn),但是可能就只有搜索頁是加密的,其他的直接找全部圖書的都是直接放在源碼的。寫在最后這個豆瓣解密可以說不難,也可以說有點(diǎn)難,因?yàn)樾枰酆芏啵绻隳芸炊嚓P(guān)的解密方法就不需要扣,就會很容易了。 上次發(fā)了破解知乎模擬登陸的最新版之后,很多人看了都說好,唯獨(dú)沒人給我點(diǎn)贊,以后還是麻煩大家,如果看到對你有用的文章,可以點(diǎn)點(diǎn)贊,支持下作者哈。 還有,知乎模擬登陸的...
摘要:而且我覺得比上次的知乎的還難點(diǎn),但是可能就只有搜索頁是加密的,其他的直接找全部圖書的都是直接放在源碼的。寫在最后這個豆瓣解密可以說不難,也可以說有點(diǎn)難,因?yàn)樾枰酆芏啵绻隳芸炊嚓P(guān)的解密方法就不需要扣,就會很容易了。 上次發(fā)了破解知乎模擬登陸的最新版之后,很多人看了都說好,唯獨(dú)沒人給我點(diǎn)贊,以后還是麻煩大家,如果看到對你有用的文章,可以點(diǎn)點(diǎn)贊,支持下作者哈。 還有,知乎模擬登陸的...
閱讀 1981·2021-11-24 09:38
閱讀 3343·2021-11-22 12:07
閱讀 1909·2021-09-22 16:03
閱讀 1966·2021-09-02 15:41
閱讀 2625·2021-07-24 23:28
閱讀 2218·2019-08-29 13:17
閱讀 1556·2019-08-29 12:25
閱讀 2670·2019-08-29 11:10