发出前两篇Python实战的文章之后,有同学和我反映:你的想法很牛逼,可是我就是看不懂你写的是什么,我Python不熟悉,看起来有点吃力。我细细一琢磨,这点是个问题。对于熟悉Python的同学,能够看懂我思路,但是对于那些没有Python基础,或者对Python不熟悉的同学,这样直接扔过来,可能会让他们失望而归。所以,这回我弄了一期手把手的实战教程,同时,在文章中遇到的知识点,还会有提供链接。完全对新手有好。
在前两篇Python实战「用代码来访问1024网站」和「用Scrapy编写“1024网站种子吞噬爬虫”」收到了大家的一致好评,可能文章写得比较匆忙,有些术语可能对于Python的初级玩家不是很好理解。所以,我特别准备了一下,用超级详细的解说,细化到每一步,提供查询链接等方法,为Python初级玩家,Python小白和对Scrapy框架不熟悉的同学,的制作了这篇手把手Python实战教程:用Scrapy爬取下载达盖尔社区的资源。
好了,废话不多说,学习代码就是要学以致用的。不能写了一遍代码就让代码吃灰。下面就跟我一起来搞吧。
小草网站是个好网站,我们这次实战的结果,是要把“达盖尔旗帜”里面的帖子爬取下来,将帖子的图片保存到本地,同时将帖子的一些相关信息,写入到本地的MongoDB中。这么乍一听,感觉我们做的事情好像挺多的,别慌,我带你慢慢的一步一步来搞起,问题不是很大。
手把手 Step By Stefp
Scrapy可以通过pip来安装:
$ pip install scrapy
接下来,我们去事先建好的工程目录里面,创建Scrapy的项目。这里,我们先看一下Scrapy的命令行怎么用,输入$ scray -help
出来
看到,创建scrapy的工程的命令是$ scrapy startproject <name>
创建完的结果如下:
OK,这个时候,我们的目录内容变成了如下结构:
下一步就是创建我们的爬虫,还是依靠Scrapy本身自带的命令来创建。输入Scrapy自带四种爬虫模板:basic,crawl,csvfeed和xmlfeed四种。我们这里选择basic。
$ scrapy genspider --template=basic superspider bc.ghuws.men
创建成功,会出现以下提示:
这时候我们的工程目录就变成了这个样子:
看到我们的工程里面多了一个spiders文件夹,里面有一个superspider.py
文件,这个就是我们这次程序的主角。我们来看,这个可爱的小虫子刚生下来是长这个样子的: