python 写csv scrapy_scrapy框架学习(一)

这两天学习了scrapy框架,也是很头疼呀,一路都不是很顺利,爬取豆瓣时,还被封了IP,不过终于能够熟悉这个框架了。先一步步介绍吧。

第一,安装scrapy库,说实话,一开始我就直接pip install scrapy,但是一直报错,只能默默地找资料,按步骤慢慢来。先进下面这个网址,找到Twisted、pywin32、zope.interface、pyopenSSL。

https://pypi.org/​pypi.org

找到这四个包下载到本地,同时要注意下载想要的版本,看下图,我们注意一下第四个包,它下载后的格式本应该和上面三个一样,以whl结尾,但是我们在这里将扩展名改为zip,并解压,会出现两个文件夹,我们将OpenSSL这个文件夹放在python的工具包中,然后便可以在cmd进行pip install scrapy。因为我之前已经有lxml这个包,不需要再下载,大家可以pip install lxml,然后安装scrapy。

v2-9d76a165d72d5f7a6b70fba06b01df7b_b.jpg

安装好文件后,我们便可以开始进行相应的操作。首先介绍几个命令,是在cmd执行的,我们打开cmd,找到我们想要的建立项目的目录,但我们有简便方法,按住shift不放,点击我们想要开始建project的文件夹,右键,我们会看到前几行有一个在此处打开命令窗口,很方便,不用在cmd里cd。

v2-57defa16e190f721366a8785f6ce7da7_b.jpg

注意一下,这里的最后一步的网址填写,我们可以将引号省去,也不需要写得很详细,因为后期可以在文件中改动,这里只是一个框架。

这样,我们的爬取框架就建好了,我们看一下pycharm里面的project,除了main.py和cnki.csv文件是后添加的以为,其他都是刚刚在上述操作中生成的。

v2-08e1eabadbf020cd369eda66a6b7b380_b.jpg

在这里,我们先不用着急开始做什么,因为看到这么多文件,可能会有些慌张,不知道从哪里开始下手。

v2-d0439f0bd62c4b1260583e661fa80ef4_b.jpg

这张图是scrapy官网上的一张流程图,根据相关的资料学习,我自己做了一些分析和理解。首先是Spiders将requests通过Scrapy Engine交给Scheduler(调度器),然后Scheduler通过Scrapy Engine将requests传给Downloader(下载器),Downloader(下载器)便从internet上下载相应的请求,之后将internet的Response通过Scrapy Engine又传回Spider,经过Spider的清洗,将Item通过Scrapy Engine传到Item做相关提取工作,最后将Item经过Pipeline进行储存,然后再进行不断的循环。

举个例子来说吧,我们现在想要爬取知网的信息,首先,我们在搜文章时,发现一个页面有很多篇文章,见下图,我们的需求是要将找到相应的网址,以及每一篇文章的标题、关键词和链接爬取下来,那我们首先将Spider里面的网址放入调度器,然后调度器给Downloader,从网页上下载相关信息放入response,传给到Spider中,我们再用xpath提取respones里面的Item,再将item经过pipeline可以做一些储存之类的,这是我的理解,可能也有错。

v2-2a3410b0e80eb6d91b1d7c5855a68810_b.jpg

理论部分暂时先这样,之后再补充更进一步的知识。之前也分享了其他简单爬虫。

小菇凉:python爬取京东评论​zhuanlan.zhihu.com
小菇凉:三行代码爬取网页table​zhuanlan.zhihu.com
v2-adf3e1c349c5911e6693418f950a3c5a_ipico.jpg
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值