HTTPStream is an HTTP client library for Python with an easy-to-use API and support for incremental JSON document retrieval.
Python Makefile CSS Other
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
art
book
httpstream
test
.gitignore
.travis.yml
LICENSE
MANIFEST.in
NOTICE
README.rst
requirements.txt
runtests.sh
setup.py
test_requirements.txt

README.rst

https://travis-ci.org/nigelsmall/httpstream.png?branch=master

HTTPStream

HTTPStream is an HTTP client library for Python that wraps the standard library HTTP client with a convenient resource-based interface and also provides support for incremental JSON document retrieval and RFC 6570 URI Templates.

Installation

HTTPStream is hosted on PyPI and so to install, simply use pip:

pip install httpstream

Quick Start

>>> from httpstream import get
>>> get("https://api.duckduckgo.com/?q=neo4j&format=json").content
{'Abstract': 'Neo4j is an open-source graph database, implemented in Java.',
 'AbstractSource': 'Wikipedia',
 'AbstractText': 'Neo4j is an open-source graph database, implemented in Java.',
 'AbstractURL': 'https://en.wikipedia.org/wiki/Neo4j',
 'Answer': '',
 'AnswerType': '',
 'Definition': '',
 'DefinitionSource': '',
 'DefinitionURL': '',
 'Heading': 'Neo4j',
 'Image': 'https://i.duckduckgo.com/i/4d74091a.jpg',
 'Redirect': '',
 'RelatedTopics': [{'FirstURL': 'http://duckduckgo.com/noSQL',
   'Icon': {'Height': '', 'URL': '', 'Width': ''},
   'Result': '<a href="http://duckduckgo.com/noSQL">Structured storage</a> - A NoSQL database provides a mechanism for storage and retrieval of data that is modeled in means other than the tabular relations used in relational databases.',
   'Text': 'Structured storage - A NoSQL database provides a mechanism for storage and retrieval of data that is modeled in means other than the tabular relations used in relational databases.'},
  {'FirstURL': 'http://duckduckgo.com/CODASYL',
   'Icon': {'Height': '', 'URL': '', 'Width': ''},
   'Result': '<a href="http://duckduckgo.com/CODASYL">CODASYL</a> - CODASYL (often spelled Codasyl) is an acronym for "Conference on Data Systems Languages".',
   'Text': 'CODASYL - CODASYL (often spelled Codasyl) is an acronym for "Conference on Data Systems Languages".'},
  {'FirstURL': 'http://duckduckgo.com/Cypher_Query_Language',
   'Icon': {'Height': '', 'URL': '', 'Width': ''},
   'Result': '<a href="http://duckduckgo.com/Cypher_Query_Language">Cypher Query Language</a>',
   'Text': 'Cypher Query Language'},
  {'FirstURL': 'http://duckduckgo.com/c/Software_companies_of_Sweden',
   'Icon': {'Height': '', 'URL': '', 'Width': ''},
   'Result': '<a href="http://duckduckgo.com/c/Software_companies_of_Sweden">Software companies of Sweden</a>',
   'Text': 'Software companies of Sweden'},
  {'FirstURL': 'http://duckduckgo.com/c/Structured_storage',
   'Icon': {'Height': '', 'URL': '', 'Width': ''},
   'Result': '<a href="http://duckduckgo.com/c/Structured_storage">Structured storage</a>',
   'Text': 'Structured storage'},
  {'FirstURL': 'http://duckduckgo.com/c/NoSQL',
   'Icon': {'Height': '', 'URL': '', 'Width': ''},
   'Result': '<a href="http://duckduckgo.com/c/NoSQL">NoSQL</a>',
   'Text': 'NoSQL'},
  {'FirstURL': 'http://duckduckgo.com/c/Free_software_programmed_in_Java',
   'Icon': {'Height': '', 'URL': '', 'Width': ''},
   'Result': '<a href="http://duckduckgo.com/c/Free_software_programmed_in_Java">Free software programmed in Java</a>',
   'Text': 'Free software programmed in Java'}],
 'Results': [{'FirstURL': 'http://neo4j.org',
   'Icon': {'Height': 16,
    'URL': 'https://i.duckduckgo.com/i/neo4j.org.ico',
    'Width': 16},
   'Result': '<a href="http://neo4j.org"><b>Official site</b></a><a href="http://neo4j.org"></a>',
   'Text': 'Official site'}],
 'Type': 'A'}

Full Documentation

For further information on how to use HTTPStream, go to http://nigelsmall.com/httpstream.