Python即时网络爬虫:API说明

时间:2022-10-21 20:21:12

Python即时网络爬虫:API说明

API说明——下载gsExtractor内容提取器

1,接口名称

下载内容提取器

2,接口说明

如果您想编写一个网络爬虫程序,您会发现大部分时间耗费在调测网页内容提取规则上,不讲正则表达式的语法如何怪异,即便使用XPath,您也得逐个编写和调试。

如果要从一个网页上提取很多字段,逐个调试XPath将是十分耗时的。通过这个接口,你可以直接获得一个调测好的提取器脚本程序,是标准的XSLT程序,您只需针对目标网页的DOM运行它,就能获得XML格式的结果,所有字段一次性获得。

这个XSLT提取器可以是您用MS谋数台生成的,也可以是其他人共享给您的,只要您有读权限,皆可下载使用。

用于数据分析和数据挖掘的网络爬虫程序中,内容提取器是影响通用性的关键障碍,如果这个提取器是从API获得的,您的网络爬虫程序就能写成通用的框架。请参看GooSeeker的开源Python网络爬虫项目(访问网址:Python即时网络爬虫:API说明)。

3,接口规范

3.1,接口地址(URL)

Python即时网络爬虫:API说明

3.2,请求类型(contentType)
不限

3.3,请求方法
HTTP GET

3.4,请求参数

  • key 必选:Yes;类型:String;说明:申请API时分配的AppKey

  • theme 必选:Yes;类型:String;说明:提取器名,就是用MS谋数台定义的规则名

  • middle 必选:No;类型:String;说明:规则编号,如果相同规则名下定义了多个规则,需填写

  • bname 必选:No;类型:String;说明:整理箱名,如果规则含有多个整理箱,需填写

