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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

python微信开发实例 pdf 百度网盘_用python看女神微信里的百度云资源有啥?

發(fā)布時(shí)間:2024/1/23 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python微信开发实例 pdf 百度网盘_用python看女神微信里的百度云资源有啥? 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

最近小編一直苦心研究,怎么給大家發(fā)放更多的資料和資源鏈接。大家都知道,百度云的分享鏈接是很容易被和諧的,群里除了分享鏈接外,就是各種抱怨 “怎么又失效了”,“又和諧了...”。

需求:

1、爬取微信群里的百度云分享鏈接

2、將資源轉(zhuǎn)存到自己的網(wǎng)盤(pán)

涉及:

1、正則表達(dá)式

2、如何分析cookie和api

3、selenium(webdriver)

本篇文章目錄:

1.、爬取微信群聊信息里的網(wǎng)盤(pán)資源

2、尋找并分析百度云的轉(zhuǎn)存api

3、爬取shareid、from、filelist,發(fā)送請(qǐng)求轉(zhuǎn)存到網(wǎng)盤(pán)

4、完整代碼

5、參考

爬取微信群聊信息里的網(wǎng)盤(pán)資源

爬取微信群聊信息可以用微信網(wǎng)頁(yè)版的api,這里推薦一個(gè)高度封裝,使用簡(jiǎn)單的工具:wxpy: 用 Python 玩微信

這是個(gè)不錯(cuò)的工具,可以實(shí)現(xiàn)網(wǎng)頁(yè)版微信的所有功能,之前小編利用它還實(shí)現(xiàn)了機(jī)器人聊天功能,自己的個(gè)人賬號(hào)華麗轉(zhuǎn)變?微軟小冰?。雖然微軟還沒(méi)有公開(kāi)小冰的 api ,不過(guò)我們完全可以利用這個(gè)工具的轉(zhuǎn)發(fā)功能來(lái)實(shí)現(xiàn),思路很簡(jiǎn)單,微信上領(lǐng)養(yǎng)一個(gè)小冰,把別人說(shuō)的話轉(zhuǎn)發(fā)給小冰,再把小冰說(shuō)的話轉(zhuǎn)發(fā)回去。

扯遠(yuǎn)了,總之利用這個(gè)工具,就可以對(duì)微信群聊里的信息進(jìn)行監(jiān)聽(tīng),接著就是利用正則表達(dá)式把網(wǎng)盤(pán)鏈接抓取出來(lái)。具體的代碼我就不貼了,使用起來(lái)很簡(jiǎn)單。

尋找并分析百度云的轉(zhuǎn)存api

這個(gè)部分才是我們的重點(diǎn),首先你得有一個(gè)百度云盤(pán)的賬號(hào),然后登錄,用瀏覽器(這里用火狐瀏覽器做示范)打開(kāi)一個(gè)分享鏈接。F12打開(kāi)控制臺(tái)進(jìn)行抓包。手動(dòng)進(jìn)行轉(zhuǎn)存操作:全選文件->保存到網(wǎng)盤(pán)->選擇路徑->確定。點(diǎn)擊【確定】前建議先清空一下抓包記錄,這樣可以精確定位到轉(zhuǎn)存的api,這就是我們中學(xué)時(shí)學(xué)到的【控制變量法】2333。

可以看到上圖中抓到了一個(gè)帶有 “transfer” 單詞的 post 請(qǐng)求,這就是我們要找的轉(zhuǎn)存(transfer)api 。接下來(lái)很關(guān)鍵,就是分析它的請(qǐng)求頭和請(qǐng)求參數(shù),以便用代碼模擬。

點(diǎn)擊它,再點(diǎn)擊右邊的【Cookies】就可以看到請(qǐng)求頭里的 cookie 情況。

cookie分析:

因?yàn)檗D(zhuǎn)存是登錄后的操作,所以需要模擬登錄狀態(tài),將與登錄有關(guān)的 cookie 設(shè)置在請(qǐng)求頭里。我們繼續(xù)使用【控制變量法】,先將瀏覽器里關(guān)于百度的 cookie 全部刪除(在右上角的設(shè)置里面,點(diǎn)擊【隱私】,移除cookies。具體做法自己百度吧。)

然后登錄,右上角進(jìn)入瀏覽器設(shè)置->隱私->移除cookie,搜索 "bai" 觀察 cookie 。這是所有跟百度相關(guān)的 cookie ,一個(gè)個(gè)刪除,刪一個(gè)刷新一次百度的頁(yè)面,直到刪除了?BDUSS?,刷新后登錄退出了,所以得出結(jié)論,它就是與登錄狀態(tài)有關(guān)的 cookie

