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.5.0.tar.gz (28.2 kB view details)

Uploaded Source

Built Distribution

netdisco-2.5.0-py3-none-any.whl (46.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: netdisco-2.5.0.tar.gz
  • Upload date:
  • Size: 28.2 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.5.0.tar.gz
Algorithm Hash digest
SHA256 2ecb9830ceed5cf8f2ccc5a9bbe02ca5f6851435f5315a5402f0123311f13b37
MD5 b5d5b121831002e64833638c6fba8785
BLAKE2b-256 b95f52b156f9750bdbe29ae639f284a5b823f4c257d0fc5bb85cd18c3801b4dc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: netdisco-2.5.0-py3-none-any.whl
  • Upload date:
  • Size: 46.0 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.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2b7c30847192e22b5754766ac9b7e12f3ca4cce9b403dee003070b26f20f0400
MD5 29cd254a269990fc11780a245ed78945
BLAKE2b-256 7c34c5796e431552fb5097e8e8eacaa289036e58d1e264738f3a65066e1f85c5

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