一、爬虫框架Scarpy简介
Scrapy 是一个快速的高层次的屏幕抓取和网页爬虫框架,爬取网站,从网站页面得到结构化的数据,它有着广泛的用途,从数据挖掘到监测和自动测试,Scrapy完全用Python实现,完全开源,代码托管在Github上,可运行在Linux,Windows,Mac和BSD平台上,基于Twisted的异步网络库来处理网络通讯,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。

二、Scrapy安装指南

我们的安装步骤假设你已经安装一下内容:<1>Python2.7<2>lxml<3>OpenSSL,我们使用Python的包管理工具pip或者easy_install来安装Scrapy。
pip的安装方式:

复制代码代码如下:
pip install Scrapy

easy_install的安装方式:

复制代码代码如下:
easy_install Scrapy

三、Ubuntu平台上环境配置

1、python的包管理工具
当前的包管理工具链是 easy_install/pip + distribute/setuptools
distutils : Python 自带的基本安装工具, 适用于非常简单的应用场景; 
setuptools : 针对 distutils 做了大量扩展, 尤其是加入了包依赖机制. 在部分 Python 子社区已然是事实上的标准;
distribute : 由于 setuptools 开发进度缓慢, 不支持 Python 3, 代码混乱, 一帮程序员另起炉灶, 重构代码, 增加功能, 希望能够取代 setuptools 并被接纳为官方标准库, 他们非常努力, 在很短的时间便让社区接受了 distribute;,setuptools / distribute 都只是扩展了 distutils;
easy_install : setuptools 和 distribute 自带的安装脚本, 也就是一旦 setuptools 或 distribute 安装完毕, easy_install 也便可用. 最大的特点是自动查找 Python 官方维护的包源 PyPI , 安装第三方 Python 包非常方便; 使用:
pip : pip 的目标非常明确 – 取代 easy_install. easy_install 有很多不足: 安装事务是非原子操作, 只支持 svn, 没有提供卸载命令, 安装一系列包时需要写脚本; pip 解决了以上问题, 已俨然成为新的事实标准, virtualenv 与它已经成为一对好搭档;

安装过程:
安装distribute

复制代码代码如下:
$ curl -O http://python-distribute.org/distribute_setup.py  
$ python distribute_setup.py

安装pip:

复制代码代码如下:
$ curl -O https://raw.github.com/pypa/pip/master/contrib/get-pip.py  
$ [sudo] python get-pip.py

2、Scrapy的安装
在Windows平台上,可以通过包管理工具或者手动下载各种依赖的二进制包:pywin32,Twisted,zope.interface,lxml,pyOpenSSL,在Ubuntu9.10以后的版本上,官方推荐不用使用Ubuntu提供的python-scrapy包,它们要么太老要么太慢,无法匹配最新的Scrapy,解决方案是,使用官方的Ubuntu Packages,它提供了所有的依赖库,并且对于最新的bug提供持续的更新,稳定性更高,它们持续的从Github仓库(master和stable branches)构建,Scrapy在Ubuntu9.10之后的版本上的安装方法如下:
<1>输入GPG密钥

复制代码代码如下:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 627220E7

<2>创建/etc/apt/sources.list.d/scrapy.list 文件

复制代码代码如下:
echo 'deb http://archive.scrapy.org/ubuntu scrapy main' | sudo tee /etc/apt/sources.list.d/scrapy.list

<3>更新包列表,安装scrapy版本,其中VERSION用实际的版本代替,如scrapy-0.22

复制代码代码如下:
sudo apt-get update && sudo apt-get install scrapy-VERSION

3、Scrapy依赖库的安装
ubuntu12.04下scrapy依赖库的安装
ImportError: No module named w3lib.http

复制代码代码如下:
pip install w3lib

ImportError: No module named twisted

复制代码代码如下:
pip install twisted

ImportError: No module named lxml.html

复制代码代码如下:
pip install lxml

解决:error: libxml/xmlversion.h: No such file or directory

复制代码代码如下:
apt-get install libxml2-dev libxslt-dev  
apt-get install python-lxml

解决:ImportError: No module named cssselect

复制代码代码如下:
pip install cssselect 

ImportError: No module named OpenSSL

复制代码代码如下:
pip install pyOpenSSL 

4、定制自己的爬虫开发
切换到文件目录,开启新的工程

复制代码代码如下:
scrapy startproject test

