在逛网站的时候,总有一些图片让我们感到心旷神怡。这时候一个个下载的话,右手容易酸,也比较费右键……
所以,在这里教你一个偷懒的方法,只需要十几行 Python 代码,就能快速爬取大量的妹子图啦~!
先来展示一下,这是最终成果,只需要几秒钟,妹纸图就都能下载到本地了😳
考虑到这可能是你写的第一个爬虫,我们来分解一下实现步骤:
Step 1:模拟浏览器请求
在你打开一个网页的时候,你的电脑就向服务器发起了一个 Request 请求,就像是寄了一封信,服务器为了回应你,给你返回一个 Response 请求,就像是回给你一封信。
那么,为了用程序模拟人类的浏览器向服务器发起请求,就要用程序发起 Request。这一步我们使用一个很好用的库,叫做 Requests,其中有一些具体的使用规则,我们只要在写代码的时候遵循这些规则就可以了。
Step 2:解析网页
BeautifulSoup 是一个用来解析网页的库,什么是解析网页呢,这个过程可以理解成是做汤。
我们要爬取的网页,就像是需要处理的汤料,也就是那根胡萝卜;
而 lxml 是一种解析网页的方法,相当于是一种食谱,还有其他4种不太常用的食谱,包括上面列举的 html.parser 等等;
Soup 是解析好的网页,相当于是用汤料和食谱做好的汤。
Step 3:获取想要的信息
解析后的网页会有一大堆内容,我们只需要妹纸图片,其他的都不要。所以需要从中筛选出来,并下载。
这部分涉及到一些 Python 基础知识,在这里简单讲解一下:
▋什么是 Print ?
▋什么是 for 循环 ?
▋什么是字符串切片 ?
name[-10:]就代表着从倒数第10个字符开始,一直数到最后。
在这里也就是对应着:me is Mike
代码及说明
学习了上面的基础知识之后,我们就能读懂这十几行代码代表着什么了。快来试试爬取妹子图吧😍
获取 User-Agent 的方法是:Chrome 浏览器中点击右键-检查-Network(再刷新一次网页)-在 Name 栏任选一个文件点进去-Requests Headers 里面就能看到你的 User-Agent了。
乔布斯曾经在《遗失的访谈》中说:
所有人都应该学习编程,学习编程教你如何思考,就像学习法律一样。学法律的人未必都成为律师,但法律教你一种思考方式。
有些人以为学编程是一件枯燥、漫长、无趣的事情,而我们希望用这个小项目告诉你,学习编程也可以是生动、有趣、容易上手的事情。
以上内容均节选/改编自网易云课堂的课程——Python实战:四周学会爬虫系统
加入课程后,可以看到完整四周课程,获赠零基础预习教程魔力手册,并得到班级老师的辅导与答疑。
欢迎加入预备班 QQ 群和大家讨论 Python 课程问题,参加每周的老学员分享,QQ 群号是:454652648,加群回复:实战计划
网友评论