网络爬虫入门学习

一、初识网络爬虫

1.1 网络爬虫定义

网络爬虫英文名叫Web Crawler或Web Spider,是一种自动浏览网页并采集所需要信息的程序
在这里插入图片描述
在这里插入图片描述

1.每个节点都是一个网页
2.每条边都是一个超链接
3.网络爬虫就是从这样一个网络图中抓取感兴趣的内容

1.2 爬虫原理

  • 爬虫从初始网页的URL开始, 获取初始网页上的URL
  • 在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列
  • 直到满足系统给定的停止条件

1.3 爬虫工作的过程

在这里插入图片描述

  • URL管理模块:发起请求。一般是通过HTTP库,对目标站点进行请求。等同于自己打开浏览器,输入网址
  • 下载模块:获取响应内容(response)。如果请求的内容存在于服务器上,那么服务器会返回请求的内容,一般为:HTML,二进制文件(视频,音频),文档,Json字符串等
  • 解析模块:解析内容。对于用户而言,就是寻找自己需要的信息。对于Python爬虫而言,就是利用正则表达式或者其他库提取目标信息
  • 存储模块:保存数据。解析得到的数据可以多种形式,如文本,音频,视频保存在本地

网络爬虫具体详情参考:什么是网络爬虫?有什么用?怎么爬?终于有人讲明白了

二、示例一

爬取南阳理工学院ACM题目网站http://www.51mxd.cn/ 练习题目数据的抓取和保存
在这里插入图片描述

编程工具:vscode
运行环境:Python3.8

2.1 需要的内置库以及第三方库

在这里插入图片描述

2.2 具体代码

  • 导入库(本次调用了 requests网页请求库和Beautiful Soup网页解析库)
import requests #导入网页请求库
from bs4 import BeautifulSoup #导入网页解析库
import csv
from tqdm import tqdm #Tqdm 是一个快速,可扩展的Python进度条

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

完整代码:

import requests #导入网页请求库
from bs4 import BeautifulSoup #导入网页解析库
import csv
from tqdm import tqdm #Tqdm 是一个快速,可扩展的Python进度条

#模拟浏览器访问
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'

#表头
csvHeaders = ['题号','难度','标题','通过率','通过数/总提交数']

#题目数据
subjects = [];

#爬取题目
print('题目信息爬取中:\n')
for pages 
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值