Skip to main content

Performs a Mail Merge on docx (Microsoft Office Word) files

Project description

Installation with pip:

$ pip install docx-mailmerge

Usage

Read the file.

from mailmerge import MailMerge
document = MailMerge('input.docx')

List all merge fields.

print document.get_merge_fields()

Merge fields, supplied as kwargs.

document.merge(field1='docx Mail Merge',
               field2='Can be used for merging docx documents')

Merge table rows. In your template, add a MergeField to the row you would like to designate as template. Supply the name of this MergeField as anchor parameter. The second parameter contains the rows with key-value pairs for the MergeField replacements.

document.merge_rows('col1',
                    [{'col1': 'Row 1, Column 1', 'col2': 'Row 1 Column 1'},
                     {'col1': 'Row 2, Column 1', 'col2': 'Row 2 Column 1'},
                     {'col1': 'Row 3, Column 1', 'col2': 'Row 3 Column 1'}]

Write document to file. This should be a new file, as ZipFile cannot modify existing zip files.

document.write('output.docx')

Todo / Wish List

  • Preserve formatting of the merge field, currently it defaults to the formatting of the containing text.

  • Image merging.

Contributing

  • Fork the repository on GitHub and start hacking

  • Send a pull request with your changes

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

docx-mailmerge-0.0.2.tar.gz (3.9 kB view details)

Uploaded Source

File details

Details for the file docx-mailmerge-0.0.2.tar.gz.

File metadata

File hashes

Hashes for docx-mailmerge-0.0.2.tar.gz
Algorithm Hash digest
SHA256 92010610c37307a9df3a7d0905660259de1342f34a635d42e9e32903d08abf00
MD5 f5c8b63e54caacee00d071e3094b3aac
BLAKE2b-256 f5d7e6fefbfd3766da07336b5d3c395e69bdf4a4feefa7ac6c24ed68fe7ca8da

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