API for pihole
Project description
pi_hole_api
Python api module for pi-hole server (https://pi-hole.net/). Execute api calls to py-hole server from python code.
Installation
# prod version:
pip install pi-hole-api
# dev version:
pip install -i https://test.pypi.org/simple/ pi-hole-api
Examples
Create class
import pihole_api as pi
pihole = pi.Pihole("PI_URL", "PI_PSW")
where:
- PI_URL: url of pi-hole page
- PI_PSW: password of pi-hole
or using environment variables "PI_URL" and "PI_PSW" set to pi-hole url and pi-hole password respectively:
import os
from dotenv import load_dotenv
import pihole_api as pi
pihole = pi.Pihole(os.environ["PI_URL"], os.environ["PI_PSW"])
Core module
Permit:
- enable/disable protection
pihole.enable()
pihole.disable()
pihole.disable(30) # disable per 30 seconds
Dns module
Permit:
- list dns records
- add/remove A record
- add/remove CNAME record
pihole.dns("get") # print dns list
pihole.cname("get") # print cname list
# add domain to dns
pihole.dns("add", ip_address="1.1.1.1",domain="pippo.com"))
# remove domain to dns
pihole.dns("delete", ip_address="1.1.1.1",domain="pippo.com"))
# add cname from pippo.com to pluto.com
pihole.cname("add","pippo.com","pluto.com"))
# remove cname
pihole.cname("delete","pippo.com","pluto.com"))
List module
Permit:
- list/add/change/remove domains to white lists
- list/add/change/remove domains to black lists
# get white list
pihole.get_domains("white")
# add to white list
pihole.add_domain("white","pippo.it","add pippo")
# replace in white list
pihole.replace_domain("white","pippo.it","replace pippo")
# delete from white list
pihole.delete_domain("white","pippo.it","delete pippo")
# get black list
pihole.get_domains("black")
# add to black list
pihole.add_domain("black","pippo.it","add pippo")
# add change in black list
pihole.replace_domain("black","pippo.it","replace pippo")
# delete from black list
pihole.delete_domain("black","pippo.it","delete pippo")
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
pi_hole_api-0.1.5.tar.gz
(4.6 kB
view details)
Built Distribution
File details
Details for the file pi_hole_api-0.1.5.tar.gz
.
File metadata
- Download URL: pi_hole_api-0.1.5.tar.gz
- Upload date:
- Size: 4.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7dc18fa7ec20062e3329f02dade7856309d5b1ac607827b59ef5f1c2d1471818 |
|
MD5 | f03c9bdafcb5457eb817e5460476f0a2 |
|
BLAKE2b-256 | a5e99f35b678dd41dec50b8c3b1a83532b5b2fd6599db8ec8310a89de95ba5df |
File details
Details for the file pi_hole_api-0.1.5-py3-none-any.whl
.
File metadata
- Download URL: pi_hole_api-0.1.5-py3-none-any.whl
- Upload date:
- Size: 5.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 991d1fbf30d408bd61ea00a93024d4353715e9d22605da8b3692eb661c2201ad |
|
MD5 | e2327cdabff6f8706e1d88e6a9633cdb |
|
BLAKE2b-256 | 6b1525ad792d59109f2ed4f00651b5ff6430c985bfb80e1ce2f25a0142322d84 |