Skip to main content

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.post37

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.post37
File Size Uploaded
pypcapkit-1.3.5.post37.tar.gz 670.9 kB Details

Built distributions (wheels)

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

Total release size: 8.5 MB

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

Download URL pypcapkit-1.3.5.post37.tar.gz
Size 670.9 kB
Tags Source
SHA-256 checksum
How to use checksums
89785b5e2774ab4e72108ac93c728f73a521ad6b24badcd3432c90b98652a4ac
BLAKE2b-256 checksum
How to use checksums
a4ebd6198f31d3b960c7122a58da3bb8efcb95323b4fc98d2c71d5dc3561c725
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Download URL pypcapkit-1.3.5.post37-pp310-none-any.whl
Size 974.8 kB
Tags PyPy 3.10
SHA-256 checksum
How to use checksums
afed3f3157881dbc79a6868d14485520b66b456c7c3a2a4d0e62a470816a6107
BLAKE2b-256 checksum
How to use checksums
f4729b37366720034976fa0ef7d4237b2b279ee0808bd27b1d1d231618be35ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Download URL pypcapkit-1.3.5.post37-pp39-none-any.whl
Size 974.8 kB
Tags PyPy 3.9
SHA-256 checksum
How to use checksums
80929f4524ddbafbf7f707ee4093c71f7469047a8c9005b44dc450b30191380b
BLAKE2b-256 checksum
How to use checksums
27c2b1e1719a82e664d91e0fe2a1a532b8e6188e41a7027d22fab46d283367c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Download URL pypcapkit-1.3.5.post37-pp38-none-any.whl
Size 974.7 kB
Tags PyPy 3.8
SHA-256 checksum
How to use checksums
6935bf5d1a65302234720167d94eb576e5a360eac21cc8a35d44c7f0ed129038
BLAKE2b-256 checksum
How to use checksums
3011071ff3c075d74421a44fb2ad435d529cb1bd6d48fbd20652b4a56a8edc72
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Download URL pypcapkit-1.3.5.post37-cp313-none-any.whl
Size 974.8 kB
Tags CPython 3.13
SHA-256 checksum
How to use checksums
ef1d53d9f03c27e8021ba274f131838b381e1e47c88deaf2d297eedef28f99d7
BLAKE2b-256 checksum
How to use checksums
8622a609da953dc27117370aa9cf5a697106b8049aba499e04105e063b5f6b4a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Download URL pypcapkit-1.3.5.post37-cp312-none-any.whl
Size 974.8 kB
Tags CPython 3.12
SHA-256 checksum
How to use checksums
6438f3f425d7b2f38cb9ebd2df3216ccf9accfffc5810013949eb8b0d4107490
BLAKE2b-256 checksum
How to use checksums
b4ebb40d208f4fe1c78c142a040972d8d1364c21602f0fe70e842018818bead8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Download URL pypcapkit-1.3.5.post37-cp311-none-any.whl
Size 974.8 kB
Tags CPython 3.11
SHA-256 checksum
How to use checksums
544e1abd001e4af5b0d6985ee1e8c342bc9d2ea342d39a7f77e9a11419b294a9
BLAKE2b-256 checksum
How to use checksums
dfe8a0809f99b8e530175991fd7f1177be5f1bf2979d8877ad2f613f26d281f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pypcapkit-1.3.5.post37-cp310-none-any.whl

Download URL pypcapkit-1.3.5.post37-cp310-none-any.whl
Size 974.8 kB
Tags CPython 3.10
SHA-256 checksum
How to use checksums
11c83bbc9d0bbb74d9bd827a19173d4f06c5d030862b94664e28011c5c6fcc82
BLAKE2b-256 checksum
How to use checksums
0254b3804434304bbf31a6caf74756f55af03929a7ca94491d711b348ce8aea9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Download URL pypcapkit-1.3.5.post37-cp39-none-any.whl
Size 974.8 kB
Tags CPython 3.9
SHA-256 checksum
How to use checksums
0f5721eca317ea52e4e4b7836a1ebcb6b4ada5c0c25bfbabdf89234cbe2b7439
BLAKE2b-256 checksum
How to use checksums
d0c074500dd7cc5091efdae653fcc879bb5b46152cf894595b3fe99e1526a1b6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

1.4.1

8 release files

1.4.0

8 release files

This release

1.3.5.post37 This release

9 release files

1.3.5

8 release files

1.3.4

9 release files

1.3.3

7 release files

1.3.1

6 release files

1.3.0

7 release files

1.2.2

6 release files

1.2.1

7 release files

1.2.0

7 release files

1.1.1

7 release files

1.1.0

7 release files

1.0.3

6 release files

1.0.2

5 release files

1.0.1

2 release files

1.0.0

2 release files

0.16.2

1 release file

0.16.1

1 release file

0.16.0

1 release file

0.15.5

2 release files

0.15.4

2 release files

0.15.3

2 release files

0.15.2

2 release files

0.15.1

2 release files

0.12.9

3 release files

0.12.8

3 release files

0.12.7

3 release files

0.12.6

3 release files

0.12.5

2 release files

0.12.2

2 release files

0.12.1

2 release files

0.12.0

2 release files

0.11.3

2 release files

0.11.2

2 release files

0.10.2

2 release files

0.10.1

2 release files

0.10.0

2 release files

0.9.10

2 release files

0.9.9

2 release files

0.9.8

2 release files

0.9.7

2 release files

0.9.6

2 release files

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