博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
fiddler抓包分析豆瓣250
阅读量:3938 次
发布时间:2019-05-23

本文共 2415 字,大约阅读时间需要 8 分钟。

使用fiddler进行抓包分析

打开fiddler设置认证证书

在这里插入图片描述

开始使用fiddler进行分析
在这里插入图片描述
鼠标点击刚刚哪个请求右键选中copy这个选项在选择Just URL这个选项拷贝url地址我们把拷贝的url复制过来到浏览器看一下
这里可以看到我们要的数据就在网页里面
page_limit=20这里是 偏移量的意思这里面可以改变他的值提取最大
一页就是20个数据
page_start=0 这里是指的是页数 当前第几页

在这里插入图片描述

在这里插入图片描述

**

.

  • 代码如下
import requestsimport pymysqlimport json#伪装头headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36'}#每一页20url = 'https://movie.douban.com/j/search_subjects?type=movie&tag=%E7%83%AD%E9%97%A8&sort=recommend&page_limit=20&page_start=0'url_get = requests.get(url=url,headers=headers)#调用ge方法下载这个字典josn_url = url_get.json()#使用json方法将respone 对象转为列表/字典coteent = 0list_url = josn_url['subjects']#循环遍历for list_s in list_url: #标题 print(list_s['title']) #评分 print(list_s['rate'])#这里我们已经提取好了我们把数据保存到mysql中#首先我们要创建一个数据库一个数据表还有数据字段#这里在创建id的时候勾选all这选项在选保存执行就可以了因为你不选all不能自己自增序列

在这里插入图片描述

在这里插入图片描述

  • 代码如下
import jsonimport requestsimport pymysqldef get_data():    url = 'https://movie.douban.com/j/search_subjects?type=movie&tag=%E7%83%AD%E9%97%A8&sort=recommend&page_limit=330&page_start=0'    headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.80 Safari/537.36' } json_data = requests.get(url, headers=headers) #print(json_data.text) data = json_data.text json_data = json.loads(data) subjects = json_data['subjects'] for i in subjects: name = i['title'] #print(name) rate = i['rate'] #print(rate) url_s = i['url'] #print(url_s) # 连接数据库 db = pymysql.connect(host='localhost', user='root', password='root', port=3306, db='text') # 获取下标 cursor = db.cursor() # sql语句插入 sql = "INSERT INTO t_movie(movie_rate,movie_name,movie_url) VALUES(%s,%s,%s)" try: cursor.execute(sql, (name, rate, url_s)) db.commit() print('插入成功') except: cursor.rollback() print('插入失败') cursor.close()def main(): get_data()if __name__ == '__main__': main()

截图效果图如下

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

总结

知识点主要难度是数据库
要了解一点数据库的知识还有sql语句
这里插入一直插入不进去,原来我少了一个最关键的参数值
原来的sql 写法一直插入失败忘了把后面的值的参数传入进去了。。。
所以插入失败没有对应的值
正确写法

sql = "INSERT INTO t_movie(movie_rate,movie_name,movie_url) VALUES(%s,%s,%s)"      #在传入进去      cursor.execute(sql, (name, rate, url_s))      #最后在在关闭掉数据库      db.commit()

在这里插入图片描述

码字不易啊,喜欢的朋友可以关注一下,一位爱玩爬虫的学生

一起学爬虫呀!!!

转载地址:http://qoywi.baihongyu.com/

你可能感兴趣的文章
watchguard ssl100恢复出厂化设置
查看>>
CentOS 一键安装Cacti 1.2.3脚本
查看>>
CentOS 7系统上制作Clonezilla(再生龙)启动U盘并克隆双系统
查看>>
fail2ban的使用-控制连接数
查看>>
btkill-连接数控制
查看>>
NAT+www的发布
查看>>
dhcp.conf
查看>>
关于win10的升级
查看>>
cacti突然不显示流量
查看>>
发现一个好工具记录一下,U盘启动ISO文件。
查看>>
centos7下配置网卡以及查询网卡UUID
查看>>
适用于旧计算机的10款最佳轻量级Linux发行版
查看>>
在VMware Workstation中批量创建上千台虚拟机
查看>>
linux常用软件收集
查看>>
linux查看桌面环境
查看>>
centos8安装ntfs-3g后,不能自动挂载U盘(NTFS格式)
查看>>
Linux安装显卡驱动
查看>>
使用minicom
查看>>
linux常用外设-打印机指纹和蓝牙的安装管理
查看>>
记录一下安装在移动硬盘上的fedora linux v33在各种笔记本下的兼容性
查看>>