Skip to main content

Stream and convert BCP format files

Project description

BCP Reader

A reader for BCP-format data files. BCP files are similar to CSV files but contain a multi-character line and field delimiters. The default delimiters used are:

  • field delimiter: @**@
  • line delimiter: *@@*

Python's csv module can only deal with single character delimiters, so this module has a reader function and DictReader class which should be drop-in replacements for python's csv module equivalents.

Credits

The author of the main method is Gertjan van den Burg of the Alan Turing Institute. It was based on a method originally developed by David Kane at NCVO.

Installation

Install with pip install bcp-reader

Usage

The module can be used by importing from the bcp module in a python script:

import bcp

with open('path_to_bcp_file.bcp') as f:
    bcpreader = bcp.reader(f)
    for row in bcpreader:
        print(row)
        # ["Value 1", "Value 2"]

with open('path_to_bcp_file.bcp') as f:
    bcpreader = bcp.DictReader(f, fieldnames=["field 1", "field 2"])
    for row in bcpreader:
        print(row)
        # {"field 1": "Value 1", "field 2": "Value 2"}

You can also use it via the command line to convert a BCP file to CSV:

bcp path_to_bcp_file.bcp > csv_output.csv

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

bcp-reader-0.1.1.tar.gz (3.4 kB view details)

Uploaded Source

Built Distribution

bcp_reader-0.1.1-py3-none-any.whl (4.6 kB view details)

Uploaded Python 3

File details

Details for the file bcp-reader-0.1.1.tar.gz.

File metadata

  • Download URL: bcp-reader-0.1.1.tar.gz
  • Upload date:
  • Size: 3.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.0

File hashes

Hashes for bcp-reader-0.1.1.tar.gz
Algorithm Hash digest
SHA256 fc49c70561eca1d3b8869c795b3569907e086818d6fb6f95d44ae803a7b9afbf
MD5 d214f9e1ab9b258f7e22cd5c2797689b
BLAKE2b-256 a21f634e684fec5c29033c72501acd0043d342591903fb60cde47e7ff3519ba6

See more details on using hashes here.

File details

Details for the file bcp_reader-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: bcp_reader-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 4.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.0

File hashes

Hashes for bcp_reader-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9dae2ea7e3218b5fcf27ddd8de83f775a77618bf2259166ca7ecb7f073b59907
MD5 1e4602f3d2e3489244d5ea56b0e1012b
BLAKE2b-256 2412329f1468230a50cdb61aff5add9cd66c383e2c4876eadd2084ae95569f17

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