同理,刪除掉?STOKEN?后,進(jìn)行轉(zhuǎn)存操作會(huì)提示重新登錄。所以,這兩個(gè)就是轉(zhuǎn)存操作所必須帶上的 cookie 。

弄清楚了 cookie 的情況,可以像下面這樣構(gòu)造請(qǐng)求頭。

除了上面說(shuō)到的兩個(gè) cookie ,其他的請(qǐng)求頭參數(shù)可以參照手動(dòng)轉(zhuǎn)存時(shí)抓包的請(qǐng)求頭。這兩個(gè) cookie 預(yù)留出來(lái)做參數(shù)的原因是 cookie 都是有生存周期的,過(guò)期了需要更新,不同的賬號(hào)登錄也有不同的 cookie 。

參數(shù)分析:

接下來(lái)分析參數(shù),點(diǎn)擊【Cookies】右邊的【Params】查看參數(shù)情況。如下:

上面的query string(也就是?后跟的參數(shù))里,除了框起來(lái)的shareid、from、bdstoken需要我們填寫(xiě)以外,其他的都可以不變,模擬請(qǐng)求的時(shí)候直接抄下來(lái)。

前兩個(gè)與分享的資源有關(guān),bdstoken與登錄的賬號(hào)有關(guān)。下面的form data里的兩個(gè)參數(shù)分別是資源在分享用戶的網(wǎng)盤(pán)的所在目錄和剛剛我們點(diǎn)擊保存指定的目錄。

所以,需要我們另外填寫(xiě)的參數(shù)為:shareid、from、bdstoken、filelist 和 path,bdstoken 可以手動(dòng)轉(zhuǎn)存抓包找到,path 根據(jù)你的需要自己定義,前提是你的網(wǎng)盤(pán)里有這個(gè)路徑。其他三個(gè)需要從分享鏈接里爬取,這個(gè)將在后面的【爬取shareid、from、filelist,發(fā)送請(qǐng)求轉(zhuǎn)存到網(wǎng)盤(pán)】部分中進(jìn)行講解。

搞清楚了參數(shù)的問(wèn)題,可以像下面這樣構(gòu)造轉(zhuǎn)存請(qǐng)求的 url 。

以上面這個(gè)資源鏈接為例,我們先用瀏覽器手動(dòng)訪問(wèn),F12 打開(kāi)控制臺(tái)先分析一下源碼,看看我們要的資源信息在什么地方。控制臺(tái)有搜索功能,直接搜 “shareid”。

定位到4個(gè)shareid,前三個(gè)與該資源無(wú)關(guān),是其他分享資源,最后一個(gè)定位到該 html 文件的最后一個(gè)標(biāo)簽塊里。雙擊后可以看到格式化后的 js 代碼,可以發(fā)現(xiàn)我們要的信息全都在里邊。如下節(jié)選:

可以看到這兩行

yunData.SHARE_ID = "3927175953";

yunData.SHARE_UK = "140959320"; // 經(jīng)過(guò)對(duì)比,這就是我們要的 "from"

yunData.PATH 只指向了一個(gè)路徑信息,完整的 filelist 可以從 yunData.FILEINFO 里提取,它是一個(gè) json ,list 里的信息是Unicode編碼的,所以在控制臺(tái)看不到中文,用Python代碼訪問(wèn)并獲取輸出一下就可以了。

直接用request請(qǐng)求會(huì)收獲 404 錯(cuò)誤,可能是需要構(gòu)造請(qǐng)求頭參數(shù),不能直接請(qǐng)求,這里博主為了節(jié)省時(shí)間,直接用selenium的webdriver來(lái)get了兩次,就收到了返回信息。第一次get沒(méi)有任何 cookie ,但是baidu 會(huì)給你返回一個(gè)BAIDUID ,在第二次 get 就可以正常訪問(wèn)了。

yunData.FILEINFO 結(jié)構(gòu)如下,你可以將它復(fù)制粘貼到j(luò)son.cn里,可以看得更清晰。

清楚了這三個(gè)參數(shù)的位置,我們就可以用正則表達(dá)式進(jìn)行提取了。代碼如下:

寫(xiě)在最后

喜歡此篇文章或覺(jué)得這篇文章對(duì)你有幫助的讀者可以點(diǎn)播關(guān)注或者轉(zhuǎn)發(fā),加小編Python學(xué)習(xí)群:832339352即可獲得小編自己整理的一份2018最新的Python資料和0基礎(chǔ)入門(mén)教程,歡迎初學(xué)和進(jìn)階中的小伙伴

總結(jié)

以上是生活随笔為你收集整理的python微信开发实例 pdf 百度网盘_用python看女神微信里的百度云资源有啥?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。