API

analysis

新浪微博

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
Date: 2018.05.06
# 长链转短链

请求地址:
http://api.t.sina.com.cn/short_url/shorten.json

请求方式:
GET

请求参数:
source: appkey
url_long: 需要转换的长链接

完整地址:
http://api.t.sina.com.cn/short_url/shorten.json?source=3271760578&url_long=

# 短链转长链

请求地址:
http://api.t.sina.com.cn/short_url/expand.json

请求方式:
GET

请求参数:
source: appkey
url_short: 已转换的短链接

完整地址:
http://api.t.sina.com.cn/short_url/expand.json?source=3271760578&url_short=

Date: 2018.12.29
# 个人信息

请求地址:
https://m.weibo.cn/api/container/getIndex

请求方式:
GET

请求参数:
value: 微博用户id(PC端微博主页源码中$CONFIG['oid']的值)

完整地址:
https://m.weibo.cn/api/container/getIndex?type=uid&value=xxxxxx

# 微博信息

请求地址:
https://m.weibo.cn/api/container/getIndex

请求方式:
GET

请求参数:
value: 微博用户id(PC端微博主页源码中$CONFIG['oid']的值)
containerid: 微博板块id(URL1中返回)
page: 微博页数

完整地址:
https://m.weibo.cn/api/container/getIndex?type=uid&value=1844664482&containerid=xxxxxx&page=1

二维码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Date: 2018.07.16
# 搜狐视频

请求地址:
https://my.tv.sohu.com/user/a/wvideo/getQRCode.do

请求方式:
GET

请求参数:
text: 内容
width: 宽度
height: 高度
picType: 二维码中间图标,可取值0(默认,无图标)、1(搜狐视频图标)、2(微信图标)

完整地址:
https://my.tv.sohu.com/user/a/wvideo/getQRCode.do?width=200&height=200&picType=1&text=


Date: 2019.07.07
# 腾讯网

请求地址:
https://tools.3g.qq.com/qrcode

请求方式:
GET

请求参数:
margin: 边距
width: 宽度
height: 高度
content: 内容

完整地址:
https://tools.3g.qq.com/qrcode?margin=20&width=200&height=200&content=http://weixin.qq.com/r/ZnV8ZHjEqiXVrTwH9yB0

爱壁纸

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
Date: 2018.10.19
# 壁纸

请求地址:
http://service.picasso.adesk.com/v1/vertical/vertical

请求方式:
GET

请求参数:
order(分类): new(最新)
adult(未知): false
first(未知): 0
skip(从第几张图片开始请求): 0(从头请求)
limit(每次默认请求图片数量): 30

完整地址:
http://service.picasso.adesk.com/v1/vertical/vertical?order=new&adult=false&first=0&skip=0&limit=30

# 视频

请求地址:
http://service.videowp.adesk.com/v1/videowp/videowp

请求方式:
GET

请求参数:
order(分类): new(最新)
adult(未知): false
first(未知): 0
skip(从第几个视频开始请求): 0(从头请求)
limit(每次默认请求视频数量): 30

完整地址:
http://service.videowp.adesk.com/v1/videowp/videowp?order=new&adult=false&first=0&skip=0&limit=30

# 横图

请求地址:
http://service.picasso.adesk.com/v1/wallpaper/wallpaper

请求方式:
GET

请求参数:
order(分类): new(最新)
adult(未知): false
first(未知): 0
skip(从第几个横图开始请求): 0(从头请求)
limit(每次默认请求横图数量): 30

完整地址:
http://service.picasso.adesk.com/v1/wallpaper/wallpaper?order=new&adult=false&first=0&skip=0&limit=30

扇贝单词

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Date: 2019.01.16
# 查单词

请求地址:
http://api.shanbay.com/bdc/search/

请求方式:
GET

请求参数:
word: 查询单词

完整地址:
http://api.shanbay.com/bdc/search/?word=

时间戳

1
2
3
4
5
6
7
Date: 2019.07.04

请求地址:
http://acs.m.taobao.com/gw/mtop.common.getTimestamp/

请求方式:
GET

