We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
因为训练需要数据,数据在某个app上。所以开始进行爬虫工作,主要分下面几步:
抓请求无非就是使用fiddler ,让手机和电脑连接同一个局域网开始抓包。
因为是app,某些请求是加密的,后来我发现这个加密方式在页面上有个js的库是负责的,但是我用了一个复杂的方式使用,使用了apk反编译,注意生成的可能没有dex文件,运行命令需要一个参数,见知乎
看懂了反编译的代码,知道加密怎么办到,准备用python重写,但是奈何python的加密不是很熟,也就作罢,直接运行反编译的java代码,这也给后面部署带来了麻烦。
只要把请求放到postman上,基本的爬虫代码是不用手动撰写,复制过来改改参数就好了。
这里爬虫使用了一个MapReduce的结构,数据是从redis拉下来的,具体怎么操作看印象笔记。mongo操作redis操作都很简单。 注意这种json结构的数据的key值应该都是一样的,不然之后遍历检索都很困难。 mongo有可视化工具很方便 mongodb和redis可以直接使用docker部署,也很方便。
遭遇到封ip、封账号。封ip解决办法。使用代理解决
sslocal -c json sudo polipo socksParentProxy=localhost:1080 proxyPort=1087 request(proxy={}) # 具体看代码
整个项目使用docker部署,一个部署自己带上一个数据库,这样就没有太大瓶颈。
The text was updated successfully, but these errors were encountered:
No branches or pull requests
因为训练需要数据,数据在某个app上。所以开始进行爬虫工作,主要分下面几步:
抓请求
抓请求无非就是使用fiddler ,让手机和电脑连接同一个局域网开始抓包。
抓包分析
因为是app,某些请求是加密的,后来我发现这个加密方式在页面上有个js的库是负责的,但是我用了一个复杂的方式使用,使用了apk反编译,注意生成的可能没有dex文件,运行命令需要一个参数,见知乎
模拟请求
看懂了反编译的代码,知道加密怎么办到,准备用python重写,但是奈何python的加密不是很熟,也就作罢,直接运行反编译的java代码,这也给后面部署带来了麻烦。
写代码
只要把请求放到postman上,基本的爬虫代码是不用手动撰写,复制过来改改参数就好了。
数据库
这里爬虫使用了一个MapReduce的结构,数据是从redis拉下来的,具体怎么操作看印象笔记。mongo操作redis操作都很简单。
注意这种json结构的数据的key值应该都是一样的,不然之后遍历检索都很困难。
mongo有可视化工具很方便
mongodb和redis可以直接使用docker部署,也很方便。
反爬策略
遭遇到封ip、封账号。封ip解决办法。使用代理解决
todo
整个项目使用docker部署,一个部署自己带上一个数据库,这样就没有太大瓶颈。
The text was updated successfully, but these errors were encountered: