Skip to main content

PyPCAPKit - Comprehensive Network Packet Analysis Library

For any technical and/or maintenance information, please kindly refer to the Official Documentation.

The PyPCAPKit project is an open source Python program focus on network packet parsing and analysis, which works as a comprehensive PCAP file extraction, construction and analysis library.

The whole project supports Python 3.6 or later.

About

PyPCAPKit is a comprehensive Python-native network packet analysis library, with DictDumper as its formatted output dumper.

Unlike popular PCAP file extractors, such as Scapy, DPKT, PyShark, and etc, pcapkit is designed to be much more comprehensive, which means it is able to provide more detailed information about the packet, as well as a more Pythonic interface for users to interact with.

Module Structure

In pcapkit, all files can be described as following eight parts.

  • Interface (pcapkit.interface)

    User interface for the pcapkit library, which standardises and simplifies the usage of this library.

  • Foundation (pcapkit.foundation)

    Synthesises file I/O and protocol analysis, coordinates information exchange in all network layers, as well as provides the foundamental functions for pcapkit.

  • Protocols (pcapkit.protocols)

    Collection of all protocol family, with detailed implementation and methods.

  • Utilities (pcapkit.utilities)

    Auxiliary functions and tools for pcapkit.

  • CoreKit (pcapkit.corekit)

    Core utilities for pcapkit implementation, mainly for internal data structure and processing.

  • ToolKit (pcapkit.toolkit)

    Auxiliary tools for pcapkit to support the multiple extraction engines with a unified interface.

  • DumpKit (pcapkit.dumpkit)

    File output formatters for pcapkit.

  • Constants (pcapkit.const)

    Constant enumerations used in pcapkit for protocol family extraction and representation.

Engine Comparison

Due to the general overhead of pcapkit, its extraction procedure takes around 0.2 milliseconds per packet, which is already impressive but not enough comparing to other popular extration engines availbale on the market, given the fact that pcapkit is a comprehensive packet processing module.

Additionally, pcapkit introduced alternative extractionengines to accelerate this procedure. By now pcapkit supports Scapy, DPKT, and PyShark.

Test Environment

Operating System

macOS Ventura 13.4.1

Chip

Apple M2 Pro

Memory

16 GB

Test Results

Engine

Performance (ms per packet)

dpkt

0.010390_056723

scapy

0.091690_233567

pcapkit

0.200390_390390

pyshark

24.682185_018351

Installation

Simply run the following to install the current version from PyPI:

pip install pypcapkit

Or install the latest version from the gi repository:

git clone https://github.com/JarryShaw/PyPCAPKit.git
cd pypcapkit
pip install -e .
# and to update at any time
git pull

And since pcapkit supports various extraction engines, and extensive plug-in functions, you may want to install the optional ones:

# for DPKT only
pip install pypcapkit[DPKT]
# for Scapy only
pip install pypcapkit[Scapy]
# for PyShark only
pip install pypcapkit[PyShark]
# and to install all the optional packages
pip install pypcapkit[all]
# or to do this explicitly
pip install pypcapkit dpkt scapy pyshark

For CLI usage, you will need to install the optional packages:

pip install pypcapkit[cli]
# or explicitly...
pip install pypcapkit emoji

Metadata

Release files for pypcapkit 1.3.5.post36

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pypcapkit 1.3.5.post36
File Size Uploaded Provenance
pypcapkit-1.3.5.post36.tar.gz 669.2 kB Without provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for pypcapkit 1.3.5.post36
File
pypcapkit-1.3.5.post36-pp310-none-any.whl PyPy 3.10 none any Details
pypcapkit-1.3.5.post36-pp39-none-any.whl PyPy 3.9 none any Details
pypcapkit-1.3.5.post36-pp38-none-any.whl PyPy 3.8 none any Details
pypcapkit-1.3.5.post36-cp313-none-any.whl CPython 3.13 none any Details
pypcapkit-1.3.5.post36-cp312-none-any.whl CPython 3.12 none any Details
pypcapkit-1.3.5.post36-cp311-none-any.whl CPython 3.11 none any Details
pypcapkit-1.3.5.post36-cp39-none-any.whl CPython 3.9 none any Details

Total release size: 7.5 MB

