爬虫项目十六:用 Python 三十行代码采集QQ群成员信息,很简单
文章目錄
- 前言
- 一、抓包
- 二、代碼
前言
用Python爬取QQ群成員信息數(shù)據(jù)
提示:以下是本篇文章正文內(nèi)容,下面案例可供參考
一、抓包
我們進入qun.qq.com登錄自己的賬號、選擇一個群進入,打開抓包工具,向下滑動頁面,可以抓到一個數(shù)據(jù)包 其中包含了20個成員的信息,有網(wǎng)名、QQ、發(fā)言時間等等
現(xiàn)在我們來觀察他的url和所帶參數(shù) ,找到他的規(guī)律,我們可以看到參數(shù)中st和end應(yīng)該就是表示的頁數(shù), 意思應(yīng)該是從第21個到41個,至于gc、bkn應(yīng)該表示的賬號和群組,我們刷新頁面抓取第一頁的數(shù)據(jù)包 觀察發(fā)現(xiàn) gc、bkn、sort參數(shù)都沒變,唯獨st和end變了,可見st和end就是表示頁數(shù)的關(guān)鍵
二、代碼
我們已經(jīng)知道了數(shù)據(jù)頁數(shù)變化的規(guī)律,現(xiàn)在我們來實現(xiàn)其代碼的操作
首先寫一個函數(shù)用于生成Params并傳入列表中
def Params_list(self):Params_list=[]for i in range(96):st=i*20+iend=st+20params={"gc": 自己抓包獲取,"st": st,"end": end,"sort": 0,"bkn": 自己抓包獲取}Params_list.append(params)return Params_list在寫一個函數(shù)用于訪問頁面獲取數(shù)據(jù)
def Get_Data(self,params):try:url="https://qun.qq.com/cgi-bin/qun_mgr/search_group_members"head={'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36','cookie':'tvfe_boss_uuid=3eec8ab61924dc8d; pgv_pvid=5532717881; RK=CnIgT93OeT; ptcz=1a3ce7dF; traceid=5a73ddf726'}data=requests.get(url=url,headers=head,params=params).json()for da in data["mems"]:with open(".//QQ_Group.csv", "a+", encoding="utf-8") as f:writer = csv.DictWriter(f, da.keys())writer.writerow(da)except Exception as e:print(e)pass最后有了params列表便可以傳入Get_Data函數(shù)中獲取數(shù)據(jù)
如果你對爬蟲感興趣,可看我主頁已經(jīng)更新多個爬蟲項目、所有爬蟲項目代碼均在公眾號“阿虛學(xué)Python”中,本次源碼回復(fù)“QQ群”獲取
謝謝大家的觀看
轉(zhuǎn)載請標明出處
總結(jié)
以上是生活随笔為你收集整理的爬虫项目十六:用 Python 三十行代码采集QQ群成员信息,很简单的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android handle 阻塞,An
- 下一篇: node --- 后端使用bcrypt