今天和你们一块儿用Python写一个入门爬虫,做为基础课程的最后一讲。也但愿给那些学习Python好久却没有思路,不知道如何实现一个爬虫的同窗带带节奏,本节课会经过最简单的方式,实现抓取远程网页,而且获取全部图片地址的程序。php
若是一直看我文章的朋友可能会知道,我在第一讲中立下了一个新年flag。html
可是要本身打脸了,因为公司技术升级,开发语言从php升级为java。因此接下来的一段时间内没有办法保证Python实战和高级的课程日更。公司定的目标是3个月实现一个不大不小的java项目,须要把以前的php代码用java重写,并考虑后期的微服务,大数据等问题,因此接下来个人学习精力会迁移到java上,并保证java课程日更。 学习路线初步定为:java基础,servlet,ssm框架使用,spring源码学习,以及平常踩的一些坑,目的是能快速达到项目开发要求。java
固然Python的学习不会扔掉,更新频率改成每周更新一次高级或者实战课程,但愿对你们有帮助,对本身有提升。正则表达式
废话就说这么多,看一下Python如何实现爬虫程序?spring
学完这次课程,你们会对如何实现爬虫有本身的实现思路,针对不一样的站,经过不一样的方法完成资料的获取,重点是分析和思路。数据库
5-10分钟代码学习,思路理解因人而异。cookie
再重复一下,本节课的重点是思路,代码量不多,只是一个基本的流程。看一下如何实现:网络
输出结果:session
这就是咱们想要的,所有的图片地址。多线程
咱们能够把结果存到文件或者数据库里,在其余场景使用。
分析一下:这个简易的爬虫是否是很简单?并无咱们想象中那么复杂,实际上有用的代码只有5-7行。其余再复杂的爬虫也是在这个基础上作的完善。首先咱们分析了网页代码,知道了咱们须要匹配的HTML代码为 https://到.png的内容。经过网络模块,获取网页内容,经过正则模块匹配出全部图片,最后循环处理,保存也好入库也好,总之拿到了全部图片路径怎么玩均可以。
若是互联网上全部的资源都这样就行了,下面介绍个人两个实战项目思路,这两种状况你们都会碰到:
对于须要先登陆再抓取的网站,第一步先模拟登陆,保存cookie。随后的全部请求带上cookie就能够登陆状态访问了,若是不太明白的同窗能够看一下cookie和session的区别和联系。
还有一种特别多的状况是,登录时须要验证码怎么办?思路是先获取到登陆页面的html。匹配出验证码的图片地址,经过程序识别或者打码平台来识别图片,而后带上验证码登陆,保存cookie。因为图片验证码的网站很是容易被刷,因此如今的滑动二维码才会愈来愈多。
资源较少还好说,若是须要抓取的内容过多,简易你们学习一下多线程,了解了相关思路能够学习一下爬虫的相关框架。
爬虫这个词很是形象,像一只虫子同样,爬来爬去,能够把某个网站看作是一张网,爬虫进入首页后,经过各级菜单(超连接)跳转至二级菜单,三级菜单等,依次找到最后一页的内容,一般一个网站的目录深度不会太多,基本都是3-5层,即首页-分类列表-详细信息。
经过本次的课程,你能写一个本身的爬虫吗?若是有任何疑问欢迎评论或者私信,我会第一时间回复。