在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
现在的社会智能手机已经全面普及,而随之产生改变的还有应用软件(APP)取代网页,成为主流的技术。由于APP的内容一度无法被搜索引擎抓取到,移动互联网将带来一场搜索引擎的生存危机。不过,通过和应用软件开发商的合作,已经一定程度上化解了这场危机。现在,小编整理了抓取App的全面攻略,手把手指导大家如何一步一步操作。
一、APP数据采集,一般走以下两种方式:
1、抓包
抓包有代码经验或APP开发的同学都很容易理解,其实很多APP,走的都是webservice通讯协议的方式,并且由于是公开数据,而且大部分是无加密的。所以只要对网络端口进行监测,对APP进行模拟操作,即可知道APP里面的数据是如何获取的。我们只需要写代码模拟其请求,无论POST还是GET,即可得到该请求所返回的信息。再通过对返回的信息结构化解析,即可得到我们想要的数据。
2、HOOK技术
HOOK技术是一种走操作系统内核的技术,由于安卓系统是开源的,所以可以借助一些框架修改内核,从而实现你要的功能。HOOK的形式,我们走的是Xposed框架。Xposed是一款可以在不修改任何其他开发者开发的应用(包括系统服务)的情况下,改变程序运行的一个开源框架服务。基于它可以制作出许多功能强大的模块,以此来达到应用程序按照你的意愿运行的目的。如果把安卓手机看做一座城堡,那Xposed可以让你拥有一个上帝视角,城里的运作细节尽收你眼底,还能让你插一手改变城堡的运作规律。什么意思呢?简单的说就是你可以通过他,自动化的控制你的APP。如果将我们的APP开在模拟器上,我们可以通过编码,通过他告诉APP这一步干什么,下一步干什么。你把它理解成类似按健精灵或游戏打怪外挂就可以了。而他每走一步,APP与服务端交互的数据,均可获取下来。这种方式广泛用于一些成熟的APP。
二、模拟点击
基本原理(基于UIautomator)
通过程序模拟人的行为对APP的界面进行点击、滑动等操作,同时可以获取APP的Activity页面上的大部分控件上的文本信息(有一些可能获取不到,Uiautomator本身就获取不到)。
三、抓包工具
mac系统 Wireshark
Mac系统 charles
windows Fiddler
通常通过抓包工具来查看请求的接口和参数,简单的可以用fidder,手机端设置代理即可
如果要抓取像声音/视频这种udp的包 可以使用wireshark。
charlse 代理抓包利器
jadx apk反编译
xpoxed hook大法工具
ida 逆向中静态分析工具
以上就是抓取App的手把手步骤指导,你学会了吗?相信只要大家按照以上的步骤去操作,抓取App也是小菜一碟。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
初学者应该怎样学习编程?需要经历那些阶段?
对于初学者来说,学习编程是一个痛苦的过程,甚至认为编程就是一个难以逾越的鸿沟。满屏幕的英文字母,各式各样的专业名词导致初学者连尝试的机会都不敢考虑。但是面对各种网站华丽的效果、方便实用的网络工具以及行业高薪的诱惑,初学者依旧对编程抱有渴望的态度,只是没有好的学习途径和方法。那初学者应该怎样学习编程呢?需要经历那些阶段?
8138
2019-08-01 18:13:46
IOS APP开发需要学什么知识和技能?
IOS APP开发需要学什么知识和技能?目前IOS系统的APP和Android系统的APP,是手机APP开发的两大主流。就拿IOS系统的APP开发来说,需要和安卓完全不同的开发语言和工具。本文着重来探讨开发IOS系统的APP需要学习的知识和技能——自动布局技术。下面小编来和大家分享一下博学谷的相关课程内容。
6795
2019-10-31 17:51:13
0基础IT学习容易吗?应该怎样学习?
IT学习容易吗?应该怎样学习?IT行业蓬勃发展,现在很多小伙伴都想学习IT知识,成为一名IT行业工作者。但是往往开始学习之前又会有很多顾虑,担心自己是完全零经验的小白,会有“学习起来容易吗”,“应该怎么进行学习呢”,“现在开始学晚吗”等诸多疑问。
5454
2020-06-08 10:58:28
付费课与免费课程的区别在哪?
我们所生活的这个时代发展迅速,已然成为了不进步就会退步的状态。大家都想在最短的时间里提升自己,因此各种培训班应运而生,但为什么有许多的免费课程大家都不用,反而选择付费课程呢?目前互联网到了知识付费的阶段,免费课大部分面对零基础的初学者,而付费课属于基础进阶提升能力的课程,有着实质的区别。
13181
2020-06-08 11:53:47
二分法检索变种实现代码怎么写?
二分法检索变种实现代码怎么写?二分法中每次排除都可以排除掉一半的情况,这样寻找效率很高。之所以叫二分,因为每次排除都把所有的情况分成"可能"和"不可能"两种,然后抛弃所有"不可能"的情况。
4549
2020-08-26 15:51:03