Python爬虫框架Scrapy安装使用步骤

 更新时间:2014年04月01日 14:49:28   作者:  
这篇文章主要介绍了Python爬虫框架Scrapy的安装和使用步骤,重点在解决依赖问题上,需要的朋友可以参考下

一、爬虫框架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中的可变变量与不可变变量的使用

    Python中的可变变量与不可变变量的使用

    本文主要介绍了Python中的可变变量与不可变变量的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-03-03
  • python的ping网络状态监测的实现(含多IP)

    python的ping网络状态监测的实现(含多IP)

    本文主要介绍了python的ping网络状态监测的实现(含多IP),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • python中把元组转换为namedtuple方法

    python中把元组转换为namedtuple方法

    在本篇文章里小编给大家整理的是一篇关于python中把元组转换为namedtuple方法,有兴趣的朋友们可以参考下。
    2020-12-12
  • Python3.10.4激活venv环境失败解决方法

    Python3.10.4激活venv环境失败解决方法

    这篇文章主要介绍了Python3.10.4激活venv环境失败解决方法的相关资料,需要的朋友可以参考下
    2023-01-01
  • python实现猜拳游戏项目

    python实现猜拳游戏项目

    这篇文章主要为大家详细介绍了python实现猜拳游戏项目,以excel形式保存信息,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • Python中的list与tuple集合区别解析

    Python中的list与tuple集合区别解析

    这篇文章主要介绍了Python中的list与tuple集合区别解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • 浅谈Python中的数据类型

    浅谈Python中的数据类型

    Python很重要的的那几个数据类型:字符串,列表,字典,元组,经常有网友问他们之间重要的区别的是什么?能否举几个例子来说明下!下嘛我们就来探讨下。
    2015-05-05
  • Python中的joblib模块详解

    Python中的joblib模块详解

    这篇文章主要介绍了Python中的joblib模块详解,用已知的数据集经过反复调优后,训练出一个较为精准的模型,想要用来对格式相同的新数据进行预测或分类,常见的做法是将其训练好模型封装成一个模型文件,直接调用此模型文件用于后续的训练,需要的朋友可以参考下
    2023-08-08
  • Python实现多线程爬表情包详解

    Python实现多线程爬表情包详解

    这篇文章主要介绍了Python多线程爬表情包,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-11-11
  • 3段Python图像处理的实用代码的分享

    3段Python图像处理的实用代码的分享

    这篇文章主要介绍了3段Python图像处理的实用代码的分享,计算机视觉方向的Python实用代码,用到多种库具有一定的参考价值,需要的小伙伴可以参考一下
    2022-06-06

最新评论