Skip to main content

Discover devices on your local network

Project description

NetDisco

NetDisco is a Python 3 library to discover local devices and services. It allows to scan on demand or offer a service that will scan the network in the background in a set interval.

Current methods of scanning:

  • mDNS (includes Chromecast, Homekit)
  • uPnP
  • Plex Media Server using Good Day Mate protocol
  • Logitech Media Server discovery protocol
  • Daikin discovery protocol
  • Web OS discovery protocol

It is the library that powers the device discovery within Home Assistant.

We are no longer accepting PRs that implement custom discovery protocols. Only PRs that use mDNS or uPnP are supported. See this issue

Installation

Netdisco is available on PyPi. Install using pip3 install netdisco.

Example

From command-line:

python3 -m netdisco
# To see all raw data:
python3 -m netdisco dump

In your script:

from netdisco.discovery import NetworkDiscovery

netdis = NetworkDiscovery()

netdis.scan()

for dev in netdis.discover():
    print(dev, netdis.get_info(dev))

netdis.stop()

Will result in a list of discovered devices and their most important information:

DLNA ['http://192.168.1.1:8200/rootDesc.xml', 'http://192.168.1.150:32469/DeviceDescription.xml']
google_cast [('Living Room.local.', 8009)]
philips_hue ['http://192.168.1.2:80/description.xml']
belkin_wemo ['http://192.168.1.10:49153/setup.xml']

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

netdisco-2.6.0.tar.gz (28.3 kB view details)

Uploaded Source

Built Distribution

netdisco-2.6.0-py3-none-any.whl (46.4 kB view details)

Uploaded Python 3

File details

Details for the file netdisco-2.6.0.tar.gz.

File metadata

  • Download URL: netdisco-2.6.0.tar.gz
  • Upload date:
  • Size: 28.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.7.0

File hashes

Hashes for netdisco-2.6.0.tar.gz
Algorithm Hash digest
SHA256 2b3aca14a1807712a053f11fd80dc251dd821ee4899aefece515287981817762
MD5 49c35f2a9102daf9f83c7e7315361373
BLAKE2b-256 ae732a60ac3292203ac75528b1ae9a475fac6fff690e906cbc13e744701b2436

See more details on using hashes here.

File details

Details for the file netdisco-2.6.0-py3-none-any.whl.

File metadata

  • Download URL: netdisco-2.6.0-py3-none-any.whl
  • Upload date:
  • Size: 46.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.7.0

File hashes

Hashes for netdisco-2.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 802e5c95c8ae81674172ba2c78987118e95b514f5e096405dfc653f70e1c826b
MD5 1a63983c3131db300d58af44ddee7fa3
BLAKE2b-256 d4eaca49705a8ec9d65def92dd3c2ef27cce5a5b3e0ca7768fb8527af8f95f99

See more details on using hashes here.

Supported by

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