php外挂python脚本抓取ajax数据

时间:2022-07-15 15:25:03

之前我写过一遍php外挂python脚本处理视频的文章。今天和大家分享下php外挂python实现输入关键字搜索的脚本

首先我们先来分析一波网站:

http://www.dzdpw.com/s.php

php外挂python脚本抓取ajax数据

我们可以看到,普通的抓取网站已经不能满足我们的需求了。此网站采用了二次获取数据。我们再来看看头部;

php外挂python脚本抓取ajax数据

可以看到数据是通过ajax获取的。我们吧拿到的链接放到浏览器直接打开报错了。有些网站是直接拿到链接就能获取数据,但是明显,这个接口采用post接口请求

我们先来请求一波:

代码走起:

# -*- coding: utf-8 -*-
# @Time : 2019/9/4 14:43
# @Author : wujf
# @Email : 1028540310@qq.com
# @File : 爬取ajax数据.py
# @Software: PyCharm
'''
json.loads(json_str) json字符串转换成字典
json.dumps(dict) 字典转换成json字符串
'''
import requests
import json
url = "http://nddb.ic361.cn:8080/proc/getrows/dp_cloudprice_gets"
seach = input("请输入您要搜索的内容:")
list = ['507786','14922','-1']
list.append(seach)
d = {
'token':'A0E5CD90-ECE4-440C-8B39-084C0FE61E69',
'uid':'507786',
'mycoid':'14922',
'con':'15',
'a':list
}

  php外挂python脚本抓取ajax数据

果然能得到数据。

接下来就好办了:

上代码--------

php外挂python脚本抓取ajax数据

import requests
import json
import sys
url = "http://nddb.ic361.cn:8080/proc/getrows/dp_cloudprice_gets"
seach = sys.argv[1]
#seach1 = sys.argv[2]
#item = seach+'-'+seach1
# with open(r'D:\\phpStudy_server\\PHPTutorial\\WWW\\demo\\log.txt','a') as f:
# try:
# f.write(seach)
# except Exception as e:
# print(e)
# seach = input("请输入您要搜索的内容:")
list = ['507786','14922','-1']
list.append(seach)
d = {
'token':'A0E5CD90-ECE4-440C-8B39-084C0FE61E69',
'uid':'507786',
'mycoid':'14922',
'con':'15',
'a':list
}
r = requests.post(url,data=d)
dic = r.json()
print(json.dumps(dic))

  

然后我们来看下打印结果:

php外挂python脚本抓取ajax数据