Skip to main content

Test success Test coverage Latest version released on PyPi

Convert MARC files to Excel spreadsheets and vice-versa.

Installation

From PyPI:

pip install marc2excel

From GitHub:

git clone https://github.com/alexandermendes/marc2excel
cd marc2excel
python setup.py install

Usage

Running scripts:

The following scripts can be run from anywhere, once the package is installed.

Converting MARC to Excel:

Usage: marc2excel_cli.py [OPTIONS] MARC_PATH

  Convert MARC_PATH to an Excel spreadsheet.

  The path to the saved spreadsheet will be the same as MARC_PATH but with a
  .xlsx extension.

  If a directory is specified for MARC_PATH all files found in that
  directory with .mrc, .marc or .lex extensions will be converted and the
  .xlsx versions saved in the same directory.

  The option to force utf-8 encoding is included to help deal with any
  poorly formed MARC records that you might encounter. For example, those
  that are utf-8 encoded but without the leader set appropriately, or those
  that contain mostly utf-8 data but with a few non-utf-8 characters (any
  non-utf-8 characters will be replaced with the official U+FFFD REPLACEMENT
  CHARACTER).

Options:
  -d        Specify a directory for MARC_PATH.
  --silent  Don't display progress.
  --utf8    Force utf-8 encoding.
  --help    Show this message and exit.

Converting Excel to MARC:

Usage: excel2marc_cli.py [OPTIONS] EXCEL_PATH

  Convert EXCEL_PATH to an MARC file.

  The path to the saved MARC file will be the same as EXCEL_PATH but with a
  .mrc extension.

  If a directory is specified for EXCEL_PATH all files found in that
  directory with .xlsx extensions will be converted and the .mrc versions
  saved in the same directory.

  The option to force utf-8 encoding is included to help deal with any
  poorly formed data found in the spreadsheet. For example, where rows
  contain data that is utf-8 encoded but without the leader set
  appropriately, or rows that contain mostly utf-8 data but with a few non-
  utf-8 characters (any non-utf-8 characters will be replaced with the
  official U+FFFD REPLACEMENT CHARACTER).

Options:
  -d        Specify a directory for EXCEL_PATH.
  --silent  Don't display progress.
  --utf8    Force utf-8 encoding.
  --help    Show this message and exit.

Running from Python:

Converting MARC to Excel:

import marc2excel
marc2excel.marc2excel('path/to/file.mrc', 'path/to/save/file.xls')

Converting Excel to MARC:

import marc2excel
marc2excel.excel2marc('path/to/file.xls', 'path/to/save/file.mrc')

Spreadsheet guidelines

Spreadsheets require a header row that must adhere to the following guidelines:

  • The field tag is required for all fields.

  • For non-control fields, the indicator and subfield tags are also required.

  • Backslashes should be used to indicate blank spaces in indicators.

  • Subfields should be prepended with a dollar symbol.

  • Leaders can be added from a column with the heading LDR (optional).

  • Repeated fields can be created by appending headers with [number].

Example:

001

245 \\ $a

852 \1 $j

852 \1 $j [2]

123

some_value

another_value

another_value

Testing

Tests can be run using:

python setup.py test

Download files

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

Source Distribution

marc2excel-1.2.1.tar.gz (6.7 kB view details)

Uploaded Source

File details

Details for the file marc2excel-1.2.1.tar.gz.

File metadata

  • Download URL: marc2excel-1.2.1.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for marc2excel-1.2.1.tar.gz
Algorithm Hash digest
SHA256 7ee5969a8feaacf8f6b6b2abb2ebc853c8d8933b8c23687b9a89ad4741242eb0
MD5 39df2057c73278913cf199265387c825
BLAKE2b-256 0399baecdaeb8c6268faa56678fa2fddf6dc76302ef4e06117a8f86331e9c84e

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.2.1 This release

1 file

1.2.0

1 file

1.1.0

1 file

1.0.0

1 file

0.1.1

1 file

0.1.0

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page