Skip to main content

Loads data from various formats

Project description


.. image::
:alt: Travis build status

Given a source of rowlike data, acts as a generator of OrderedDicts.


src = Source('mydata.csv')
for row in src:

data-dispenser thus serves as a single API for a variety of data sources.

* Free software: MIT license

Data source types supported

* file names / paths
* open file objects
* pymongo Collection objects
* strings interpretable as data
* URLs beginning with http:// or https://

Will work most reliably against filenames with extensions that indicate
the data format; otherwise data-dispenser may guess the input format wrong.

Data input formats supported

* csv
* yaml (requires ``pyyaml``)
* json
* pickle
* ``eval``-able Python
* xls
* xml (experimental)
* HTML with ``<table>``s

Multiple files

File paths with wildcards will be
effectively concatenated into one large data source.

Load limits

Large data sources could overwhelm your system's memory. Passing a ``limit``
keyword to the ``Source`` constructor limits the rows returned from each
source. For file paths with wildcards, the limit applies to each file
source, not to the number of file sources.


Source and bug tracker


0.1.0 (2014-05-21)

* First release on PyPI.

0.1.1 (2014-05-23)

* Fixed bugs in handling non-listlike YAML files

0.2.0 (2014-07-14)

* Support .xls
* Support URLs
* Support wildcards

0.2.1 (2014-27-14)

* Support .html

0.2.2 (2014-27-14)

* Fix bug with .html tables with <thead>

0.2.3 (2014-09-14)

* Fix for URLs with no file extension

0.2.4 (2014-09-14)

* Better error messages on parse failure

0.2.5 (2015-02-01)

* Directly interpret SQLAlchemy sources (2015-02-04)

* Emit SQLAlchemy tables in order required by foreign keys

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

data_dispenser- (11.4 kB view hashes)

Uploaded source

Built Distributions

data_dispenser- (17.8 kB view hashes)

Uploaded 3 4

data_dispenser- (17.3 kB view hashes)

Uploaded 2 7

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page