Skip to main content

Python interface to libarchive

Project description

https://travis-ci.org/Changaco/python-libarchive-c.svg

A Python interface to libarchive. It uses the standard ctypes module to dynamically load and access the C library.

Installation

pip install libarchive-c

Compatibility

python-libarchive-c is currently tested with python 2.7, 3.3, 3.4, and 3.5.

If you find an incompatibility with older versions you can send us a small patch, but we won’t accept big changes.

Usage

Import:

import libarchive

To extract an archive to the current directory:

libarchive.extract_file('test.zip')

extract_memory extracts from a buffer instead, and extract_fd extracts from a file descriptor.

To read an archive:

with libarchive.file_reader('test.7z') as archive:
    for entry in archive:
        for block in entry.get_blocks():
            ...

memory_reader reads from a memory buffer instead, and fd_reader reads from a file descriptor.

To create an archive:

with libarchive.file_writer('test.tar.gz', 'ustar', 'gzip') as archive:
    archive.add_files('libarchive/', 'README.rst')

memory_writer writes to a memory buffer instead, fd_writer writes to a file descriptor, and custom_writer sends the data to a callback function.

You can also find more thorough examples in the tests/ directory.

License

CC0 Public Domain Dedication

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

libarchive-c-2.6.tar.gz (42.1 kB view details)

Uploaded Source

Built Distribution

libarchive_c-2.6-py2.py3-none-any.whl (10.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file libarchive-c-2.6.tar.gz.

File metadata

  • Download URL: libarchive-c-2.6.tar.gz
  • Upload date:
  • Size: 42.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for libarchive-c-2.6.tar.gz
Algorithm Hash digest
SHA256 2ac3aed19b3125bec143352e2af8379715949fae0d9b16b8945aa107aec539eb
MD5 f2e8cf582702b14e7e083c36eda20850
BLAKE2b-256 82ed527c8525208b0b3a469857f1dec5725d3513b0e4f0f9d9690ef22bb25edb

See more details on using hashes here.

File details

Details for the file libarchive_c-2.6-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for libarchive_c-2.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 afa5bb7a2ddef2046d705264050e2466e89f7b8c8a681a5ed56256aa6e8b2988
MD5 6bf758cdecaf90dc39e39917c39b53c8
BLAKE2b-256 1d4df65954fbb12826a1f2baea385bfb51994baa3727834935bfa69db527bb5a

See more details on using hashes here.

Supported by

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