pyspider简介:
1.PySpider:一个国人编写的强大的网络爬虫系统并带有强大的WebUI。采用Python语言编写,分布式架构,支持多种数据库后端,强大的WebUI支持脚本编辑器,任务监视器,项目管理器以及结果查看器。在线示例: http://demo.pyspider.org/
2.主要功能需求:
1.抓取、更新调度多站点的特定的页面
2.需要对页面进行结构化信息提取
3.灵活可扩展,稳定可监控 而这也是绝大多数python爬虫的需求 —— 定向抓取,结构化化解析。但是面对结构迥异的各种网站,单一的抓取模式并不一定能满足,灵活的抓取控制是必须的。为了达到这个目的,单纯的配置文件往往不够灵活,于是,通过脚本去控制抓取是我最后的选择。 而去重调度,队列,抓取,异常处理,监控等功能作为框架,提供给抓取脚本,并保证灵活性。最后加上web的编辑调试环境,以及web任务监控,即成为了这套框架。
3.官方文档:http://docs.pyspider.org/
中文网址:http://www.pyspider.cn/book/pyspider/
最新版本: https://github.com/binux/pyspider/releases
4.Ubuntu 安装方法:
安装:
添加依赖
sudo apt-get install python python-dev python-distribute python-pip libcurl4-openssl-dev libxml2-dev libxslt1-dev python-lxml libssl-dev zlib1g-dev
sudo apt-get install phantomjs
pip3 install pyspider
启动:
pyspider all
5.pyspider的方法:
def on_start(self):是脚本的入口点。单击run仪表板上的按钮时将调用它。
def index_page(self, response):得到一个Response*对象。response.doc*是一个pyquery对象,它有类似jQuery的API来选择要提取的元素。
def detail_page(self, response):返回一个dict对象作为结果。结果将resultdb默认捕获。您可以覆盖on_result(self, result)方法来自行管理结果。