python采抓取app数据
2023-06-13 09:15:42 时间
最近大家一直在关注滴滴的相关消息,相信大家或多或少都有了解。一方面是大家发现打车现在已经离不开滴滴,滴滴的影响力已经不知不觉超乎我们的预期;另一方面就是比较敏感的用户网络隐私安全。滴滴作为目前国内领头的打车服务提供商,对中国互联网业务延伸拓宽是有积极作用的,这一点毋庸置疑,但是随着影响力加大,市场垄断、信息不规范获取的问题也突显出来。
和pc 端数据一样,移动端的数据也是可以抓取的,那么App数据好抓取吗?只要是数据获取肯定有难有易的。对于app数据来说,简单的就是app的数据比web端数据更容易抓取,基本都是http、https协议,返回的数据格式也相对规整。那困难的也是真的很困难,需要掌握的技能比较多,比如app逆向、app脱壳、破解加密等。app抓取和网页一样也是会需要反爬的,所以基本的加代理,研究反爬策略也是必须的。
部分抓取app代码分享:
import org.apache.commons.httpclient.Credentials; import org.apache.commons.httpclient.HostConfiguration; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpMethod; import org.apache.commons.httpclient.HttpStatus; import org.apache.commons.httpclient.UsernamePasswordCredentials; import org.apache.commons.httpclient.auth.AuthScope; import org.apache.commons.httpclient.methods.GetMethod; import java.io.IOException; public class Main { # 代理服务器(产品官网 www.16yun.cn) private static final String PROXY_HOST = t.16yun.cn private static final int PROXY_PORT = 31111; public static void main(String[] args) { HttpClient client = new HttpClient(); HttpMethod method = new GetMethod( https://www.xiaohongshu.com/ HostConfiguration config = client.getHostConfiguration(); config.setProxy(PROXY_HOST, PROXY_PORT); client.getParams().setAuthenticationPreemptive(true); String username = 16ABCCKJ String password = 712323 Credentials credentials = new UsernamePasswordCredentials(username, password); AuthScope authScope = new AuthScope(PROXY_HOST, PROXY_PORT); client.getState().setProxyCredentials(authScope, credentials); try { client.executeMethod(method); if (method.getStatusCode() == HttpStatus.SC_OK) { String response = method.getResponseBodyAsString(); System.out.println( Response = + response); } catch (IOException e) { e.printStackTrace(); } finally { method.releaseConnection(); }
通过以上示例我们可以抓取App中流经的网络数据包,捕获原始的数据,如果我们可以分析得到请求的URL和参数的规律,直接用程序模拟即可批量抓取,这当然最好不过了。但是随着技术的发展,App接口往往会带有密钥,我们并不能直接找到这些规律,所以我们需要学习更多的技术。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/52986.html
apachejavapython相关文章
- 如何用anaconda下载python_如何安装配置anaconda与Pycharm「建议收藏」
- Python怎么输入小数和整数_python输入非负整数
- pycharm安装教程2020.3.4_python安装步骤
- python skitlearn_Python sklearn
- pycharm创建flask项目没有子文件夹和app文件_python flask框架
- python删除首行_Python删除文件第一行
- Python元组_python元组的定义方式
- python进阶(17)偏函数partial
- Python编程 列表的常用方法
- python输出unicode编码_Python以utf8编码读取文件
- python分析人口出生率代码_国家统计局居然也能用的上Python?人口数据Python脚本了解一下?…[通俗易懂]
- 【干货书】现代统计学:使用Python的计算机方法
- python抛出异常和捕获异常_Python异常
- python deepcopy函数_Python deepcopy
- Python将数据写入txt文件_python将内容写入txt文件
- python元编程
- 用python画一只兔子
- python实现一个简单的2048游戏详解编程语言
- python学习 变量的操作 与 基本数据类型详解编程语言
- Python操作Redis实现数据持久化(python操作redis)
- 使用 Python 在 GitHub 上运行你的博客
- 用一个开源工具实现多线程 Python 程序的可视化
- Python如何连接PostgreSQL数据库?(python连接postgresql)
- Python如何使用MySQL构建立连接(python怎么连接mysql)
- Linux下的Python开发技术之旅(linux下python开发)
- App测试技术利用Mysql助力质量保障(app测试mysql)
- Python使用稀疏矩阵节省内存实例