跳转到主要内容

webhose.io REST API的简单客户端库

项目描述

从您的Python代码中访问webhose.io API的简单方法

import webhose

webhose.config(token=YOUR_API_KEY)
for post in webhose.search("github"):
    print(post.title)

API密钥

要使用webhose.io API,您需要获取一个在每次请求中使用的令牌。要获取API密钥,请创建https://webhose.io/auth/signup上的账户,然后进入https://webhose.io/dashboard以查看您的令牌。

安装

您可以从源安装

$ git clone https://github.com/Buzzilla/webhose-python
$ cd webhose-python
$ python setup.py install

使用API

要开始,您需要导入库并设置您的访问令牌。(将YOUR_API_KEY替换为您实际的API密钥)。

>>> import webhose
>>> webhose.config(token=YOUR_API_KEY)

现在您可以进行请求并检查结果

>>> r = webhose.search("foobar")
>>> r.total
62
>>> len(r.posts)
62
>>> r.posts[0].language
'english'
>>> r.posts[0].title
'Putting quotes around dictionary keys in JS'

为了方便起见,Response对象是可迭代的,因此您可以遍历它并获取所有结果。迭代器将创建额外的API请求以获取额外页面。

>>> total_words = 0
>>> for post in r:
...     total_words += len(post.text.split(" "))
...
>>> print(total_words)
56006

警告:如果您的搜索结果很多,此方法可能会耗尽您的积分。

完整文档

  • config(token)

    • token - 您的API密钥

  • search(query, token=None)

    • query - 搜索查询,可以是搜索字符串或查询对象

    • token - 如果您想,可以直接向搜索函数提供API密钥

查询对象

查询对象对应于https://webhose.io/use上出现的高级搜索选项

查询对象具有以下成员

  • all_terms - 字符串列表,所有这些都必须出现在结果中

  • some_terms - 字符串列表,其中一些必须在结果中显示

  • phrase - 必须在结果中完全匹配的短语

  • exclude - 不应出现在结果中的术语

  • site_type - discussionsnewsblogs 中的一个或多个

  • language - 一个或多个语言名称,小写英文

  • site - 一个或多个站点名称,仅顶级(即,yahoo.com,而不是news.yahoo.com)

  • title - 必须出现在标题中的术语

  • body_text - 必须出现在正文中的术语

查询对象实现了 __str__() 方法,该方法显示结果搜索字符串。

响应对象

响应对象具有以下成员

  • total - 与此搜索匹配的帖子总数

  • more - 未包含在此响应中的帖子数量

  • posts - 帖子对象的列表

  • next - 此搜索的下一页结果页面的URL

  • response - 原始 requests 响应

  • get_next() - 获取下一页结果的方法。返回新的响应对象

响应对象实现了 __iter__() 方法,可用于遍历与查询匹配的所有帖子。(自动获取页面)

帖子对象和线程对象

帖子对象和线程对象包含从API返回的实际数据。有关它们的结构,请参阅 https://webhose.io/documentation

轮询

如果您想进行重复搜索,在出现新结果时执行操作,请使用以下代码

r = webhose.search("skyrim")
while True:
    for post in r:
        perform_action(post)
    time.sleep(300)
    r = r.get_next()

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分布

webhose-0.1.5.tar.gz (5.5 kB 查看哈希值)

上传时间

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面