1. 程式人生 > >6.簡單提取小紅書app資料(簡單初步試採集與分析)-1

6.簡單提取小紅書app資料(簡單初步試採集與分析)-1

採集小紅書資料爬蟲:
1.本來是要通過app端的介面去直接採集資料,但是app介面手機端設定本地代理這邊開啟抓包後就不能正常訪問資料。
所以就採用了微信小程式裡的小紅書app介面去採集資料。

2.通過 fiddler去抓包,手機端進入小程式埠選擇彩妝向下滑動請求資料,這邊fiddler就會抓到請求資料和相應的response。

 

 
  
 

 

由上邊的兩圖可以看到請求的一個過程,這裡每次單擊拖動只會更新10條資料(資料包含在data{}裡),下面就要對請求的header引數進行分析。

 

3.經過分析 主要引數包含

"auth":"eyJoYXNoIjoibWQ0IiwiYWxnIjoiSFMyNTYiLCJ0eXAiOiJKV1QifQ.eyJzaWQiOiI5M2JhM2Q3MC03MWJhLTQzOGYtODhiNC03MDNiZDZlNDRkNjYiLCJleHBpcmUiOjE1NDEwNjkyNTJ9.MIolGQY-A-j-n2cxDYKeN9ILh4gBaYMHUWiA0IRJILQ"
"auth-sign":"13c136011f62d6bc0e7d2bf1f7f04201",

而且引數還具有一個時效性,請求的一段時間內是能夠返回得到有效資料的。

這裡呢,暫時未做分析只是先把10條資料先拿下來試試,稍後再做處理。
import requests

def main():
    headers = {
    "charset":"utf-8",
    "Accept-Encoding":"gzip",
    "referer":"https://servicewechat.com/wxffc08ac7df482a27/117/page-frame.html",
    "authorization
":"5bda7657a4ce660001f7eed8", "auth":"eyJoYXNoIjoibWQ0IiwiYWxnIjoiSFMyNTYiLCJ0eXAiOiJKV1QifQ.eyJzaWQiOiI5M2JhM2Q3MC03MWJhLTQzOGYtODhiNC03MDNiZDZlNDRkNjYiLCJleHBpcmUiOjE1NDEwNjkyNTJ9.MIolGQY-A-j-n2cxDYKeN9ILh4gBaYMHUWiA0IRJILQ", "content-type":"application/json", "auth-sign":"13c136011f62d6bc0e7d2bf1f7f04201
", "User-Agent":"Mozilla/5.0 (Linux; Android 7.1.2; MI 5X Build/N2G47H; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/64.0.3282.137 Mobile Safari/537.36 MicroMessenger/6.7.3.1360(0x26070336) NetType/WIFI Language/zh_CN Process/appbrand2", "Host":"www.xiaohongshu.com", "Connection":"Keep-Alive", } url = "http://www.xiaohongshu.com/sapi/wx_mp_api/sns/v1/homefeed?oid=homefeed.cosmetics_v2&cursor_score=1541067389.9540&sid=session.1540996623416187718" datas = requests.get(url= url, headers=headers ).json() data = datas['data'] # print(data) for i in data: print(i) print(i['title']) print(i['share_link']) if __name__ == "__main__": main()

結果如圖:

4.進入單個tag的詳情頁:

評論

 

 5.能力有限,目前只能分析到這幾步,採集每一項tag的具體東西還沒做完善,後期的處理還需要更多新的東西支援,所涉及的東西很多自己也是初次接觸採集app端的資料,appium模擬還沒有接觸,後期的appium自動化測試模擬人工完成一系列的操作還在學習摸索中。