Charles證書安裝
如果不進行下面的設(shè)置,https的reqeust和response都是亂碼,設(shè)置完之后https就可以抓包了。
手機端操作:
下載Charles證書http://www.charlesproxy.com/ssl.zip,解壓后導(dǎo)入到iOS設(shè)備中(將crt文件作為郵件附件發(fā)給自己,再在iOS設(shè)備中點擊附件即可安裝;也可上傳至百度之類的網(wǎng)盤,通過safari下載安裝)
電腦端操作:
1、在Charles的工具欄上點擊設(shè)置按鈕,選擇SSL Proxy Settings…

切換到SSL選項卡,選中Enable SSL Proxying。(別急,選完先別關(guān)掉)
2、SSL選項卡的Locations里填寫要抓包的域名和端口,點擊Add按鈕,在彈出的表單中Host填寫域名。比如填api.instagram.com,Port填443
抓包
手機配置好http代理后,便可以開始抓包了
例如京東『分類』頁面的結(jié)構(gòu)

通過抓包數(shù)據(jù)可以查看api規(guī)則

通過接口https://api.m.jd.com/client.action?function=entraceCatalog 獲取所有的一級分類,觀察左側(cè)的url可以很清楚看到j(luò)d app啟動時請求了哪些接口作為初始化配置。
一級分類下的內(nèi)容通過cid獲得:

在模擬請求爬取數(shù)據(jù)時,注意要根據(jù)示例接口,補全請求所需的參數(shù)信息
不難發(fā)現(xiàn)jd的api里面都有一個sign參數(shù),這個是通過時間戳(st參數(shù))和uuid通過一定規(guī)則md5出來的,用于數(shù)據(jù)安全。因此想要爬取jd的數(shù)據(jù),需要知道這個加密規(guī)則(某商城里有出售的,需要的同學(xué)可以去購買)。