如何用anyproxy抓取tiKtok小視頻


工具:anyproxy 安卓模擬器 mumu springmvc程序  js command腳本

原理:安卓模擬器 安裝了軟件后,利用代理 攔截請求,獲得json通過js發送給spirngmvc程序,然后存到數據庫,通過command腳本實現安卓模擬器自動翻頁

先安裝anyproxy

https://www.cnblogs.com/yoable/p/6374134.html

下載mumu模擬器

打開mumu模擬器 for mac or for windows

然后命令行 敲  anyproxy --intercept

到網易mumu模擬器中 設置網絡代理 本機的Ip  然后8001

到模擬器的瀏覽器中敲

http://本機ip:8002/fetchCrtFile 下載ca證書,破解https連接
然后ctrl + c 把之前的命令行干掉
啟動我們的springmvc程序
啟動好之后 執行命令anyproxy --intercept --rule /Users/liyj/sample.js (sample.js的絕對地址,里面是一些回調函數,就是當Json傳過來的時候回調用這些方法,方法中我用的ajax異步調用springmvc程序)
sample.js文件內容
var logMap = {}
var fs = require('fs');
var http = require('http');
  var querystring=require("querystring");
var logger = fs.createWriteStream('/Users/liyj/urlLog.log', {encoding: 'utf-8',flag: 'a'});


function logPageFile(url) {
        logger.write(url + '\r\n');
}

module.exports = {
      *beforeSendResponse(requestDetail, responseDetail) {
	if(requestDetail.url.indexOf('api-eagle.amemv.com/aweme/v1/feed/') == -1 &&
requestDetail.url.indexOf('aweme-eagle.snssdk.com/aweme/v1/feed/') == -1)
	return;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
		                var options = {
              //springmvc程序的ip和端口 就是本機Ip和端口 hostname:'192.168.5.62', port:8081, method: 'POST',
              //requestmapping映射的哪個路徑 path: '/scheduler-crawler/crawldy/do', headers: { 'Content-Type': 'application/json' }, json : {"json" : "fdsaf11"} }; var post_req = http.request(options, function(_res){ _res.setEncoding('utf8'); _res.on('data', function (chunk) { console.log('Response: ' + chunk); }); }); post_req.write(responseDetail.response.body,'utf-8'); post_req.end(); } }

 

然后打開模擬器中的抖音程序,向下翻頁就可以抓取了。抖音是一次返回6條數據 翻6次后 重新在返回6條
利用adb連接模擬器后,adb在模擬器上模擬向下滑操作,這種就跟人為看視頻操作一樣,很難被察覺
adb connect 127.0.0.1
然后執行/Users/liyj/Desktop/f.command ; exit;(f.command文件的絕對路徑)
f.command內容為
for (( j=40;j<50000000;j++))
      do
            adb shell input swipe 400 850 400 200 350
      done

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM