文档中心

提供简单、强大的智能信息处理服务

URL2io.com 提供简单,强大的网页信息提取服务。所有服务都以 RESTful API 接口的形式提供,用于 Web 内容的结构化处理。 其中 URL2Article 用来提取并解析网页中的正文区域,实现网页正文提取标题提取发布日期提取下一页链接提取等。

每月所有服务提供的 RESTful API 接口调用超过6百万次。

以下的文档可以帮助你了解 RESTful API 的具体细节,也可以花 20 秒钟快速了解下如何开始使用。

要调用 URL2io API 只需要执行一个HTTP请求,支持通过URL2Article抓取网页并提取(通过 HTTP Get),支持提交网页html源码给URL2Article并提取(通过 HTTP Post)。 接口地址如下:


http://url2api.applinzi.com体验版 Rest API 地址
查看体验版的限制和支持的特性, 详情.

URL2Article 用来提取并解析网页中的正文区域,实现网页正文提取标题提取发布日期提取下一页链接提取等。该服务以 RESTful API 接口的形式提供,下面分 HTTP 请求和 HTTP 响应两个部分来介绍如何调用该服务。

GET /article
参数位置必传描述
tokenquery开发者 token注册后可得
urlquery要提取正文网页的网址,参考 URL Encoding
fieldsquery可选 指示API需要返回的额外字段,取值为
  • next 表示需要提取下一页链接
  • text 表示提取正文为纯文字格式
  • markdown 表示提取正文为markdown格式
  • 多个值通过","号隔开,如fields=text,next。具体见下面的Response部分
    callbackquery可选使用jsonp请求所需要的参数,跨域Ajax必需

    以下是一些调用 URL2Article API 的示例:各个语言中的使用请参考

    请求纯文本格式的正文内容,并返回下一页链接

    GET http://{{api_url}}/article?token=xxx&url=http%3A%2F%2Fwww.url2io.com%2Fdocs&fields=next,text

    请求html格式的正文内容,不返回下一页链接

    GET http://{{api_url}}/article?token=xxx&url=http%3A%2F%2Fwww.url2io.com%2Fdocs

    HTTP返回码: 200 successful Response

    如果调用 URL2Article 服务成功,返回的数据将包含如下字段:

    fields描述
    title 网页正文的标题
    content 网页正文的html格式
    url 要提取正文网页的网址 (已对请求时的 url 参数做解码处理)
    date 文章的发布日期。ISO 8601格式,2014-01-01 01:01:01。如果没有则返回null
    可选字段需要在Request的fields参数中指定,多个字段用","号隔开,如fields=text,next
    text 网页正文的纯文字格式。在请求的fields中指定text时,返回此字段。
    markdown 网页正文的 markdown 格式。在请求的fields中指定markdown时,返回此字段。
    next 网页的下一页链接,若没有则返回null

    支持的数据表现形式:

    • json (Content-Type: application/json; charset=utf-8)
    • jsonp (Content-Type: application/javascript)

    (application/json) representation as json.
    {
     "title": "URL2io API 文档",
     "content": "<section id="url2article"><div><h2><span></span> URL2Article API...",
     "next": null,
     "url": "http://www.url2io.com/docs",
    }
    
    (application/javascript) representation as jsonp.
    callback({
     "title": "URL2io API 文档",
     "content": "<section id="url2article"><div><h2><span></span> URL2Article API...",
     "next": null,
     "url": "http://www.url2io.com/docs",
    });
    

    HTTP返回码: > 200 failed Response

    返回的数据将包含如下字段:

    字段描述
    error 表示错误类型,如:HTTPError, URLError,... 具体见错误码列表
    url 要提取正文网页的网址
    msg 错误消息, 错误的具体信息
    code HTTP states code (仅限于HTTPError)
    type 此次请求的资源类型,MIME格式 (仅限于TypeError)

    错误码列表

    如果调用服务失败一般有以下原因:

    错误类型出错原因
    PermissionError token认证错误;已超出使用配额
    HTTPError 抓取需要提取正文的网页时发生HTTP请求错误,如:404 Not Found
    URLError 抓取需要提取正文的网页时发生网址错误,如:Name or service not known
    TypeError 请求的资源不是html文档或xhtml文档,无法提取正文
    UnknowError 未知错误,很可能是服务器内部错误。具体看错误消息

    支持的数据表现形式:

    • json (Content-Type: application/json; charset=utf-8)
    • jsonp (Content-Type: application/javascript)

      
    
    PermissionError
    {
     "error": u"PermissionError", 
     "url": "http://api.url2io.com/xxx",
     "msg": u"invalid token or quota limit"
    }
    
    HTTPError
    {
     "error": "HTTPError",
     "url": "http://api.url2io.com/xxx",
     "msg": "cant't get this page",
     "code": 404,
     "type": "image/jpeg",
    }
    
    URLError
    {
     "error": "URLError",
     "url": "http://api.url2io-dsjkl.com",
     "msg": "Name or service not known",
    }
    
    TypeError
    {
     "error": "TypeError",
     "url": "https://raw.github.com/url2/url2-app-samples/master/README.md",
     "msg": "not html or xhtml resource",
     "type": "text/plain; charset=utf-8",
    }
    
    UnknowError
    {
     "error": "UnknowError",
     "url": "",
     "msg": "can't get this page",
    }
    
      

    支持通过POST接口将网页html源码提交给URL2Article,并进行解析。请求参数与 HTTP Get 请求相同,需要额外在HTTP请求体中附加网页html源码,具体见以下示例: 各个语言中的使用请 参考

    POST /article

    请求纯文本格式的正文内容,并返回下一页链接

    POST http://{{api_url}}/article?token=xxx&url=http%3A%2F%2Fwww.url2io.com%2Fdocs&fields=next,text
     
    <html>
    <head>
    <title>hello</title>
    </head>
    <body>
    <p>hello world</p>
    </body>
    </html>
    

    请求html格式的正文内容,不返回下一页链接

    POST http://{{api_url}}/article?token=xxx&url=http%3A%2F%2Fwww.url2io.com%2Fdocs
     
    <html>
    <head>
    <title>hello</title>
    </head>
    <body>
    <p>hello world</p>
    </body>
    </html>
    
    文本信息智能处理

    URL2NLP 用来对文本信息进行智能处理,提供中文分词、词性标注、关键词提取等功能。

    分词是大多数自然语言问题中最基本的步骤,而中文在书写时,词之间并不会通过分隔符来进行分割。 为了满足中文自然语言处理的需要,URL2NLP提供了一套分词系统,支持分词、去停用词、新词发现等功能。

    POST /v1/nlp/word/cut
    参数类型位置必传描述
    token String query 开发者 token注册后可得
    keep_stopwords Bool query 是否返回停用词,默认:返回
    symbols Bool query 是否返回特殊字符,默认:返回
    ditc Bool query 是否使用领域词典,默认:不使用
    custom_dict Bool query 是否使用自定义词典,默认:不使用
    with_flag Bool query 是否返回词性标注,默认:返回
    hmm Bool query 是否使用新词发现,默认:使用
    body String body 需要分词的文本

    以下是一些调用中文分词接口的请求示例:

    对文本进行分词,并返回词性标注

    POST http://{{api_url}}/v1/nlp/word/cut?token=xxx&with_flag=true
     
    需要进行分词的文本……
     
              

    HTTP返回码: 200 successful Response

    如果调用服务成功,返回的数据将包含如下字段:

    字段类型描述
    Array<NlpWordCutItemForResponse> 分词对象列表
    NlpWordCutItemForResponse
    字段类型必选参数描述
    word String 词语。
    flag String 词性。
    flag_desc String 词性描述, 如动词、名词等。

    词性标注方法与ICTCLAS汉语词性标注集兼容。但URL2NLP的词性标注多达57种,比ICTCLAS的39种更多。 以下词性代码中有标注「*」的,表示是URL2NLP特有的词性标注,不在ICTCLAS的范围内。

    (application/json)
      
    
    [
        {
            "word": "word1",
            "flag": "n",
            "flag_desc": "名词"
        },
        {
            "word": "word2",
            "flag": "v",
            "flag_desc": "动词"
        }
    ]
      

    HTTP返回码: > 200 failed Response

    如果调用服务失败,返回的数据将包含如下字段:

    字段描述
    error 表示错误类型,如:HTTPError, URLError,... 具体见错误码列表
    msg 错误消息, 错误的具体信息
    code HTTP states code (仅限于HTTPError)

    错误码列表

    如果调用 URL2Article 服务失败一般有以下原因:

    错误类型出错原因
    PermissionError token认证错误;已超出使用配额
    ParamsError 参数错误
    TypeError 发送的文本数据格式有误
    UnknowError 未知错误,很可能是服务器内部错误。具体看错误消息

    支持的数据表现形式:

    • json (Content-Type: application/json; charset=utf-8)
    • jsonp (Content-Type: application/javascript)

      
    
    PermissionError
    {
     "error": u"PermissionError",
     "url": "http://api.url2io.com/xxx",
     "msg": u"invalid token or quota limit"
    }
    
    TypeError
    {
     "error": "TypeError",
     "url": "https://raw.github.com/url2/url2-app-samples/master/README.md",
     "msg": "not html or xhtml resource",
     "type": "text/plain; charset=utf-8",
    }
    
    UnknowError
    {
     "error": "UnknowError",
     "url": "",
     "msg": "can't get this page",
    }
      

    关键词提取引擎可以提取出文本中最有代表性的关键词,并给出对应的权重。

    POST /v1/nlp/keywords
    参数类型位置必传描述
    token String query 开发者 token注册后可得
    top_k Int query 返回关键词的个数,默认10,最大50。
    with_weight Bool query 是否返回每个关键词的权重,默认:不返回。
    allow_pos String query 允许的关键词词性列表,如只返回动词和名词可以表示为 v,n,默认:允许全部词性。
    body String body 需要分词的文本

    以下是一些请求示例:

    提取权重最高的50个关键字

    POST http://{{api_url}}/v1/nlp/keywords?token=xxx&top_k=50
     
    需要进行提取关键字的文本……
     
              

    HTTP返回码: 200 successful Response

    如果调用服务成功,返回的数据将包含如下字段:

    字段类型描述
    Array<NlpExtractKeywordsItemForResponse> 关键词对象列表
    NlpExtractKeywordsItemForResponse
    字段类型必选参数描述
    word String 关键词
    weight Double 权重
    (application/json)
      
    
    [
        {
            "word": "word1",
            "weight": 1.112
        },
        {
            "word": "word2",
            "weight": 0.9999
        }
    ]
      

    HTTP返回码: > 200 failed Response

    如果调用服务失败,返回的数据将包含如下字段:

    字段描述
    error 表示错误类型,如:HTTPError, URLError,... 具体见错误码列表
    msg 错误消息, 错误的具体信息
    code HTTP states code (仅限于HTTPError)

    错误码列表

    如果调用 URL2Article 服务失败一般有以下原因:

    错误类型出错原因
    PermissionError token认证错误;已超出使用配额
    ParamsError 参数错误
    TypeError 发送的文本数据格式有误
    UnknowError 未知错误,很可能是服务器内部错误。具体看错误消息

    支持的数据表现形式:

    • json (Content-Type: application/json; charset=utf-8)
    • jsonp (Content-Type: application/javascript)

      
    
    PermissionError
    {
     "error": "PermissionError",
     "url": "http://api.url2io.com/xxx",
     "msg": "invalid token or quota limit"
    }
    
    TypeError
    {
     "error": "TypeError",
     "url": "https://raw.github.com/url2/url2-app-samples/master/README.md",
     "msg": "not html or xhtml resource",
     "type": "text/plain; charset=utf-8",
    }
    
    UnknowError
    {
     "error": "UnknowError",
     "url": "",
     "msg": "can't get this page",
    }
      


    ... and many others!


    
    	

    Feedback