Scrapy 入门:Hello Scrapy

本文详细介绍了scrapy框架在Windows、Ubuntu、Mac等不同操作系统下的自定义安装方法,包括通过pip安装和手动下载依赖包进行安装。同时提供了安装后的基本使用示例,帮助开发者快速上手。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

scrapy install

  • 官方文档方式 
    其实现在scrapy 的文档做的挺好, 安装文档在首页就有 点我点我。 
    下面说说我的另类安装方法,我说这个方法,在某些方面有优势,但不是绝对优势,利弊自己取舍。

  • Windows 自定义安装 

  1. 打开 https://pypi.python.org 。

  2. 在页面的搜索框中输入 scrapy, 开始搜索,找到最新的版本,我这个时候是https://pypi.python.org/pypi/Scrapy/1.0.3

  3. 翻页到页面的最底部,找到 Requires Distributions 部分,看看都有啥,我这里的是:Twisted(>=10.0.0),w3lib (>=1.8.0), queuelib, lxml, pyOpenSSL, cssselect (>=0.9), six (>=1.5.2), service-identity。

  4. 对于上面的依赖,依次尝试 5,6步。

  5. 在 cmd 下面执行命令 pip install xxxx, 如果提示安装成功, 跳过第6步,接着安装下一个。

  6. 去 Google 搜索 xxxx msi {version} 这里的version请填写满足依赖条件的版本号, 认准了 pypi.python.org 的域名,点进去,找到msi的下载包,下载下来进行安装。

  7. 到这里,依赖已经安装完毕,执行 pip install scrapy。如果最后提示成功,说明你的安装成功了。

Ubuntu 自定义安装 

  1. Ubuntu 安装最简单的方式当然是官方的 ppa 安装了啊。

  2. Ubuntu 通过pip 安装 最重要的是 pip 需要的各种库:

apt-get install -y python-dev gcc  libxml2-dev libxslt1-dev libffi-dev python-pip 
pip install -U pip
pip install lxml twisted cryptography
pip install scrapy

  • Mac 自定义安装

pip install scrapy

scrapy bootstrap

装好之后,当然就是 hello-scrapy 的时间了。 
使用下列命令新建一个工程:

scrapy startproject Demo

使用下列命令进入目录,然后新建一个 Spider 来工作,这里是使用的名称为 MeiSpider, 抓取 bj.meituan.com 的数据。

cd Demo
scrapy genspider MeiSpider bj.meituan.com

执行之后的目录结构如下:

.
├── Demo
│   ├── __init__.py
│   ├── items.py            # item
│   ├── pipelines.py        # pipeline
│   ├── settings.py         # project setting file
│   └── spiders
│       ├── __init__.py    
│       └── MeiSpider.py    # genspider generatored spider file
└── scrapy.cfg              # configuration file

2 directories, 10 files

查询下现在的 spiders,

$ scrapy list
MeiSpider # 刚刚新建的 MeiSpider

在项目 Demo 下面的 spiders 目录中就有了我们刚生成的 MeiSpider.py 文件,打开这个文件,看看内容:

# -*- coding: utf-8 -*-
import scrapy


class MeispiderSpider(scrapy.Spider):
   name = "MeiSpider"
   allowed_domains = ["bj.meituan.com"]
   start_urls = (
       'http://www.bj.meituan.com/',
   )

   def parse(self, response):
       pass

注意一下, 生成的代码里面的 start_urls 中的 url 有错误,我们手动改成 bj.meituan.com 。 
如果你迫不及待的想尝试下效果,可以试试这个:

scrapy crawl MeiSpider --nolog

哈哈,是不是什么结果也没有! 对啊, 因为我们还没告诉 Spider 该怎么工作。这个就是 Spider 中 parse 方法的作用了, 我们尝试把 parse 改成这样

def parse(self, response):
   return {'desc', 'hello scrapy'"url": response.url}

接着运行 scrapy crawl MeiSpider -t jsonlines --nolog -o - 是不是很有意思,出来了结果了,这样,一个简单的 Hello-Scrapy 就完成了。


转载于:https://my.oschina.net/u/590681/blog/544352

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值