zoukankan      html  css  js  c++  java
  • 爬虫入门【10】Pyspider框架简介及安装说明

    Pyspider是python中的一个很流行的爬虫框架系统,它具有的特点如下:
    1、可以在Python环境下写脚本
    2、具有WebUI,脚本编辑器,并且有项目管理和任务监视器以及结果查看。
    3、支持多种数据库
    4、支持定义任务优先级,自动重试链接。。。
    5、分布式架构
    等等优点。

    pyspider的设计基础是:以python脚本驱动的抓取环模型爬虫。

    教程: http://docs.pyspider.org/en/latest/tutorial/
    文档: http://docs.pyspider.org/
    发布版本: https://github.com/binux/pyspider/releases

    入门范例

    from pyspider.libs.base_handler import *
    
    
    class Handler(BaseHandler):
        crawl_config = {
        }
    
        @every(minutes=24 * 60)
        def on_start(self):
            self.crawl('http://scrapy.org/', callback=self.index_page)
    
        @config(age=10 * 24 * 60 * 60)
        def index_page(self, response):
            for each in response.doc('a[href^="http"]').items():
                self.crawl(each.attr.href, callback=self.detail_page)
    
        def detail_page(self, response):
            return {
                "url": response.url,
                "title": response.doc('title').text(),
            }
    

    【插入图片,Pyspider界面】

    代码简单介绍

    def on_start(self):
    这是脚本的入口节点,当我们点击run的时候,程序会自动调用这个函数。

    self.crawl(url, callback=self.index_page):
    这时最重要的API,将会添加新任务,大部分选项使用crawl的参数来指定。

    def index_page(self, response):
    这个方法得到一个response对象,然后通过PyQuery的doc命令来解析。

    def detail_page(self, response):
    返回一个dict对象作为结果。这个结果可以保存到数据库中。

    我们还可以在脚本中自定义函数或者对象。

    【插入图片,运行界面】

    安装

    推荐使用Pycharm,在Project Interpreter里面添加pyspider,目前最新的版本是0.3.9.
    或者使用pip命令安装。

    今天来不及把整个项目内容讲完了,明天继续。

  • 相关阅读:
    Neo4j-3.0.3 (Debian 8)
    python学习之argparse模块
    变异系数
    孪生素数
    统计学中的自由度
    兰伯特余弦定理(Lambert)
    椒盐噪声
    沥青路面磨损后泛白的原因
    朗伯体
    绕坐标轴旋转的矩阵
  • 原文地址:https://www.cnblogs.com/xingzhui/p/8025148.html
Copyright © 2011-2022 走看看