Skip to main content

A simple state-machine based CSV parser.

Project description

CSV Parse

CSV Parse is a simple state-machine based approach to parsing CSV files. Its creation was motivated after dealing with some CSV parsers that could not properly handle strings with null bytes. It is not very fast, and definitely not very memory efficient, but if you want to explore simple CSV parsing, look no further. If you have CSV files that are incorrectly formatted, you can pretty easily modify the code to patch them up.


CSV parse supports reading from files or a buffer.

Reading Files

from csv_parse import read

data = read("/home/user/foo.txt")

Reading a buffer

from csv_parse import parse

my_string = 'foo,bar\nbaz,bat'
size = len(my_string)
data = parse(my_string, size)

CSV Parse also supports escaping, custom delimiters and newlines, and custom quoting.

data = read("/home/user/foo.txt", field_separator=',', null_as="", newline="\n", quote='"')



  • Messing with deployments!


  • Markdown for the Markdown parsing gods


  • Initial Release

Project details

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
csvparse-0.0.3-py2-none-any.whl (2.5 kB) Copy SHA256 hash SHA256 Wheel py2
csvparse-0.0.3-py3-none-any.whl (3.7 kB) Copy SHA256 hash SHA256 Wheel py3
csvparse-0.0.3.tar.gz (3.1 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page