Release files / pypcapkit-1.3.5.post36.tar.gz

Download URL pypcapkit-1.3.5.post36.tar.gz
Size 669.2 kB
Tags Source
SHA-256 checksum
How to use checksums
bb83403a18ac100decc3171a4ab4d2657b5adc8db9252382d859fdb98e953fa1
BLAKE2b-256 checksum
How to use checksums
a53fd2fed16f31191daef0fd7eda816d3a19f3f1a3283fcfde820e23ee13927c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / pypcapkit-1.3.5.post36-pp310-none-any.whl

Download URL pypcapkit-1.3.5.post36-pp310-none-any.whl
Size 973.9 kB
Tags PyPy 3.10
SHA-256 checksum
How to use checksums
86f106068a153d0dbd7c1ed481f137b5e2989d80230472ace49c02bd6a971c7b
BLAKE2b-256 checksum
How to use checksums
da709a2102bf690c455f29b38e70e32351b38799e6854160909cdd8c5a8f25ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / pypcapkit-1.3.5.post36-pp39-none-any.whl

Download URL pypcapkit-1.3.5.post36-pp39-none-any.whl
Size 973.9 kB
Tags PyPy 3.9
SHA-256 checksum
How to use checksums
a53d5d42c38b62c36c368e89f06a0b5f22f68b905bdf823f699bacff26c4ad77
BLAKE2b-256 checksum
How to use checksums
6b3655b63b1d961f1ee0f5df0378d57f0999d9bf9a097f03a3de9e334201ae29
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / pypcapkit-1.3.5.post36-pp38-none-any.whl

Download URL pypcapkit-1.3.5.post36-pp38-none-any.whl
Size 973.9 kB
Tags PyPy 3.8
SHA-256 checksum
How to use checksums
b989ca99fac9ebbb016a43eb357c6e7264521717457eb29da8906b6a4a1108a2
BLAKE2b-256 checksum
How to use checksums
c862e631b5db1bab54056f354251af8661a9bd074f50b72b64d7f13aa1874694
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / pypcapkit-1.3.5.post36-cp313-none-any.whl

Download URL pypcapkit-1.3.5.post36-cp313-none-any.whl
Size 973.9 kB
Tags CPython 3.13
SHA-256 checksum
How to use checksums
8709234e32f250eed33224996b096583f710ce57cdaea6186ac2a623c48cf1d2
BLAKE2b-256 checksum
How to use checksums
efa1f0144d78fb2ba8c9c690202b0af9b0377d472cd410fbc786f5d6ff92b095
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / pypcapkit-1.3.5.post36-cp312-none-any.whl

Download URL pypcapkit-1.3.5.post36-cp312-none-any.whl
Size 973.9 kB
Tags CPython 3.12
SHA-256 checksum
How to use checksums
512498e7d87dd5541d0b0b906a86c196a8535dccc096b7d7a77b75352bc6643b
BLAKE2b-256 checksum
How to use checksums
9b59fd8820739aff8eb1a0128a0bca6b841a76914b3ca2084ddb79de75be5366
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / pypcapkit-1.3.5.post36-cp311-none-any.whl

Download URL pypcapkit-1.3.5.post36-cp311-none-any.whl
Size 973.9 kB
Tags CPython 3.11
SHA-256 checksum
How to use checksums
ac0e27b21e9b53ffa272f12a79bf15a7a76e02059f82a30fce61a0aa29182b1b
BLAKE2b-256 checksum
How to use checksums
513763e3a231a915bd4915c4293687eb8aadacf7ecd2c1b22c79c2765bd77878
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / pypcapkit-1.3.5.post36-cp39-none-any.whl

Download URL pypcapkit-1.3.5.post36-cp39-none-any.whl
Size 973.9 kB
Tags CPython 3.9
SHA-256 checksum
How to use checksums
5486fd12e912aeda5ad2e6b3ec2f3ea379b21f2b15e3ac7b59b63c0a1cd6e71c
BLAKE2b-256 checksum
How to use checksums
f6dd8d634af8de7198598a0136945fd1efe63ad8e86b60673d0cff030625f570
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Security for pypcapkit 1.3.5.post36

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.3.5.post36 This release

8 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page