[回忆篇]Spider之Scrapy安装的方法详解

转自CSDN,5年前写的第一篇技术类的文章,当时还是个小菜鸟,一转眼5年过去了

当时从知乎摘抄的别人的励志故事,激励工作不久略失意的自己(工作缺少激情),开始利用下班时间自学android开发、iOS开发、Python开发。。。

职业方向有点迷茫,就都在学。

幸运的是,公司下班较早5点多就下班了,租住在人大附近,一下班就蹭人大的自习室学习,有时蹭女友的图书馆卡去借书看。

那段日子还是挺充实的,想想现在,基本没有自己的时间,唉。。。

因工作需要,爬取数据时的小研究,当时感觉很有成就感,不过现在早就忘的差不多了,sad...

https://blog.csdn.net/webgeek/article/details/8624908

----------------------------------------------------------------------说正事分割线------------------------------------------------------------------------------------

安装scrapy的方法详解

  scrapy在国内目前使用的人比较少,除了他比较新以外,还在于他本身还有很多弊端,比如:需要的支持包比较多,这些支持包相互之间的依赖关系,导致人们在安装他的时候各种吐血,而且吐血了还不一定又正确的结果!所以,今天趁自己需要换工作环境,记录点滴。

  本次安装使用的系统环境是windows xp。以下给出具体步骤。我想如果照做一定能够成功哦。

  1.安装python2.6.这里选择的是python2.6,为什么选择这个版本,首先,scrapy官网上明确写出:requirements:

Python 2.5, 2.6, 2.7 (3.x is not yet supported), 即目前只支持python2.5,2.6,2.7.3以上版本的python还不支持.而本人在从前使用scrapy开发的过程种发现2.5仍然又某些bug,具体的就暂时不说了。http://www.codepub.com/software/Python-12776.html 由于python官网偶尔打不开(打不开我想你懂的!),所以给了个国内的下载链接,这个链接也又可能又一天不能使用。所以需要同学们自己下了。安装python,解压后得到右边图标,双击安装,几乎不用设置就能成功,也就是说在这里如果你python环境都不会安装的话,就没必要在看后面的了,所以python的安装我真的想偷懒了。不过还是要说环境变量设置上,在我的电脑-》高级环境变量里的path种设置刚才我安装的pyton的根文件目录,这里将C:\Python26加入到环境变量:,到这里安装python结束,在cmd模式下输入执行python,产生下面的类似的画面表示python安装成功.

  2.按照python官网准备安装twisted.

    twisted的安装方法,安装twisted先需要zope.interface,PyopenSSL,这2个第三方包。而通过twisted官网上,我们可以看见下载的都是zope.interface,PyopenSSL等都是egg文件,那么在这里我们就先需要setuptools工具.

    1.在这里下载:http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11.win32-py2.6.exe 这些我给出的链接只是我当前找到的我能使用的,加入你不好使,可以尝试换一个,秉承一个原则是即是setuptools工具又是对于py2.6的。,双击这个图标执行。那么执行后在python根目录下的scripts文件夹里就会有easy_install.py等文件了,都带有easy_install字眼。easy_install工具安装完成。

    2.zope_interface的安装.通过twised的下载页面:http://twistedmatrix.com/trac/wiki/Downloads 点击进行zope.interface,进入到http://pypi.python.org/pypi/zope.interface#download , 选择符合当前环境的可供下载的egg,这里我们选择zope.interface-3.6.3-py2.6-win32.egg(md5),下载后是这样的一个文件,这时候把这个egg文件拷贝进入刚才我们说道的python根目录下的scripts目录,同easy_installs等文件一个目录位置。然后进入cmd模式,在cmd模式下进入这个script目录,执行easy_install.py  egg文件名,执行安装这个egg文件。

    这里检查zope.interface是否安装成功,,在python环境中执行import zope.interface,加入不报错误,那么说明zope.interface安装正确。

    3.同上,执行安装PyOpenSSL.在http://pypi.python.org/pypi/pyOpenSSL 这里,有这些版本的pyOpenSSL供你选择。在这里我们选择pyOpenSSL-0.12-py2.6-win32-egg(md5),下载得到的egg文件,按刚才安装zope.interface的方法,在安装pyOpenSSL,先将下载到的pyOpenSSL,拷贝到scripts文件夹中,然后进入到cmd模式下,在cmd模式中进入到对应的scripts文件夹下,执行easy_install.exe pyOpenSSL-0.12-py2.6-win-amd64.egg ,进行安装。效果图为

