42 lines
1.2 KiB
Python
Executable File
42 lines
1.2 KiB
Python
Executable File
#! /usr/bin/env python3
|
|
|
|
# Python Script zum testen, ob neue Ausschreibungen hinzugekommen sind, oder bereits vorhandene sich geändert haben (kein herunterladen, es wird im Downloadordner wkOrgConfig.downpath gesucht)
|
|
|
|
# Name und Pfad der Datenbank als Variablen
|
|
import wkOrgConfig
|
|
import wkOrgAssis
|
|
|
|
import os
|
|
import os.path
|
|
import sqlite3
|
|
|
|
# Init der Datenbankverbindung
|
|
if os.path.isfile(wkOrgConfig.db['pathname']+wkOrgConfig.db['filename']):
|
|
dbConn = sqlite3.connect(wkOrgConfig.db['pathname']+wkOrgConfig.db['filename'])
|
|
dbConn.text_factory = str
|
|
dbCur = dbConn.cursor()
|
|
else:
|
|
print ("Keine Datenbank vorhanden!")
|
|
exit(-1)
|
|
|
|
# Hole Liste der Dateinamen im downloadVerzeichnis
|
|
filenames = os.listdir(wkOrgConfig.downPath)
|
|
#print filenames
|
|
|
|
# Für jeden Dateinamen:
|
|
for filename in filenames:
|
|
# Finde alle Einträge (id, dateiname, sha256 , wkID) zu diesen Dateinamen in der downloadTabelle -> dlList
|
|
dbCur.execute('SELECT id, dateiname, sha512 , wkID FROM downloads WHERE dateiname=?', (filename, ) )
|
|
ausschr = dbCur.fetchall()
|
|
|
|
# Falls dlList leer: (heißt ausschreibung wurde noch nicht zugeordnet)
|
|
if ausschr == []:
|
|
print("Neue Auschreibung: {}".format(filename))
|
|
# Sonst:
|
|
else:
|
|
continue
|
|
|
|
# Aufräumen
|
|
dbConn.commit()
|
|
dbConn.close()
|