python爬app_网站与APP抓包分析(应用)通过Python实现APP内容爬虫

1、APP数据交互分析

以某考试练习APP为例(只爬取题目,无答案)

1.1、环境准备

(1)PC(笔记本)上安装WIFI外放工具,例如360免费WIFI

(2)手机安装APP后,注册账号并登陆

1.2、请求分析

运行APP,并触发所需场景,定位请求记录

672482c001064f838135a7914874fb3c.png

请求分析

496baeac456c472499a972d348ebaba8.png

f9436a2edcbb49a4a4c3416f4abfe653.png

通过以上过程可知,习题加载过程为:

HOST: 182.92.213.77:9011

请求类型:POST

URL: http://182.92.213.77:9011/safeEden/r/p/d/ugetquest.d

Cookie:Uid=155710&Slid=1

其中Uid=用户ID,Slid=习题归属分组,每组加载3道题。

2、Python脚本实现

构造习题加载URL,通过Python 构造HTTP POST清洗;

通过循环执行习题获取请求,遍历获取习题,并写入txt文档;

对文档进行去重,可得APP中大部分习题。

2.1、Python脚本

#!/usr/bin/env python

#-*-coding:gb2312-*-

from urllib.request import urlopen

def readquest(v):

csvalue=v

url = 'http://182.92.213.77:9011/safeEden/r/p/d/ugetquest.d' #构造URL

data = bytes(csvalue,'utf8')

r = urlopen(url,data=data) #发送URL,包括URL和Cookie

response =str(r.read(),'utf8') #获得请求

print (response)

f=open('ItemBank.txt','a+')

f.write(response) #将返回结果希尔TXT文档

def xunhuan():

cs1='Uid=149778&Slid='

i=1

while i<=5: #循环次数

cs2=i

cs=cs1 + str(cs2)

readquest(cs)

i=i+1

xunhuan()

2.2、本地习题记录

本地习题记录

025e25502f1a4d88858930f4e0ff8579.png

注:

此为对抓包工具与Python配合应用的示例,本文只以下载试题题目为例,如有侵权,请联系作者删除。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值