zoukankan      html  css  js  c++  java
  • 创建第一个Scrapy项目

    d:
    进入D盘

    scrapy startproject tutorial
    建立一个新的Scrapy项目

    工程的目录结构:


    tutorial/
    scrapy.cfg # 部署配置文件

    tutorial/ # 项目的Python模块,您将从这里导入代码
    __init__.py

    items.py # 项目项目定义文件

    middlewares.py # 项目中间件文件

    pipelines.py # 项目管道文件

    settings.py # 项目设置文件

    spiders/ # 一个目录,你以后会把你的爬虫放进去
    __init__.py

    新建quotes_spider.py:

    import scrapy


    class QuotesSpider(scrapy.Spider):
    # QuotesSpider类继承scrapy.Spider类
    name = "quotes"
    # 标识蜘蛛。它在项目中必须是唯一的,也就是说,不能为不同的蜘蛛设置相同的名称

    def start_requests(self):
    # 必须返回Spider将开始抓取的请求的迭代(您可以返回请求列表或编写生成器函数)
    # 后续请求将从这些初始请求中连续生成
    urls = [
    'http://quotes.toscrape.com/page/1/',
    'http://quotes.toscrape.com/page/2/',
    ]
    for url in urls:
    yield scrapy.Request(url=url, callback=self.parse)

    def parse(self, response):
    # 将被调用来处理为每个请求下载的响应的方法。
    # 响应参数是TextResponse保存页面内容的一个实例,并有更多有用的方法来处理它
    # 该parse()方法通常解析响应,将提取的数据提取为字符串,并查找新的URL并Request根据它们创建新的请求
    page = response.url.split("/")[-2]
    filename = 'quotes-%s.html' % page
    with open(filename, 'wb') as f:
    f.write(response.body)
    self.log('Saved file %s' % filename)

    scrapy crawl quotes
    运行爬虫

    已经创建了两个新文件:quotes-1.html和quotes-2.html,以及各个URL的内容,正如我们的parse方法所指示的那样

  • 相关阅读:
    /bin/bash^M: bad interpreter: No such file or dire
    ****LINUX命令(含GIT命令)个人总结
    创建和编辑 crontab 文件
    Linux下用于查看系统当前登录用户信息的4种方法
    linux下cat命令详解
    crontab 指定执行用户
    crontab定时运行git命令 更新代码库
    ubuntu添加环境变量【原创】
    ubuntu下设置环境变量的三种方法【转】
    笔记三、apache搭建gitweb【转】
  • 原文地址:https://www.cnblogs.com/yjlch1016/p/9261158.html
Copyright © 2011-2022 走看看