Skip to main content

Mac Vendor Lookup

This library provides an easy way to get vendor information from a MAC address. It contains a local copy of the IEEE's OUI prefix list. It has an asynchronous interface using Python 3's asyncio as well as a regular synchronous interface for old-school usage.

Installation

pip install mac-vendor-lookup

Basic Usage

from mac_vendor_lookup import MacLookup

print(MacLookup().lookup("00:80:41:12:FE"))

Output:

VEB KOMBINAT ROBOTRON

Update the vendor list

The library contains a list of MAC prefixes obtained at build-time. If you need up-to-date information, you can download a fresh copy of the list directly from IEEE with MacLookup.update_vendors or AsyncMacLookup.update_vendors:

from mac_vendor_lookup import MacLookup

mac = MacLookup()
mac.update_vendors()  # <- This can take a few seconds for the download
    
def find_mac(mac_address):
    print(mac.lookup(mac_address))

Vendor list custom location or path

The library stores and looks for the list of MAC prefixes in a group predefined defaults paths. If a custom directory is required, then override the class variable cache_path of class BaseMacLookup(...) from it default location of: os.path.expanduser('~/.cache/mac-vendors.txt') to your prefered location.

from mac_vendor_lookup import MacLookup, BaseMacLookup

BaseMacLookup.cache_path = "/relative/or/absolute/path/to/the/prefered/storage/location"
mac = MacLookup()
mac.update_vendors()  # <- This can take a few seconds for the download and it will be stored in the new path
    
def find_mac(mac_address):
    print(mac.lookup(mac_address))

Async Interface

There is also an asynchronous interface available:

from mac_vendor_lookup import AsyncMacLookup

async def main():
    mac = AsyncMacLookup()
    print(await mac.lookup("98:ED:5C:FF:EE:01"))

Output:

Tesla Motors, Inc

Command line interface

This library provides a rudimentary command line interface:

$ mac_vendor_lookup 50-D3-7F-00-01-00
Yu Fly Mikly Way Science and Technology Co., Ltd.
$ python3 -m mac_vendor_lookup 00:26:12:12:FE
Space Exploration Technologies

Release files for mac-vendor-lookup 0.1.15

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

Built distribution (wheel)

Table of built distributions (wheels) for mac-vendor-lookup 0.1.15
File Interpreter ABI Platform
mac_vendor_lookup-0.1.15-py3-none-any.whl Python 3 none any Details

Release files / mac_vendor_lookup-0.1.15-py3-none-any.whl

Download URL mac_vendor_lookup-0.1.15-py3-none-any.whl
Size 414.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ad799ab7798fc0160ff9b7d76d7dfccfdd72ff75b8926d49a83064493a4a2972
BLAKE2b-256 checksum
How to use checksums
e79514d57188b5f3c8b1260c4d137e6e385fdfb58eee7b72aa44acf395e703ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.12

Release history Release notifications | RSS feed

This release

0.1.15 This release

1 release file

0.1.13

1 release file

0.1.11

1 release file

0.1.10

1 release file

0.1.9

1 release file

0.1.8

1 release file

0.1.7

2 release files

0.1.6

1 release file

0.1.5

1 release file

0.1.4

1 release file

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