博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基于Python的开源爬虫软件Scrapy快速入门
阅读量:6261 次
发布时间:2019-06-22

本文共 1757 字,大约阅读时间需要 5 分钟。

hot3.png

一、安装Scrapy

#导入GPG密钥sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 627220E7#添加软件源echo 'deb http://archive.scrapy.org/ubuntu scrapy main' | sudo tee /etc/apt/sources.list.d/scrapy.list#更新包列表并安装scrapysudo apt-get update && sudo apt-get install scrapy-0.22

二、Scrapy的组成

三、快速开始Scrapy

运行Scrapy后,只需要重写一个download就可以了。

这里是别人的一个的例子,基本结构可以参考。但我运行时,出现很多错误,缺少misc目录,而且piplines的配置没有写出来。

诸君稍候,等我试一下,全部分享给大家。

根据官方的入门例程,快速开始:

首先,根据模版创建一个工程。

scrapy startproject tutorial

里面的目录和文件看起来是这样的:

tutorial/    scrapy.cfg            # deploy configuration file    tutorial/             # project's Python module, you'll import your code from here        __init__.py        items.py          # project items file        pipelines.py      # project pipelines file        settings.py       # project settings file        spiders/          # a directory where you'll later put your spiders            __init__.py            ...

进items.py,改成这样:

import scrapyclass DmozItem(scrapy.Item):    title = scrapy.Field()    link = scrapy.Field()    desc = scrapy.Field()

再进dmoz_spider.py,改成这样:

import scrapyclass DmozSpider(scrapy.Spider):    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] + '.html'        with open(filename, 'wb') as f:            f.write(response.body)

再运行这个:

scrapy crawl dmoz

但是,出错了哇!

找了个别的例子参考了下,把里面的scrapy.Spider改为scrapy.spider.Spider,如下:

class DmozSpider(scrapy.spider.Spider):

基本上就可以Run起来了。

可能是版本修改了,把Spider这个类放到了spider命名空间下了,可是例子没有改,有点坑人咧!

完整的教程在这里:

转载于:https://my.oschina.net/u/2306127/blog/485455

你可能感兴趣的文章
《MySQL必知必会》学习笔记_1
查看>>
[Android 源码] Android源码下载
查看>>
数学图形(2.12)spherical cycloid球面外摆曲线
查看>>
Servlet小试
查看>>
读完了csapp(中文名:深入理解计算机系统)
查看>>
Autodesk 最新开发技术研讨会 -8月22日-Autodesk北京办公室
查看>>
flume监控
查看>>
深入剖析Java中的装箱和拆箱(转)
查看>>
面向对象三大特性之二--【继承】
查看>>
判断数组(array)中是否包含某个字符(contains)
查看>>
应用程序实现关闭屏幕
查看>>
责任链模式
查看>>
TCP长连接与短连接的区别
查看>>
Socket网络编程--Libev库学习(1)
查看>>
去除下载文件属性中烦人的锁定状态
查看>>
(转)Unity中protobuf的使用方法
查看>>
Apache错误日志时时查看
查看>>
SSI框架总结
查看>>
应对通过代理攻击服务器的方法
查看>>
犀利的background-clip:text,实现K歌字幕效果
查看>>