zl程序教程

您现在的位置是:首页 >  后端

当前栏目

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