Metadata-Version: 1.1
Name: pyspider
Version: 0.3.5
Summary: A Powerful Spider System in Python
Home-page: https://github.com/binux/pyspider
Author: Roy Binux
Author-email: roy@binux.me
License: Apache License, Version 2.0
Description: pyspider [![Build Status]][Travis CI] [![Coverage Status]][Coverage] [![Try]][Demo]
        ========
        
        A Powerful Spider(Web Crawler) System in Python. **[TRY IT NOW!][Demo]**
        
        - Write script in Python
        - Powerful WebUI with script editor, task monitor, project manager and result viewer
        - [MySQL](https://www.mysql.com/), [MongoDB](https://www.mongodb.org/), [Redis](http://redis.io/), [SQLite](https://www.sqlite.org/), [PostgreSQL](http://www.postgresql.org/) with [SQLAlchemy](http://www.sqlalchemy.org/) as database backend
        - [RabbitMQ](http://www.rabbitmq.com/), [Beanstalk](http://kr.github.com/beanstalkd/), [Redis](http://redis.io/) and [Kombu](http://kombu.readthedocs.org/) as message queue
        - Task priority, retry, periodical, recrawl by age, etc...
        - Distributed architecture, Crawl Javascript pages, Python 2&3, etc...
        
        Documentation: [http://docs.pyspider.org/](http://docs.pyspider.org/)  
        Tutorial: [http://docs.pyspider.org/en/latest/tutorial/](http://docs.pyspider.org/en/latest/tutorial/)
        
        Sample Code 
        -----------
        
        ```python
        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(),
                }
        ```
        
        [![Demo][Demo Img]][Demo]
        
        
        Installation
        ------------
        
        * `pip install pyspider`
        * run command `pyspider`, visit [http://localhost:5000/](http://localhost:5000/)
        
        Quickstart: [http://docs.pyspider.org/en/latest/Quickstart/](http://docs.pyspider.org/en/latest/Quickstart/)
        
        Contribute
        ----------
        
        * Use It
        * Open [Issue], send PR
        * [User Group]
        
        
        TODO
        ----
        
        ### v0.4.0
        
        - [x] local mode, load script from file.
        - [x] works as a framework (all components running in one process, no threads)
        - [ ] redis
        - [x] shell mode like `scrapy shell` 
        - [ ] a visual scraping interface like [portia](https://github.com/scrapinghub/portia)
        
        
        ### more
        
        - [ ] edit script with vim via [WebDAV](http://en.wikipedia.org/wiki/WebDAV)
        - [ ] in-browser debugger like [Werkzeug](http://werkzeug.pocoo.org/)
        
        
        License
        -------
        Licensed under the Apache License, Version 2.0
        
        
        [Build Status]:         https://img.shields.io/travis/binux/pyspider/master.svg?style=flat
        [Travis CI]:            https://travis-ci.org/binux/pyspider
        [Coverage Status]:      https://img.shields.io/coveralls/binux/pyspider.svg?branch=master&style=flat
        [Coverage]:             https://coveralls.io/r/binux/pyspider
        [Try]:                  https://img.shields.io/badge/try-pyspider-blue.svg?style=flat
        [Demo]:                 http://demo.pyspider.org/
        [Demo Img]:             https://github.com/binux/pyspider/blob/master/docs/imgs/demo.png
        [Issue]:                https://github.com/binux/pyspider/issues
        [User Group]:           https://groups.google.com/group/pyspider-users
        
Keywords: scrapy crawler spider webui
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Environment :: Web Environment
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Classifier: Topic :: Software Development :: Libraries :: Python Modules