注释:请参看GooSeeker网络爬虫术语解释:集搜客GooSeeker专有名词解释(访问网址:Python即时网络爬虫:API说明

3.5,返回类型(contentType)
text/xml; charset=UTF-8

3.6,返回参数
HTTP消息头中的参数,如下:

  • more-extractor 类型:String;说明:相同规则名下有多少个提取器。通常只在可选参数没有填写的时候需要关注这个参数,用以提示客户端有多个规则和整理箱,客户端自己决定是否要在发送请求时携带明确的参数

3.7,返回错误信息

  • 消息层错误以HTTP 400返回,比如,URL中的参数不符合本规范

  • 应用层错误以HTTP 200 OK返回,具体错误码用XML文件放在消息体中,XML结构如下:

    <return>
    <code>具体的错误码</code>
    </return>
  • 具体的code值如下:

    keyError:权限验证失败
    paramError:URL中传来的参数有误,比如,参数名称或值不正确
    empty:非错误状态,而是请求的提取器是不存在的,比如,某个抓取规则并没有创建整理箱,则返回empty

4,用法范例(python语言)

提取器名获取参考 1分钟快速生成用于网页内容提取的xslt

示例代码:

Python即时网络爬虫:API说明

接下来我会对此API进行测试,将案例发布出来。

5,相关文档

1, Python即时网络爬虫项目: 内容提取器的定义

6,集搜客GooSeeker开源代码下载源

1, GooSeeker开源Python网络爬虫GitHub源

7,文档修改历史

1,2016-06-23:V1.0

Python即时网络爬虫:API说明的更多相关文章

  1. Python即时网络爬虫项目&colon; 内容提取器的定义&lpar;Python2&period;7版本&rpar;

    1. 项目背景 在Python即时网络爬虫项目启动说明中我们讨论一个数字:程序员浪费在调测内容提取规则上的时间太多了(见上图),从而我们发起了这个项目,把程序员从繁琐的调测规则中解放出来,投入到更高端 ...

  2. Python即时网络爬虫项目&colon; 内容提取器的定义

    1. 项目背景 在python 即时网络爬虫项目启动说明中我们讨论一个数字:程序员浪费在调测内容提取规则上的时间,从而我们发起了这个项目,把程序员从繁琐的调测规则中解放出来,投入到更高端的数据处理工作 ...

  3. Python即时网络爬虫项目启动说明

    作为酷爱编程的老程序员,实在按耐不下这个冲动,Python真的是太火了,不断撩拨我的心. 我是对Python存有戒备之心的,想当年我基于Drupal做的系统,使用php语言,当语言升级了,推翻了老版本 ...

  4. 读书笔记汇总 --- 用Python写网络爬虫

    本系列记录并分享:学习利用Python写网络爬虫的过程. 书目信息 Link 书名: 用Python写网络爬虫 作者: [澳]理查德 劳森(Richard Lawson) 原版名称: web scra ...

  5. Python学习网络爬虫--转

    原文地址:https://github.com/lining0806/PythonSpiderNotes Python学习网络爬虫主要分3个大的版块:抓取,分析,存储 另外,比较常用的爬虫框架Scra ...

  6. Python 3网络爬虫开发实战》中文PDF&plus;源代码&plus;书籍软件包

    Python 3网络爬虫开发实战>中文PDF+源代码+书籍软件包 下载:正在上传请稍后... 本书书籍软件包为本人原创,在这个时间就是金钱的时代,有些软件下起来是很麻烦的,真的可以为你们节省很多 ...

  7. Python 3网络爬虫开发实战中文 书籍软件包&lpar;原创&rpar;

    Python 3网络爬虫开发实战中文 书籍软件包(原创) 本书书籍软件包为本人原创,想学爬虫的朋友你们的福利来了.软件包包含了该书籍所需的所有软件. 因为软件导致这个文件比较大,所以百度网盘没有加速的 ...

  8. Python 3网络爬虫开发实战中文PDF&plus;源代码&plus;书籍软件包&lpar;免费赠送&rpar;&plus;崔庆才

    Python 3网络爬虫开发实战中文PDF+源代码+书籍软件包+崔庆才 下载: 链接:https://pan.baidu.com/s/1H-VrvrT7wE9-CW2Dy2p0qA 提取码:35go ...

  9. 《Python 3网络爬虫开发实战中文》超清PDF&plus;源代码&plus;书籍软件包

    <Python 3网络爬虫开发实战中文>PDF+源代码+书籍软件包 下载: 链接:https://pan.baidu.com/s/18yqCr7i9x_vTazuMPzL23Q 提取码:i ...

随机推荐

  1. 根据位置信息提取 fasta 文件中的序列 -- extract fasta sequence by their position

    #!/usr/bin/env python # usages: python extract_seq_by_pos.py input.fasta id_start_end > result.fa ...

  2. Head First Design Patterns学习笔记-观察者模式

    认识观察者模式 首先来看看报纸订阅的过程 1.报社的业务就是出版报纸 2.向某家报社订阅报纸,只要他们有新报纸出版,就会送过来,只要你是他们的订户 3.当你不想再看报纸的时候,取消订阅,他们就不会再送 ...

  3. &lbrack;backbone&rsqb;backbone&period;js

    学习文档: 开始学习 Backbone http://www.ibm.com/developerworks/cn/web/wa-backbonejs/

  4. Linux查看Tomcat是否多次重启命令

    1.查看命令 ps -ef|grep apache-tomcat-9090|grep -v grep|awk '{print $2}' 如果存在两个端口则多次重启, 2.停掉命令: kill -9  ...

  5. Mongo之架构部署&lpar;Replica Sets&plus;Sharding&rpar;

    一.环境 要构建一个 MongoDB Sharding Cluster,需要三种角色: •Shard Server: mongod 实例,用于存储实际的数据块. •Config Server: mon ...

  6. JAVA对象和类

    Java作为一种面向对象语言.支持以下基本概念: 多态 继承 封装 抽象 类 对象 实例 方法 重载 Java中的类 类可以看成是创建Java对象的模板. 通过下面一个简单的类来理解下Java中类的定 ...

  7. 升级 phpstud y中的 mysql 版本

    1.找到你 phpstudy 安装目录,找到 MySQL 文件夹 (我自己的实际目录  D:\pc\phpstudy\MySQL),关掉退出 phpstudy服务,删除 MySQL 文件夹里的文件,如 ...

  8. mysqlreport工具

    进行MySQL的配置优化,首先必须找出MySQL的性能瓶颈所在:而SHOW STATUS输出的报告正是用来计算性能瓶颈的参考数据.mysqlreport不像SHOW STATUS那样简单的罗列数据,而 ...

  9. hdu 1754&lpar;基础线段树&rpar; I Hate It

    http://acm.hdu.edu.cn/showproblem.php?pid=1754 数据比较大,暴力会超时,所以明显是线段树,普通的线段树,结构体中多开一个值sum储存每个子区间的最大成绩, ...

  10. getpass模块

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #getpass模块 import getpass ''' >>> help(getpass ...