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.1.post18

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.1.post18
File Size Uploaded
pypcapkit-1.3.1.post18.tar.gz 670.8 kB Details

Built distributions (wheels)

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

Total release size: 8.5 MB

Release files / pypcapkit-1.3.1.post18.tar.gz

Download URL pypcapkit-1.3.1.post18.tar.gz
Size 670.8 kB
Tags Source
SHA-256 checksum
How to use checksums
f1f0d8e8f24c18e915e9ac713fa78da90b023863ed32c7d42d18df6c917b201c
BLAKE2b-256 checksum
How to use checksums
b4d46ea739eef936f440c765aa2e5d8e1f80580dff631d3eec55b0e8444e54f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.4

Release files / pypcapkit-1.3.1.post18-pp310-none-any.whl

Download URL pypcapkit-1.3.1.post18-pp310-none-any.whl
Size 975.5 kB
Tags PyPy 3.10
SHA-256 checksum
How to use checksums
cca0663b62793928bd1726b2b724502dd80983b567ffdd69ae0ab0f330e779ce
BLAKE2b-256 checksum
How to use checksums
bce69bfc685aeabc1b84021741779d672a8a291c780a38875abd0e04f29b7fa5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.4

Release files / pypcapkit-1.3.1.post18-pp39-none-any.whl

Download URL pypcapkit-1.3.1.post18-pp39-none-any.whl
Size 975.5 kB
Tags PyPy 3.9
SHA-256 checksum
How to use checksums
e8d995e18a9dbf80282cc5a4b15cc58de513c227d88dbf4ccef5552bc2825d3a
BLAKE2b-256 checksum
How to use checksums
443f027c957885fa21e57a77efba8c8d909a8160fafe52a2431ad61a2fbd7fb9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.4

Release files / pypcapkit-1.3.1.post18-pp38-none-any.whl

Download URL pypcapkit-1.3.1.post18-pp38-none-any.whl
Size 975.5 kB
Tags PyPy 3.8
SHA-256 checksum
How to use checksums
01425ce72a57574625e5af027a91364b61030b5b3bb8a22e49739deb3431dc67
BLAKE2b-256 checksum
How to use checksums
741ab09f647e60af8e4b5fda718fb8e81704a79d2b7e0e89de7777d37c5fce3f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.4

Release files / pypcapkit-1.3.1.post18-cp312-none-any.whl

Download URL pypcapkit-1.3.1.post18-cp312-none-any.whl
Size 975.5 kB
Tags CPython 3.12
SHA-256 checksum
How to use checksums
4612821adaba9a0771835fb6c0a1b100051f31d8bb4b3d60513028f45d8e95e6
BLAKE2b-256 checksum
How to use checksums
a734a4668667409ffaa209f68b6ae67f109dd562e05d8cc1fe7eedd7eea0f3d2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.4

Release files / pypcapkit-1.3.1.post18-cp311-none-any.whl

Download URL pypcapkit-1.3.1.post18-cp311-none-any.whl
Size 975.5 kB
Tags CPython 3.11
SHA-256 checksum
How to use checksums
8fddf6b6f4536b07d0a8c5cfff1ab5559b1b3a5dfa2efd0491a630a1e250a875
BLAKE2b-256 checksum
How to use checksums
614caac7e72749a90090142ef576a07beddf40b0e095314f360f4f55e93fdb04
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.4

Release files / pypcapkit-1.3.1.post18-cp310-none-any.whl

Download URL pypcapkit-1.3.1.post18-cp310-none-any.whl
Size 975.5 kB
Tags CPython 3.10
SHA-256 checksum
How to use checksums
4760f696ba5cdd17b8bd7b576b9bc3058cd556f8463a88d48ccefa89e6c73dbd
BLAKE2b-256 checksum
How to use checksums
652e1a80010488324ec6c0699b4064330896f0210b4d57c2ff684e787d4eb8ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.4

Release files / pypcapkit-1.3.1.post18-cp39-none-any.whl

Download URL pypcapkit-1.3.1.post18-cp39-none-any.whl
Size 975.5 kB
Tags CPython 3.9
SHA-256 checksum
How to use checksums
b2dfa637f097e05260cb9f4cb76c30b66608f1534790ed80c9b978319cffe0dc
BLAKE2b-256 checksum
How to use checksums
f4a22c29ba6450e61a9d0ab816922df10d7e8d822b5131831f177dba451f3b5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.4

Release files / pypcapkit-1.3.1.post18-cp38-none-any.whl

Download URL pypcapkit-1.3.1.post18-cp38-none-any.whl
Size 975.5 kB
Tags CPython 3.8
SHA-256 checksum
How to use checksums
3fcf916e274926f6b06235cd49a68f3567ff06c91e22659318887961b1e9417c
BLAKE2b-256 checksum
How to use checksums
dca2a18c60a7ad9283e2607a36e58559ab97be19ca291336c4c52b36d6458013
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.4

Release history Release notifications | RSS feed

1.4.1

8 release files

1.4.0

8 release files

1.3.5

8 release files

1.3.4

9 release files

1.3.3

7 release files

This release

1.3.1.post18 This release

9 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