Skip to main content

Simple client library for the webz.io REST API

Project description

A simple way to access the Webz.io API from your Python code:: .. code-block:: python

import webzio

webzio.config(token=YOUR_API_KEY) output = webzio.query(“filterWebContent”, {“q”:”github”}) print output[‘posts’][0][‘text’] # Print the text of the first post print output[‘posts’][0][‘published’] # Print the text of the first post publication date

# Get the next batch of posts output = webzio.get_next() print output[‘posts’][0][‘thread’][‘site’] # Print the site of the first post

API Key

To make use of the webz.io API, you need to obtain a token that would be used on every request. To obtain an API key, create an account at https://webz.io/auth/signup, and then go into https://webz.io/dashboard to see your token.

Installing

You can install from source:

$ git clone https://github.com/webz.io/webzio-python
$ cd webzio-python
$ python setup.py install

Or use pip install:

$ sudo pip install webzio

Use the API

To get started, you need to import the library, and set your access token. (Replace YOUR_API_KEY with your actual API key).

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

API Endpoints

The first parameter the query() function accepts is the API endpoint string. Available endpoints: * filterWebContent - access to the news/blogs/forums/reviews API

Now you can make a request and inspect the results:

>>> output = webzio.query("filterWebContent", {"q":"github"})
>>> output['totalResults']
15565094
len(output['posts'])
100
>>> output['posts'][0]['language']
u'english'
>>> output['posts'][0]['title']
u'Putting quotes around dictionary keys in JS'

For your convenience, the ouput object is iterable, so you can loop over it and get all the results of this batch (up to 100).

>>> total_words = 0
>>> for post in output['posts']:
...     total_words += len(post['text'].split(" "))
...
>>> print(total_words)
8822

Full documentation

  • config(token)

    • token - your API key

  • query(end_point_str, params)

    • end_point_str: * filterWebContent - access to the news/blogs/forums/reviews API

    • params: A key value dictionary. The most common key is the “q” parameter that hold the filters Boolean query. [Read about the available filters](https://webz.io/documentation).

  • get_next() - a method to fetch the next page of results.

Polling

If you want to make repeated searches, performing an action whenever there are new results, use code like this:

r = webzio.query("filterWebContent", {"q":"skyrim"})
while True:
    for post in r['posts']:
        perform_action(post)
    time.sleep(300)
    r = webzio.get_next()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

webzio-1.0.2.tar.gz (4.0 kB view details)

Uploaded Source

File details

Details for the file webzio-1.0.2.tar.gz.

File metadata

  • Download URL: webzio-1.0.2.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/2.7

File hashes

Hashes for webzio-1.0.2.tar.gz
Algorithm Hash digest
SHA256 2f04af2bdf3b570458c75182c56ff624a22c951ccf176c732392c58576f1ddd0
MD5 ea57c3c85a017552e2f0d051edd32722
BLAKE2b-256 8b7395981b779d4cf1677443fc97e106a4a96faa97364967e33f2f81961ffccd

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page