Python爬虫框架Scrapy安装使用步骤的更多相关文章

  1. Python爬虫框架--Scrapy安装以及简单实用

    scrapy框架 框架 ​ -具有很多功能且具有很强通用性的一个项目模板 环境安装: Linux: ​        pip3 install scrapy ​ ​ ​  Windows: ​     ...

  2. python爬虫框架—Scrapy安装及创建项目

    linux版本安装 pip3 install scrapy 安装完成 windows版本安装 pip install wheel 下载twisted,网址:http://www.lfd.uci.edu ...

  3. Linux 安装python爬虫框架 scrapy

    Linux 安装python爬虫框架 scrapy http://scrapy.org/ Scrapy是python最好用的一个爬虫框架.要求: python2.7.x. 1. Ubuntu14.04 ...

  4. 教你分分钟学会用python爬虫框架Scrapy爬取心目中的女神

    本博文将带领你从入门到精通爬虫框架Scrapy,最终具备爬取任何网页的数据的能力.本文以校花网为例进行爬取,校花网:http://www.xiaohuar.com/,让你体验爬取校花的成就感. Scr ...

  5. 【转载】教你分分钟学会用python爬虫框架Scrapy爬取心目中的女神

    原文:教你分分钟学会用python爬虫框架Scrapy爬取心目中的女神 本博文将带领你从入门到精通爬虫框架Scrapy,最终具备爬取任何网页的数据的能力.本文以校花网为例进行爬取,校花网:http:/ ...

  6. Python爬虫框架Scrapy实例(三)数据存储到MongoDB

    Python爬虫框架Scrapy实例(三)数据存储到MongoDB任务目标:爬取豆瓣电影top250,将数据存储到MongoDB中. items.py文件复制代码# -*- coding: utf-8 ...

  7. 《Python3网络爬虫开发实战》PDF+源代码+《精通Python爬虫框架Scrapy》中英文PDF源代码

    下载:https://pan.baidu.com/s/1oejHek3Vmu0ZYvp4w9ZLsw <Python 3网络爬虫开发实战>中文PDF+源代码 下载:https://pan. ...

  8. Python爬虫框架Scrapy教程(1)—入门

    最近实验室的项目中有一个需求是这样的,需要爬取若干个(数目不小)网站发布的文章元数据(标题.时间.正文等).问题是这些网站都很老旧和小众,当然也不可能遵守 Microdata 这类标准.这时候所有网页 ...

  9. 《精通Python爬虫框架Scrapy》学习资料

    <精通Python爬虫框架Scrapy>学习资料 百度网盘:https://pan.baidu.com/s/1ACOYulLLpp9J7Q7src2rVA

随机推荐

  1. 2017 ZSTU寒假排位赛 #1

    题目链接:https://vjudge.net/contest/147102#overview. A题:给出一堆的点,要找出两条垂直的直线,一条与x轴呈45度.-->使得所有的点到任意一条直线的 ...

  2. linux服务器性能状态查看

    vmstat结果内容的解释 Vmstat procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu---- ...

  3. 用phpstudy搭建dedecms网站验证码出不来解决方案

    验证码图片不显示,这应该是很多站长朋友们最长遇到的一个问题,本地测试明明好好的,为什么传上空间或者服务器上验证码就无法显示了呢,春哥分析这可能是由于没有加载gd库扩展所引起的,那么怎么解决呢?由于引起 ...

  4. IE7&IE8不支持rgba的方法

    使用滤镜功能 filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#BF000000,endColorstr=#BF0000 ...

  5. CSS代码格式化工具

    CSS代码格式化工具 http://tool.lanrentuku.com/cssformat/ 可实现CSS代码格式化和CSS在线压缩 请将CSS代码复制到下面表单中:    

  6. zf-安徽桐城关于(资源中心-数据录入)上传文件后没有进行处理Excel文件的原因

    上传的文件 是会自动复制到另外一个路径的 如果没有进行处理 那么表示那个路径并没有那个文件 这样就会卡死 导致之后的文件都不会进行处理(后台有个变量是从数据库里获得文件路径的),所以需要去数据库 执行 ...

  7. GB2312转unicode程序(转)

     GB2312转unicode程序   #ifndef UNICODE_H #define UNICODE_H #include <string.h> #ifdef __DEFLINUX_ ...

  8. void (*isr_handle_array[50])(void);求解这个申明怎么理解 啊??

    这是函数指针数组.一层一层向里面剥就好啦. 是一个指向 返回值为void 参数也是void的指针数组.先看里面[50]知道是个数组,再向外看是一个函数指针,合起来就是函数指针数组.我写个源码,你就明白 ...

  9. inotify-java linux系统监听文件发生变化,实时通知java程序

    1 Overview     最近公司的一个任务需要实时监控文件系统中某个文件的内容变化.由于程序本身由Java编写,因此使用了inotify- java(http://code.google.com ...

  10. Ubuntu 14.04 使用MyEclipse 10.7 闪退解决

    http://www.linuxidc.com/Linux/2014-05/101750.htm