文档章节

scrapy-安装和初步使用

深蓝苹果
 深蓝苹果
发布于 2014/06/25 11:06
字数 403
阅读 235
收藏 1

基于ubuntu的安装


1.相关支撑包

apt-get install build-essential;

apt-get install python-dev;

apt-get install libxml2-dev;

apt-get install libxslt1-dev;

apt-get install python-setuptools;


2.安装scrapy

easy_install Scrapy;


3.测试安装效果

scrapy shell http://ziki.cn


4.创建工程

scrapy startproject tutorial


5.个性化

* 定义要抓取的字段

在 tutorial/tutorial/items.py 已有的类中加入代码:

title = Field()

link = Field()

    desc = Field()

* 要建立一个Spider,你必须为scrapy.spider.BaseSpider创建一个子类,并确定三个主要的、强制的属性:

    name:爬虫的识别名,它必须是唯一的,在不同的爬虫中你必须定义不同的名字.

    start_urls:爬虫开始爬的一个URL列表。爬虫从这里开始抓取数据,所以,第一次下载的数据将会从这些URLS开始。其他子URL将会从这些起始URL中继承性生成。

    parse():爬虫的方法,调用时候传入从每一个URL传回的Response对象作为参数,response将会是parse方法的唯一的一个参数,

    

    这个方法负责解析返回的数据、匹配抓取的数据(解析为item)并跟踪更多的URL。

    在 tutorial/tutorial/spiders/ 下新增文件 domz_spider.py (文件名基本任意)


        from scrapy.spider import BaseSpider

        class DmozSpider(BaseSpider):

            name = "dmoz"

            allowed_domains = ["dmoz.org"]

            start_urls = [

                "http://www.dmoz.org/Computers/Programming/Languages/Python/Books/",

                "http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/"

            ]

            def parse(self, response):

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

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


6.执行工程

在 tutorial/ 下执行 scrapy crawl dmoz                

                

FQA:

Q:运行工程时,提示找不到 service_identity 模块

A:执行easy_install service_identity



参考:

1.安装 http://blog.ziki.cn/1190.html

2.运行 http://www.cnblogs.com/txw1958/archive/2012/07/16/scrapy-tutorial.html


© 著作权归作者所有

共有 人打赏支持
深蓝苹果
粉丝 33
博文 92
码字总数 31944
作品 0
深圳
程序员
私信 提问
win7 下安装scrapy遇的坑

一. 安装 由于scrapy进行网络抓取的便捷与强大功能,准备在win7下安装该框架,但遇到很多麻烦。 解决方法: 二. 使用 在初步使用scrapy框架时,也出现一些问题:scrapy startproject tutoria...

fight123
2016/11/12
16
0
python scrapy OpenSSL安装不成功

我是python新手,想尝试做爬虫,初步学习后准备安装scrapy。机器是64位,系统为win7,python是python-2.7.9.amd64.msi。scrapy装的是Scrapy-0.24.5.tar.gz 按照教程需要安装依赖包。其他都安...

fengzihh
2015/04/18
8.9K
5
小猪的Python学习之旅 —— 4.Scrapy爬虫框架初体验

引言: 经过前面两节的学习,我们学会了使用urllib去模拟请求,使用 Beautiful Soup和正则表达式来处理网页以获取我们需要的数据。 对于经常重复用到的代码,我们都会单独抽取成自己的模块,...

coder_pig
07/04
0
0
Scrapy入门教程

在这篇入门教程中,我们假定你已经安装了Scrapy。如果你还没有安装,那么请参考安装指南。 我们将使用开放目录项目(dmoz)作为抓取的例子。 这篇入门教程将引导你完成如下任务: 创建一个新的...

涩女郎
2016/08/27
23
0
7个Python爬虫实战项目教程

有很多小伙伴在开始学习Python的时候,都特别期待能用Python写一个爬虫脚本,实验楼上有不少python爬虫的课程,这里总结几个实战项目,如果你想学习Python爬虫的话,可以挑选感兴趣的学习哦;...

实验楼
2017/12/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Vue- 对象语法 v-bind:class与对象语法的使用

我们可以传给 v-bind:class 一个对象,以动态地切换 class 。 <div v-bind:class="{ active: isActive }"></div>//对象语法也就是在v-bind:class绑定一个对象的时候,里面的值将影响最终取值...

文文1
27分钟前
1
0
epoll中使用

1、一个线程epoll_wait时,另一个线程调用epoll_ctl是安全的。 2、使用edge触发,在socket有数据到来后,不收取数据,再次调用epoll_ctl将socket加入,仍会触发下一次动作。 asio用该方法来发...

gelare
55分钟前
1
0
PHP规范PSR2

PSR标准 - PSR-2 为了尽可能的提升阅读其他人代码时的效率,下面例举了一系列的通用规则,特别是有关于PHP代码风格的。 各个成员项目间的共性组成了这组代码规范。当开发者们在多个项目中合作...

geek土拨鼠
今天
5
0
【极简】如何在服务器上安装SSL证书?

本文适合任何人了解,图形化操作。下面以腾讯云为例,并且服务器(linux)也安装了宝塔面板。 1.登陆腾讯云账号进入控制台,找到SSL的产品 2.按要求申请并填写表单,记住私钥密码 3.提交后,待...

皇冠小丑
今天
1
0
深入理解编译器

深入理解编译器 原文出处 欢迎向Rust中文社区投稿,投稿地址,好文将在以下地方直接展示 1 Rust中文社区首页 2 Rust中文社区Rust文章栏目 3 知乎专栏Rust语言 编程语言是如何工作的 从内部理解...

krircc
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部