mirror of https://github.com/Zelo72/rpi
2020.05.24-22:18:43
This commit is contained in:
parent
e2b82eabd1
commit
5c496f3751
|
@ -0,0 +1,63 @@
|
|||
# Python-Script: migratePiholeAdlists.py - https://github.com/Zelo72/rpi (/pihole/)
|
||||
#
|
||||
# Beschreibung: Migriert die Blocklisten-URLs aus adlists.list von Pihole 4 in die adlist
|
||||
# Tabelle der gravity DB von von Pihole 5.
|
||||
# URLs aus adlists.list werden nur hinzugefügt, wenn sie in der Tabelle
|
||||
# adlist noch nicht vorhanden sind.
|
||||
#
|
||||
# Damit die Blocklisten migriert werden, müssen die zu migrierenen URLs in
|
||||
# der Datei /etc/pihole/adlists.list gespeichert werden.
|
||||
#
|
||||
# Um z.B. die aktuellen Firebog Ticked Blocklisten nach Pihole 5 zu übernehmen,
|
||||
# könnte man folgende Befehle nutzen:
|
||||
#
|
||||
# sudo wget -O /etc/pihole/adlists.list https://v.firebog.net/hosts/lists.php?type=tick
|
||||
# sudo python3 migratePiholeAdlists.py
|
||||
# sudo pihole -g
|
||||
#
|
||||
# Aufruf: sudo python3 migratePiholeAdlists.py
|
||||
#
|
||||
# Versionshistorie:
|
||||
# Version 1.0.0 - [Zelo72] - initiale Version
|
||||
|
||||
import sys
|
||||
import sqlite3
|
||||
from pathlib import Path
|
||||
|
||||
adlists = "/etc/pihole/adlists.list"
|
||||
gravitydb = "/etc/pihole/gravity.db"
|
||||
|
||||
if not Path(adlists).exists():
|
||||
print(adlists + " nicht gefunden!")
|
||||
exit(1)
|
||||
|
||||
if not Path(gravitydb).exists():
|
||||
print(gravitydb + " nicht gefunden!")
|
||||
exit(1)
|
||||
|
||||
try:
|
||||
con = sqlite3.connect(gravitydb)
|
||||
file = open(adlists)
|
||||
cur = con.cursor()
|
||||
|
||||
for url in file:
|
||||
cur.execute(
|
||||
'select * from adlist where address = "{d}"'.format(d=str.strip(url)))
|
||||
rec = cur.fetchall()
|
||||
if len(rec) == 0:
|
||||
s = """INSERT INTO adlist (address) VALUES ('{d}')""".format(
|
||||
d=str.strip(url))
|
||||
cur.execute(s)
|
||||
con.commit()
|
||||
print("+++ " + str.strip(url) + " hinzugefügt.")
|
||||
else:
|
||||
print("=== " + str.strip(url) + " bereits vorhanden.")
|
||||
|
||||
except:
|
||||
print("Unerwarteter Fehler:", sys.exc_info()[0])
|
||||
raise
|
||||
|
||||
finally:
|
||||
file.close()
|
||||
cur.close()
|
||||
con.close()
|
Loading…
Reference in New Issue