爬虫练习题(一)

简介: 爬虫练习题实战

目标网站:https://www.1ppt.com/moban/

爬取要求:

1、 翻页爬取这个网页上面的源代码

2、 并且保存到本地,注意编码

1.分析网站:

https://www.1ppt.com/moban/ 第一页

https://www.1ppt.com/moban/ppt_moban_2.html 第二页

https://www.1ppt.com/moban/ppt_moban_3.html 第三页

import urllib.request

start = int(input("输入起始页"))  # 转int
end = int(input("输入结束页"))
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36'
}
for n in range(start, end + 1):
    url = 'https://www.1ppt.com/moban/ppt_moban_{}.html'.format(n)
    print(url)
    req = urllib.request.Request(url, headers=headers)  # 实例化请求对象
    response = urllib.request.urlopen(req)  # 发送请求的方法
    with open(f'第{n}页.html', 'a', encoding='gb2312') as f:
        f.write(response.read().decode('gb2312'))

首先,我们打开网址,右击点开查看网页源代码,或者是右击检查抓包,Network 网络是展现网页数据包的地方,找网址相同的数据包,点开 response 响应内容,这也是页面源码。

我们在 pycharm 新建文件,第一步分析网页抓包,手动翻页,找到 url 规律,把网页链接拿下来复制并粘贴在 pycharm 工程文件中,我们可以看到第一页和后面的网页链接不一致,这里可以手动加上,后面可能会需要用到判断。

然后,我们用 import 导入 urllib.request 模块,Ctrl+Alt+L 可以让代码变规范。

构建 url,可以用循环,也可以一页一页构建,网址之前是 http(80)https(443)协议,括号内为端口,紧接着是域名,“?”后是 get 请求携带的一些参数,kw 搜索内容,pn 为页面,其他的参数可能不怎么影响爬取进程,就可以删掉。构建好 URL 后,可以打印

发起请求

zlf = urllib.request.Request(url,headers=headers),构建请求对象,实例化请求对象,并用变量接收

response = urllib.request.urlopen(zlf)

拿到响应内容,最后,用 with open 保存,文件名,'w'写入(模式默认只读'r'),encoding(编码格式,怎么解码怎么写),as 后面取别名,

read 把数据以字节形式提取出来,后面可以转码用 decode

目录
相关文章
|
数据采集 数据安全/隐私保护 索引
爬虫学习
爬虫学习
116 1
|
JSON 固态存储 数据格式
【Python百日刷题计划】Day8~网页分析和一些基础题目
【Python百日刷题计划】Day8~网页分析和一些基础题目
198 0
【Python百日刷题计划】Day8~网页分析和一些基础题目
|
数据采集 Web App开发 Python
用Python爬取了拉勾网的招聘信息+详细教程+趣味学习+快速爬虫入门+学习交流+大神+爬虫入门
关于 一直埋头学习,不知当前趋势,这是学习一门技术过程中最大的忌讳。刚好利用python爬虫,抓取一下拉勾网关于python职位的一些基本要求,不仅能知道岗位的基本技能要求,还能锻炼一下代码能力,学以致用,一举两得。
1892 0
|
数据采集 XML JSON
图解爬虫,用几个最简单的例子带你入门Python爬虫
爬虫一直是Python的一大应用场景,差不多每门语言都可以写爬虫,但是程序员们却独爱Python。之所以偏爱Python就是因为她简洁的语法,我们使用Python可以很简单的写出一个爬虫程序。本篇博客将以Python语言,用几个非常简单的例子带大家入门Python爬虫。
263 0
|
数据采集 前端开发 API
【从零开始的python生活②】力扣爬虫改进方法(1)
【从零开始的python生活②】力扣爬虫改进方法(1)
【从零开始的python生活②】力扣爬虫改进方法(1)
|
数据采集 编解码 前端开发
【从零开始的python生活②】力扣爬虫改进方法(2)
【从零开始的python生活②】力扣爬虫改进方法(2)
【从零开始的python生活②】力扣爬虫改进方法(2)
|
数据采集 Web App开发 小程序
【从零开始的python生活①】手撕爬虫扒一扒力扣的用户刷题数据(1)
【从零开始的python生活①】手撕爬虫扒一扒力扣的用户刷题数据(1)
【从零开始的python生活①】手撕爬虫扒一扒力扣的用户刷题数据(1)
|
数据采集 数据格式 Python
【从零开始的python生活①】手撕爬虫扒一扒力扣的用户刷题数据(2)
【从零开始的python生活①】手撕爬虫扒一扒力扣的用户刷题数据(2)
【从零开始的python生活①】手撕爬虫扒一扒力扣的用户刷题数据(2)
|
数据采集 JavaScript Python
Python爬虫入门教程 62-100 30岁了,想找点文献提高自己,还被反爬了,Python搞起,反爬第2篇
学术搜索 学习理论的知识少不了去检索文献,好多文献为你的实操提供了合理的支撑,我所在的大学内网默认是有知网账户的,非常NICE 今天要完成的网站是 http://ac.scmor.com/ Google学术搜索是一个文献检索服务,目前主要是提供维普资讯、万方数据等几个学术文献资源库的检索服务。
2196 0
|
数据采集 Python
python各类爬虫案例,爬到你手软!
小编整理了一些爬虫的案例,代码都整理出来了~ 先来看看有哪些项目呢: python爬虫小工具(文件下载助手) 爬虫实战(笔趣看小说下载) 爬虫实战(VIP视频下载) 爬虫实战(百度文库文章下载) 爬虫实战(《帅啊》网帅哥图片下载) 爬虫实战(构建代理IP池) 爬虫实战(《火影忍者》漫画下载)...
6210 0