在执行验证是否安装成功:在python环境中,执行import OpenSSL,查看是否能正常执行在·导入。加入不报一场或错误,则表示安装正确。

    4.安装twisted.回到twisted的下载链接:http://twistedmatrix.com/trac/wiki/Downloads,因为我们这里需要的是python2.6的对应的twisted版本。这里我们选择了第二个的exe版本。下载后双击就能安装.安装过程是自动执行的。所以也就不做过多说明,又可能发生的错误是版本对应不一致,是因为你没有选择当前和你python对应的版本的twisted.到这里twisted安装完成,但是具体是否还有问题,我们不能急于的下结论,因为当前的支持包已经有4种了,分别是setuptools,zope.interface,pyOpenSSL,twisted,而在twisted中不是还有一个 PyCrypto 2.0.1 for Python 2.5 吗?我们并没有理他,我在这里因为是使用了python2.6版本,所以先暂时不理他,但是能完全不理他吗?因为我们并不确定这个包起到的作用,或者,在python.26里,或者在对应于python26版本的twisted是否存在PyCrypto 2.0.1.或者是替代他的作用的包。所以只能说暂时,到时候在实际开发过程中如果有任何问题在考虑之。

  3.按照scrapy官网,安装lxml.在scrapy 的http://doc.scrapy.org/intro/install.html#intro-install最下面的一段又关windows安装的情况。到这里点击关于lxml的选项,进入:http://users.skynet.be/sbi/libxml-python/ ,在这里我们选择了:第二项,又libxml for python2.6等关键字.安装后在python环境中执行import libxml2,如果未报错,表示正确。

  4.安装scrapy.进入scrapy 官网:http://scrapy.org/download/ 这个链接,点击Scrapy 0.12 on PyPI ,注意他后面可是有括号的,(include windows installers),表示点击这里也可以在windows下安装的。进入http://pypi.python.org/pypi/Scrapy 这个页面,点击这里关于exe的格式,进行下载。下载后直接进行双击就可以执行了。这个时候查看是否在python目录下的第三方目录中(即site-package)中是否有关于scrapy的文件夹了,然后在cmd模式中任意目录输入scrapy,这时候提示出错误,是需要把python根目录下的script目录设置到环境变量中。,然后重新打开一个cmd窗口,在任意位置执行scrapy命令,得到下列页面,表示环境配置成功.

5.关于项目,比如抓取百度搜索引擎上的列表信息吧。

  1.创建项目.

    a.在cmd窗口中,选择一个路径。在这里我选择了F:\workspace,在这里新建一个主机的项目:scrapy startproject mobile 表示创建一个项目,根目录名为mobile.,如果没有报出错信息,那么表示项目新建成功。通过文件管理,我们可以明确的看到又这样的一个文件系统已经生成,并且在对应的文件夹下又对应的文件。

  2.初步应用

    初步爬虫这里只写一个最简单的爬虫,假如你遇到棘手的问题,可以同我沟通,我会尽力而为的帮你。

    1.在spider文件夹下新建一个文件,该文件名为baidu.py,而里面的内容为:

from scrapy.spider import BaseSpider

class BaiduSpider(BaseSpider):

    name = "baidu.com"

    allowed_domains = ["baidu.com"]

    start_urls = ["http://www.baidu.com/s?wd=%CA%D6%BB%FA&inputT=2110"]


    def parse(self, response):

        filename = response.url.split("/")[-2] + '.html'

        open(filename, 'wb').write(response.body)

那么这里就会在项目根目录生成一个www.baidu.com.html文件名的html文件,在cmd模式下,进入项目根目录,即与scrapy.cfg同目录下,执行scrapy crawl baidu.com  注意这里baidu.com是对应BaiduSpider类下的name属性的值.得到最终如果所示:

  ,最终我们将在mobile根目录下发现www.baidu.com.html文件,里面会又对应的html内容.这次先这样了,改天说说linux环境下的配置。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 156,907评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,546评论 1 289
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 106,705评论 0 238
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,624评论 0 203
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 51,940评论 3 285
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,371评论 1 210
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,672评论 2 310
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,396评论 0 195
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,069评论 1 238
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,350评论 2 242
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,876评论 1 256
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,243评论 2 251
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,847评论 3 231
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,004评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,755评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,378评论 2 269
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,266评论 2 259

推荐阅读更多精彩内容