资讯专栏INFORMATION COLUMN

Python即时网络爬虫:API说明

genefy / 939人阅读

摘要:用于数据分析和数据挖掘的网络爬虫程序中,内容提取器是影响通用性的关键障碍,如果这个提取器是从获得的,您的网络爬虫程序就能写成通用的框架。,相关文档,即时网络爬虫项目内容提取器的定义,集搜客开源代码下载源,开源网络爬虫源,文档修改历史,

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

1,接口名称

下载内容提取器

2,接口说明

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

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

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

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

3,接口规范

3.1,接口地址(URL)

http://www.gooseeker.com/api/getextractor

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专有名词解释

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

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

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

3.7,返回错误信息

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

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


    具体的错误码

具体的code值如下:

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

4,用法范例(python语言)

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

示例代码:

# -*- coding: utf-8 -*-
from urllib import request

url = "http://www.gooseeker.com/api/getextractor?key=您的key&theme=您的提取器名"

resp = request.urlopen(url)
content = resp.read()
if(content):
    print(content)

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

5,相关文档

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

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

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

7,文档修改历史

1,2016-06-22:V1.0

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/38012.html

相关文章

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

    摘要:集搜客从文件读取从字符串获得通过接口获得返回当前提取方法,入参是一个对象,返回是提取结果用法示例下面是一个示例程序,演示怎样使用类提取官网的帖子列表。 1. 项目背景 在python 即时网络爬虫项目启动说明中我们讨论一个数字:程序员浪费在调测内容提取规则上的时间,从而我们发起了这个项目,把程序员从繁琐的调测规则中解放出来,投入到更高端的数据处理工作中。 2. 解决方案 为了解决这个问...

    KunMinX 评论0 收藏0
  • Python即时网络爬虫项目: 内容提取器的定义(Python2.7版本)

    摘要:然而,和是有区别的,即时网络爬虫项目内容提取器的定义一文的源码无法在下使用,本文将发布一个的内容提取器。 1. 项目背景 showImg(https://segmentfault.com/img/bVz5hX); 在Python即时网络爬虫项目启动说明中我们讨论一个数字:程序员浪费在调测内容提取规则上的时间太多了(见上图),从而我们发起了这个项目,把程序员从繁琐的调测规则中解放出来,投...

    xuxueli 评论0 收藏0
  • API例子:用Python驱动Firefox采集网页数据

    摘要:开源即时网络爬虫项目将与基于的异步网络框架集成,所以本例将使用采集淘宝这种含有大量代码的网页数据,但是要注意本例一个严重缺陷用加载网页的过程发生在中,破坏了的架构原则。 showImg(https://segmentfault.com/img/bVyzAX); 1,引言 本文讲解怎样用Python驱动Firefox浏览器写一个简易的网页数据采集器。开源Python即时网络爬虫项目将与S...

    Harriet666 评论0 收藏0
  • Python爬虫实战(4):豆瓣小组话题数据采集—动态网页

    摘要:,引言注释上一篇爬虫实战安居客房产经纪人信息采集,访问的网页是静态网页,有朋友模仿那个实战来采集动态加载豆瓣小组的网页,结果不成功。 showImg(https://segmentfault.com/img/bVzdNZ); 1, 引言 注释:上一篇《Python爬虫实战(3):安居客房产经纪人信息采集》,访问的网页是静态网页,有朋友模仿那个实战来采集动态加载豆瓣小组的网页,结果不成功...

    blastz 评论0 收藏0
  • Python爬虫实战(3):安居客房产经纪人信息采集

    摘要:为了使用各种应用场景,该项目的整个网络爬虫产品线包含了四类产品,如下图所示本实战是上图中的独立爬虫的一个实例,以采集安居客房产经纪人信息为例,记录整个采集流程,包括和依赖库的安装,即便是初学者,也可以跟着文章内容成功地完成运行。 showImg(https://segmentfault.com/img/bVy2Iy); 1, 引言 Python开源网络爬虫项目启动之初,我们就把网络爬虫...

    马忠志 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<