Skip to main content

Loads data from various formats

Project description

==============
data-dispenser
==============

.. image:: https://travis-ci.org/catherinedevlin/data-dispenser.svg?branch=master
:alt: Travis build status

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

Usage::

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

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.

Code
----

https://pypi.python.org/pypi/data_dispenser

Source and bug tracker
----------------------

https://github.com/catherinedevlin/data-dispenser





History
-------

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

0.2.5.1 (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-0.2.5.1.tar.gz (11.4 kB view details)

Uploaded Source

Built Distributions

data_dispenser-0.2.5.1-py3.4.egg (17.8 kB view details)

Uploaded Source

data_dispenser-0.2.5.1-py2.7.egg (17.3 kB view details)

Uploaded Source

File details

Details for the file data_dispenser-0.2.5.1.tar.gz.

File metadata

File hashes

Hashes for data_dispenser-0.2.5.1.tar.gz
Algorithm Hash digest
SHA256 baa0356d78e84d04ff37846ad08772265159a5b06d1b5d3233c8a67748517ec7
MD5 54a3a74606a29f7e311214c8263200d8
BLAKE2b-256 22da5d69991002233edb25f96f87bafdac76d8a9f3ba7bb71fb1e147caf20716

See more details on using hashes here.

File details

Details for the file data_dispenser-0.2.5.1-py3.4.egg.

File metadata

File hashes

Hashes for data_dispenser-0.2.5.1-py3.4.egg
Algorithm Hash digest
SHA256 6abad3e6b9abfe0b0dc357663a59f901179bb98f396126fe83fdb97a2d9b577f
MD5 e56b4be2f58ab02918d47c10927bfb5f
BLAKE2b-256 853fb1f216460158b710ee176e34a1d0b714e7f68e0feeec666de9d461978359

See more details on using hashes here.

File details

Details for the file data_dispenser-0.2.5.1-py2.7.egg.

File metadata

File hashes

Hashes for data_dispenser-0.2.5.1-py2.7.egg
Algorithm Hash digest
SHA256 00f697b003bd1b183fa91b8603084cf1c501d09b3df9f3eebfff9f13125dbb07
MD5 7187be31c1243a9dca60584e546f8361
BLAKE2b-256 461157284f587b1b171da07b3068f89cafbbbd797d423b5a3bb58c1c017150fd

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