网络协议抓包分析与爬虫入门
网络协议抓包分析与爬虫入门
- Wireshark抓取疯狂聊天数据包
- 爬虫入门
- 抓取南阳理工学院ACM题目网站
- 代码
- 运行结果
- 抓取重庆交通大学新闻
- 代码
- 运行结果
Wireshark抓取疯狂聊天数据包
下载解压运行例子程序
选择相同的房间号
发送信息然后抓包
爬虫入门
抓取南阳理工学院ACM题目网站
代码
#导入包
import requests
from bs4 import BeautifulSoup
import csv
from tqdm import tqdm#在电脑终端上显示进度,使代码可视化进度加快
# 模拟浏览器访问
Headers = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3741.400 QQBrowser/10.5.3863.400'
# 题目数据
subjects = []
# 表头
csvHeaders = ['题号', '难度', '标题', '通过率', '通过数/总提交数']# 爬取题目
print('题目信息爬取中:\n')
for pages in tqdm(range(1, 11 + 1)):r = requests.get(f'http://www.51mxd.cn/problemset.php-page={pages}.htm', Headers)r.raise_for_status()r.encoding = 'utf-8'soup = BeautifulSoup(r.text, 'html.parser')td = soup.find_all('td')#讲所有含TD的项提取出来subject = []for t in td:if t.string is not None:#利用string方法获取其中的内容subject.append(t.string)if len(subject) == 5:subjects.append(subject)subject = []with open('D:\\net_com\\nylgoj.csv', 'w', newline='') as file:fileWriter = csv.writer(file)fileWriter.writerow(csvHeaders)fileWriter.writerows(subjects)print('\n题目信息爬取完成!!!')
注意实例代码中的html5lib改为html.parse
运行结果
抓取重庆交通大学新闻
代码
# -*- coding: utf-8 -*-
"""
Created on Wed Nov 17 14:39:03 2021@author: 86199
"""
import requests
from bs4 import BeautifulSoup
import csv
from tqdm import tqdm
import urllib.request, urllib.error # 制定URL 获取网页数据# 所有新闻
subjects = []# 模拟浏览器访问
Headers = { # 模拟浏览器头部信息"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36 Edg/95.0.1020.53"
}# 表头
csvHeaders = ['时间', '标题']print('信息爬取中:\n')
for pages in tqdm(range(1, 65 + 1)):# 发出请求request = urllib.request.Request(f'http://news.cqjtu.edu.cn/xxtz/{pages}.htm', headers=Headers)html = ""# 如果请求成功则获取网页内容try:response = urllib.request.urlopen(request)html = response.read().decode("utf-8")except urllib.error.URLError as e:if hasattr(e, "code"):print(e.code)if hasattr(e, "reason"):print(e.reason)# 解析网页soup = BeautifulSoup(html, 'html.parser')# 存放一条新闻subject = []# 查找所有li标签li = soup.find_all('li')for l in li:# 查找满足条件的div标签if l.find_all('div',class_="time") is not None and l.find_all('div',class_="right-title") is not None:# 时间for time in l.find_all('div',class_="time"):subject.append(time.string)# 标题for title in l.find_all('div',class_="right-title"):for t in title.find_all('a',target="_blank"):subject.append(t.string)if subject:print(subject)subjects.append(subject)subject = []# 保存数据
with open('D:\\net_com\\test.csv', 'w', newline='',encoding='utf-8') as file:fileWriter = csv.writer(file)fileWriter.writerow(csvHeaders)fileWriter.writerows(subjects)print('\n信息爬取完成!!!')
运行结果
网络协议抓包分析与爬虫入门相关推荐
- Wireshark数据抓包分析(网络协议篇)第1章网络协议抓包概述
Wireshark数据抓包分析(网络协议篇)第1章网络协议抓包概述 网络协议是用于不同计算机之间进行网络通信的.网络协议是网络上所有设备(如网络服务器.计算机.交换机.路由器等)之间通信规则的集合,它 ...
- 视频教程-2019版抓包分析-Wireshark从入门到精通【进阶篇】-其他
2019版抓包分析-Wireshark从入门到精通[进阶篇] G-LAB IT实验室创始人.知名讲师.同时拿到路由交换.网络安全.数据中心3个方向的CCIE专家级别认证.教学风趣幽默,广受学员好评 郭 ...
- ICMP协议抓包分析-wireshark
ICMP协议抓包分析-wireshark ICMP- (Internet Control Message Protocol,网际报文协议)是Internet协议族的核心协议之一,也可称为是网际控制报文 ...
- TCP协议抓包分析 -- wireshark
TCP协议抓包分析 – wireshark TCP- (Transmission Control Protocol,传输控制协议)是一种面向连接的.可靠的.基于IP的传输层协议.它的主要目的就是为数据 ...
- UDP协议抓包分析 -- wireshark
UDP协议抓包分析 – wireshark UDP是User Datagram Protocol用户数据报协议的简称.他是OSI七层模型中一种无连接的传输层协议,提供面向事务的简单的不可靠信息传送服务 ...
- ARP协议抓包分析 -- wireshark
ARP协议抓包分析 – wireshark ARP- Address Resolution Protocol协议,即地址解析协议.该协议功能就是将IP地址解析成MAC地址. 在发送数据的时候,只知道目 ...
- python自动抓包手机_Python爬虫入门:教你通过Fiddler进行手机抓包!
哟哟哟~ hi起来 everybody Python爬虫入门:教你通过Fiddler进行手机抓包! 今天要说说怎么在我们的手机抓包 进群:700341555获取Python爬虫入门学习资料! Pyth ...
- 网络:抓包分析dns的原理
DSN理论 DNS是什么 在互联网上有多达到上亿的设备,而这些设备之间互相联通网络,每一台主机都需要一个唯一的标识符(就像是我们每个人都有一张身份证),而这个标识符就是IP地址,由于IP地址是数字,不 ...
- 网络:抓包分析ping的原理
控制报文协议(Internet Control Message Protocol,ICMP)是 TCP/IP 协议族的一个子协议.ICMP 协议用于在 IP 主机和路由器之间传递控制消息,描述网络是否 ...
- 网络协议抓包与爬虫入门
目录 一.使用wireshark抓取聊天信息 二.爬虫爬取学校通知信息 1.爬取南阳理工学院ACM题目网站 2.爬取学校官网的信息通知 三.总结 四.参考文献 一.使用wireshark抓取聊天信息 ...
最新文章
- go 开了多少个goroutine 怎么看_线上 Go 程序偶尔出现异常怎么办?这个思路可解决你的烦恼...
- 软件过程与项目管理第四周作业
- IntentService详解
- Apollo创建项目
- html 使用ajax php函数吗,php – 为什么用AJAX加载html后jQuery更改函数不起作用?
- [js] 如何按回车自动提交表单
- hdu4011(水贪心)
- 回溯——伯努利装错信封问题
- 使用outputstream写到指定位置_MaxCompute Spark与Spark SQL对比分析及使用注意事项
- 奥拉星插件flash下载手机版下载安装_奥拉星游戏插件
- 学习oracle的感悟,随笔:最近关于Oracle学习思考的一些感悟
- swagger导出excel文档_excel导入导出api
- JavaScript 运算符
- 【2021】【论文笔记】红外及THz下的细胞膜生物效应——效应是现象,作用是机理——THz对医学的好处
- 网盘拉新项目的变现玩法解析!
- 手机(wap)网页底部固定悬浮广告带轮播特效代码
- mysql 快照_Mysql可重复读(2) —— 快照真的就是快照吗
- 挂牌、摘牌、停牌与复牌
- 支付宝支付开发实践总结-Java-支付宝当面付-支付宝小程序-二维码生成-支付宝退款-APP调起支付宝支付
- alpha策略_如何设计Alpha拮抗剂
热门文章
- 数码管超声波c语言黑51,51单片机开发板-超声波测距-数码管显示
- 高仿墨迹天气下拉拉伸图片
- Android经典项目开发之天气APP实例分享
- 中国银行 网银 控件造成 IE8 崩溃的解决办法
- PLC十字路口交通灯设计
- 烽火路由路虚拟服务器,烽火路由器怎么设置?烽火路由器设置详解
- php连接mysql数据库 简洁代码
- centos中使用goaccess分析nginx日志,goaccess分析多个nginx日志
- Jetson nano : PWM风扇调速。
- 镁光ssd管理工具 linux,解决BIOS找不到SSD,镁光SSD固态硬盘升级固件方法