写在前面
爬虫!爬虫就像是一只聪明的小蜘蛛,可以在互联网上自由爬行,抓取我们想要的数据。但是如何写一个自己的爬虫呢?这个问题应该是很多初学者的困惑,市面上很多书籍写的比较深入不适合初学者理解。今天我们会以最简单的方式来说明如何从零开始写一个爬虫。
你需要具备的知识
-
可以写简单的 python 代码;
-
知道依赖包的运用;
-
了解基础的html;
环境依赖
python 3.8+
我们的爬虫要做什么?
这里有一个简单的网页 https://quotes.toscrape.com/ ,网页中是一个名人名言列表,如下图所示。我们将使用纯python编写一个简单的爬虫,爬取其中的名人名言并打印出来。

编写爬虫
这一步我们需要查看网页的源代码然后根据html编写相应的解析代码。
-
查看网页源码
在网页的空白位置点击鼠标右键,弹出以下菜单。

选择‘查看页面源代码’,进入源代码页面,如下图。找到31、32行就是我们想要抓取的内容。

2. 编写爬虫代码
根据源代码编写对应的的解析函数,创建爬虫文件。
文件名称:client.py代码如下:
#!/usr/bin/env python # -*- encoding: utf-8 -*- """ @File : client.py @License : (C)Copyright 2020-2021 ------------------------------------- @Modify Time: 2023/10/9 17:24 @Author : @Version : 1.0 @Description: """ import urllib.request import re def get_quotes(url): # 发送HTTP请求获取页面内容 response = urllib.request.urlopen(url) html_content = response.read().decode('utf-8') # 使用正则表达式提取名言信息 pattern = r'<span class="text" itemprop="text">(.*?)</span>.*?<small class="author" itemprop="author">(.*?)</small>' matches = re.findall(pattern, html_content, re.DOTALL) # 打印名言信息 for match in matches: quote = match[0] author = match[1] print(f'名言: {quote}\n作者: {author}\n') url = 'https://quotes.toscrape.com/' get_quotes(url)
代码解读:
这段代码使用urllib.request.urlopen()函数发送HTTP请求并获取页面内容。然后,使用正则表达式从页面中提取名言的内容和作者。最后,调用get_quotes()函数打印名人名言信息。
验证爬虫代码
运行以上代码,控制台就会打印网站中的的名人名言,如下图所示。

以上就是“python如何从零写一个爬虫”的全部内容,希望对你有所帮助。
关于Python技术储备
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、Python必备开发工具

三、Python视频合集
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、Python练习题
检查学习结果。

六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

最后祝大家天天进步!!
上面这份完整版的Python全套学习资料已经上传至CSDN官方,朋友如果需要可以直接微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。

本文以简单方式介绍如何从零开始用Python写爬虫。首先说明所需知识和环境依赖,接着明确爬虫要爬取网页中的名人名言。然后阐述编写步骤,包括查看网页源码、编写解析代码,最后验证代码。此外,还分享了Python学习资料。

8万+

被折叠的 条评论
为什么被折叠?