牛客网

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
Date: 2019.01.26
# 登录

请求地址:
http://m.nowcoder.com/login/do

求方式:
POST

求参数:
account: 账号
password: 密码

# 专项练习目录

请求地址:
http://m.nowcoder.com/itest/get-menu-json

请求方式:
GET

请求参数:
paperType: 0(计算机)、5(通信)、6(产品运营)、7(行测)
_: 时间戳(可忽略)

完整地址:
http://m.nowcoder.com/itest/get-menu-json?paperType=0&_=1548512249776

# 专项练习题目(需登录)

a.测验tid
求地址:
http://m.nowcoder.com/itest/makePaper

求方式:
GET

求参数:
tagIds: 专项练习目录中返回的id

整地址:
http://m.nowcoder.com/itest/makePaper?tagIds=578

取目标数据:
302重定向,获取location中tid

b.获取测验内容
请求地址:
http://m.nowcoder.com/test/get-all-question

请求方式:
GET

请求参数:
tid: a步骤中获取的tid

整地址:
http://m.nowcoder.com/test/get-all-question?tid=20951306


# 大题查看目录

请求地址:
http://m.nowcoder.com/question/get-menu-json

请求方式:
GET

请求参数:


完整地址:
http://m.nowcoder.com/question/get-menu-json

# 大题查看内容

请求地址:
http://m.nowcoder.com/get-question-info-v4

请求方式:
GET

请求参数:
pos: 第几题
tagId: 题目类别

完整地址:
http://m.nowcoder.com/get-question-info-v4?pos=1&tagId=569

# 公司真题推荐

请求地址:
http://m.nowcoder.com/paper/get-recommend-paper

请求方式:
GET

请求参数:
array: data

整地址:
http://m.nowcoder.com/paper/get-recommend-paper?array=data

# 公司真题全部类别

请求地址:
http://m.nowcoder.com/paper/get-company-paper-cnt

请求方式:
GET

请求参数:
array: data

整地址:
http://m.nowcoder.com/paper/get-recommend-paper?array=data

# 每套真题信息

请求地址:
http://m.nowcoder.com/paper/get-company-paper-menu

请求方式:
GET

请求参数:
companyId: 公司id(公司真题全部类别返回的数据)
_: 时间戳(可忽略)

完整地址:
http://m.nowcoder.com/paper/get-company-paper-menu?companyId=142&_=1548514973216

# 每套真题内容

请求地址:
http://m.nowcoder.com/test/{id}/begin

请求方式:
GET

求参数:
id: 每套试卷id,由每套真题信息返回

完整地址:
http://m.nowcoder.com/test/194/begin

目标数据:
302 重定向取Location 获得试卷题目链接,题目内容为页面源码<script></script>里的内容

# 每套真题答案

请求地址:
http://m.nowcoder.com/getQuestionInfo?token=&tagId=20951434&pos=1&type=1

请求方式:
GET

求参数:
tagId: 考试id
pos: 第几题
type: 题目类型

完整地址:
http://m.nowcoder.com/getQuestionInfo?token=&tagId=20951434&pos=1&type=1

IP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Date: 2018.12.29
# 天翼云盘

请求地址:
https://cloud.189.cn/ip/getIp.do

Date: 2019.02.23
# 当当网

请求地址:
http://nt-dd.dangdang.com/trail/trail/userinfo.php?action=getregion&siteid=dd_1000&userid=dd_1000_ISME9754_guestFD24E48C-EE7A-5A

Date: 2019.02.24
# 手机QQ

请求地址:
http://vv.video.qq.com/checktime

Date: 2018.12.29
腾讯网天气

请求地址:
https://wis.qq.com/weather/common?source=pc&weather_type=observe|alarm&province=广东省&city=深圳市

Date: 2018.12.29
腾讯网定位

请求地址:
https://fw.qq.com/ipwhere ['Referer': 'https://new.qq.com/ch/photo/' + GBK]
https://apis.map.qq.com/ws/location/v1/ip?key=3BFBZ-ZKD3X-LW54A-ZT76D-E7AHO-4RBD5

Date: 2019.07.07
小米

