文档章节

pyspider爬虫学习-文档翻译-index.md

sijinge
 sijinge
发布于 2017/09/04 20:55
字数 601
阅读 64
收藏 1
点赞 0
评论 0
pyspider [![Build Status][Build Status]][Travis CI] [![Coverage Status][Coverage Status]][Coverage] [![Try][Try]][Demo]
========
一个基于Python的强大蜘蛛(网络爬虫)系统
A Powerful Spider(Web Crawler) System in Python. **[TRY IT NOW!][Demo]**

- Write script in Python #Python 编写脚本
- Powerful WebUI with script editor, task monitor, project manager and result viewer # 强大的WebUI实现脚本编写,任务监控,项目管理,结果展示
- [MySQL](https://www.mysql.com/), [MongoDB](https://www.mongodb.org/), [Redis](http://redis.io/), [SQLite](https://www.sqlite.org/), [Elasticsearch](https://www.elastic.co/products/elasticsearch); [PostgreSQL](http://www.postgresql.org/) with [SQLAlchemy](http://www.sqlalchemy.org/) as database backend #支持mysql,mongodb,Redis,SQLite,Elasticsearch,PostgreSQL,SQLAlchemy等多种数据库
- [RabbitMQ](http://www.rabbitmq.com/), [Beanstalk](http://kr.github.com/beanstalkd/), [Redis](http://redis.io/) and [Kombu](http://kombu.readthedocs.org/) as message queue #支持RabbitMQ,Beanstalk,Redis等多种消息队列
- Task priority, retry, periodical, recrawl by age, etc... #任务优先级,重试,定期,按年龄从爬等等
- Distributed architecture, Crawl Javascript pages, Python 2&3, etc... #分布式架构,js网页爬取,Python 2&3 等等

Tutorial: [http://docs.pyspider.org/en/latest/tutorial/](http://docs.pyspider.org/en/latest/tutorial/)  #教程
Documentation: [http://docs.pyspider.org/](http://docs.pyspider.org/)  #文档
Release notes: [https://github.com/binux/pyspider/releases](https://github.com/binux/pyspider/releases)  #发布说明

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] #用户组
* [中文问答](http://segmentfault.com/t/pyspider)


TODO 备忘录
----

### v0.4.0

- [x] local mode, load script from file. #本地模式,从文件加载脚本
- [x] works as a framework (all components running in one process, no threads) #作为一个框架(所有组件都在一个进程中运行,没有其它线程)
- [x] redis 
- [x] shell mode like `scrapy shell`  #shell模式就像'scrapy shell'
- [ ] a visual scraping interface like [portia](https://github.com/scrapinghub/portia)#像[portia]一样的视觉抓取界面


### more 更多

- [x] edit script with vim via [WebDAV](http://en.wikipedia.org/wiki/WebDAV)#通过[WebDAV]编辑vim脚本


License 许可证
-------
Licensed under the Apache License, Version 2.0 #在Apache许可下的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]:             imgs/demo.png #实例图片
[Issue]:                https://github.com/binux/pyspider/issues #问题
[User Group]:           https://groups.google.com/group/pyspider-users #用户群

© 著作权归作者所有

共有 人打赏支持
sijinge
粉丝 0
博文 40
码字总数 36811
作品 0
广州
架构师
使用pyspider抓取起点中文网小说数据

简介 pyspider是国人开发的相当好用的爬虫框架。虽然网上教程不是很多,但是文档详细,操作简单,非常适合用来做爬虫练习或者实现一些抓取数据的需求。 本文就以抓取起点中文小说网的小说作品...

某杰
2017/02/22
0
0
手把手教你写网络爬虫(3):开源爬虫框架对比

原文出处:拓海 介绍 大家好!我们从今天开始学习开源爬虫框架Scrapy,如果你看过《手把手》系列的前两篇,那么今天的内容就非常容易理解了。细心的读者也许会有疑问,为什么不学出身名门的A...

拓海
04/28
0
0
pyspider + RabbitMQ 使用记 - 上

接到一个爬虫任务,项目比较巨大,原来想用 Requests 配合正则做爬虫。后来得知了 pyspider 这个神器,才知道之前的想法 low 爆了。pyspider GitHub 按照 GitHub 上的安装教程安装好以后,我...

xh4n3
2015/08/04
0
0
用PySpider搜集2017年高校招生章程

个人认为PySpider是一个十分容易上手而且功能强大的Python爬虫框架。支持多线程爬取、JS动态解析、出错重试、定时爬取等等的功能。最重要的是,它通过web提供了可操作界面,使用非常人性化。...

临江仙卜算子
05/15
0
0
Centos7-Pyspider单机版安装

安装的centos版本:CentOS-7-x86_64-DVD-1804.iso 安装的python版本:Python3.6.2 系统为最干净的系统,只安装了一个界面,界面不安装也可以 centos7自带版本为: [root@localhost ~]# pyth...

dong66
07/13
0
0
Python爬虫-pyspider框架的使用

pyspider 是一个用python实现的功能强大的网络爬虫系统,能在浏览器界面上进行脚本的编写,功能的调度和爬取结果的实时查看,后端使用常用的数据库进行爬取结果的存储,还能定时设置任务与任...

_周小董
05/15
0
0
OSChina 技术周刊第十八期 —— 2015 年 OSC 源创会行程计划

每周技术抢先看,总有你想要的! 移动开发 【软件】开源 Android ORM 框架 OpenDroid 【博客】自己动手做推送 前端开发 【软件】jQuery 全屏滚动插件 fullPage.js 服务端开发/管理 【软件】W...

OSC编辑部
2015/01/18
0
0
pyspider + RabbitMQ 使用记 - 下

首先我们需要安装 RabbitMQ,然后通过服务启动它,默认为注册到本机的5672端口。我们的爬虫和数据库写入脚本都需要连接到 RabbitMQ,一边往队列中写入数据,另一边从队列中取出数据,然后插入...

xh4n3
2015/08/06
0
6
邮箱扒头像来告诉你怎么写简单的脚本扒图

用邮箱扒头像来告诉你怎么写简单的脚本扒图 手上有几十万邮箱,本来用户系统没有做头像的东西,现在想根据这些邮箱能拿一部分用户的头像,可以直接使用gravatar的服务,不过这玩意儿不时会被...

duoduo3_69
2014/12/02
0
1
Python爬虫如何快速上手,并达到爬取大规模数据的水平

互联网的数据爆炸式的增长,而利用 Python 爬虫我们可以获取大量有价值的数据: 1.爬取数据,进行市场调研和商业分析 爬取知乎优质答案,筛选各话题下最优质的内容; 抓取房产网站买卖信息,...

技术小能手
06/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

用Python绘制红楼梦词云图,竟然发现了这个!

Python在数据分析中越来越受欢迎,已经达到了统计学家对R的喜爱程度,Python的拥护者们当然不会落后于R,开发了一个个好玩的数据分析工具,下面我们来看看如何使用Python,来读红楼梦,绘制小...

猫咪编程
20分钟前
0
0
Java中 发出请求获取别人的数据(阿里云 查询IP归属地)

1.效果 调用阿里云的接口 去定位IP地址 2. 代码 /** * 1. Java中远程调用方法 * http://localhost:8080/mavenssm20180519/invokingUrl.action * @Title: invokingUrl * @Description: * @ret......

Lucky_Me
43分钟前
1
0
protobuf学习笔记

相关文档 Protocol buffers(protobuf)入门简介及性能分析 Protobuf学习 - 入门

OSC_fly
昨天
0
0
Mybaties入门介绍

Mybaties和Hibernate是我们在Java开发中应用的比较多的两个ORM框架。当然,目前Mybaties正在慢慢取代Hibernate,这是因为相比较Hibernate而言Mybaties性能更好,响应更快,更加灵活。我们在开...

王子城
昨天
2
0
编程学习笔记之python深入之装饰器案例及说明文档[图]

编程学习笔记之python深入之装饰器案例及说明文档[图] 装饰器即在不对一个函数体进行任何修改,以及不改变整体的原本意思的情况下,增加函数功能的新函数,因为这个新函数对旧函数进行了装饰...

原创小博客
昨天
0
0
流利阅读笔记33-20180722待学习

黑暗中的生物:利用奇技淫巧快活生存 Daniel 2018-07-22 1.今日导读 如果让你在伸手不见五指的黑暗当中生存,你能熬过几天呢?而大千世界,无奇不有。在很多你不知道的角落,有些生物在完全黑...

aibinxiao
昨天
6
0
Hystrix降级逻辑中如何获取触发的异常

通过之前Spring Cloud系列教程中的《Spring Cloud构建微服务架构:服务容错保护(Hystrix服务降级)》一文,我们已经知道如何通过Hystrix来保护自己的服务不被外部依赖方拖垮的情况。但是实际...

程序猿DD
昨天
1
0
gin endless 热重启

r := gin.New()r.GET("/", func(c *gin.Context) {c.String(200, config.Config.Server.AppId)})s := endless.NewServer(":8080", r)s.BeforeBegin = func(add string) ......

李琼涛
昨天
1
0
JAVA模式之代理模式

平时一直在用spring,spring中最大的特效IOC和AOP,其中AOP使用的就是代理模式.闲着无聊,随手写了一个代理模式,也记录下代理模式的实现Demo. 比如现在有一个场景是:客户想要增加一个新的功能,...

勤奋的蚂蚁
昨天
0
0
ES15-JAVA API 索引管理

1.创建连接 创建连接demo package com.sean.esapi.client;import java.net.InetSocketAddress;import org.elasticsearch.action.get.GetResponse;import org.elasticsearch.clien......

贾峰uk
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部