请求地址:
http://resolver.gslb.mi-idc.com/gslb/gslb/getbucket.asp

Date: 2019.07.21
腾讯视频

请求地址:
http://vv.video.qq.com/checktime

美团外卖

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Date: 2019.04.23
# 美团外卖城市id

请求地址:
https://www.meituan.com/ptapi/getprovincecityinfo/

#美团外卖城市商家信息

请求地址:
http://api.meituan.com/group/v4/deal/select/city/1/cate/1

请求方式:
GET

请求参数:
city: 1
offset: 0
limit: 50

完整地址:
http://api.meituan.com/group/v4/deal/select/city/1/cate/1?sort=solds&hasGroup=true&mpt_cate1=1&offset=0&limit=50

淘宝

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
Date: 2019.05.23
# 淘宝商品详细信息(访问频率限制)
## 方式一:

请求地址:
https://acs.m.taobao.com/h5/mtop.taobao.detail.getdetail/6.0/

https://h5api.m.taobao.com/h5/mtop.taobao.detail.getdetail/6.0/

请求方式:
GET

请求参数:
data: {"itemNumId":"商品id"}

完整地址:
注意参数需要编码
https://h5api.m.taobao.com/h5/mtop.taobao.detail.getdetail/6.0/?data=%7B%22itemNumId%22%3A%22{}%22%7D'.format(id)

https://h5api.m.taobao.com/h5/mtop.taobao.detail.getdetail/6.0/?data=%7B%22itemNumId%22%3A%22{}%22%7D'.format(id)

## 方式二:

def get_cookie():
"""
获取cookie信息中的参数构造sign参数
"""
APPKEY = '12574478'
URL = 'https://h5api.m.tmall.com/h5/mtop.taobao.baichuan.smb.get/1.0/'
params = {
'jsv': '2.4.8',
'appKey': APPKEY,
't': int(time.time() * 1000),
# 'sign': '',
'api': 'mtop.taobao.baichuan.smb.get',
'v': '1.0',
'type': 'originaljson',
'dataType': 'jsonp',
'timeout': '10000'
}
res = requests.get(URL, params=params, headers=headers)
return res.cookies


def product_api(itemId):
"""
根据itemid获取商品信息主接口
:param itemId:商品id
:return:响应的json
"""
APPKEY = '12574478'
DATA = '{{"itemNumId":"{}"}}'.format(itemId)
URL = 'https://h5api.m.taobao.com/h5/mtop.taobao.detail.getdetail/6.0/'
params = {
'jsv': '2.4.8',
'appKey': APPKEY,
't': int(time.time() * 1000),
# 'sign': '',
'api': 'mtop.taobao.detail.getdetail',
'v': '6.0',
'dataType': 'jsonp',
'ttid': '2017@taobao_h5_6.6.0',
'AntiCreep': 'true',
'type': 'jsonp',
'callback': 'mtopjsonp2',
'data': DATA
}
gen_cookie = get_cookie()
_m_h5_tk = gen_cookie.get('_m_h5_tk')
_m_h5_tk_enc = gen_cookie.get('_m_h5_tk_enc')
cookies = {
'_m_h5_tk': _m_h5_tk,
'_m_h5_tk_enc': _m_h5_tk_enc
}
token = _m_h5_tk.split('_')[0]
t2 = str(int(time.time() * 1000))
sign = hashlib.md5('&'.join([token, t2, APPKEY, DATA]).encode('utf-8')).hexdigest()
params.update({'t': t2, 'sign': sign})
api_data = requests.get(URL, params=params, headers=headers, cookies=cookies).text
api_json = json.loads(api_data.strip('mtopjsonp2()'))
return api_json


# 淘宝可用搜索接口(未登录可搜索)
# 一淘(https://www.etao.com/search.htm?nq=羽绒服)
# 爱淘宝(H5, PC)(https://ai.taobao.com/, https://ai.m.taobao.com/)
# 淘宝热卖(https://uland.taobao.com/sem/tbsearch?keyword=羽绒服)
# 阿里妈妈(https://pub.alimama.com/promo/search/index.htm?q=羽绒服)

未完待续…