]>
code.delx.au - mediapc-tools/blob - mythcleandb
9 config_xml
= mythlib
.get_config()
10 db_connection
= mythlib
.get_db_connection(config_xml
)
11 recordings_dir
= mythlib
.get_recordings_dir(config_xml
, db_connection
)
13 orphan_db_records
= list(find_orphan_db_records(db_connection
, recordings_dir
))
14 for basename
in orphan_db_records
:
16 print("Found orphan:", basename
)
18 print("Deleting orphan:", basename
)
19 delete_orphan_record(db_connection
, basename
)
21 def print_usage_exit():
22 print("Usage: %s [-f|-n]" % sys
.argv
[0])
25 def find_orphan_db_records(db_connection
, recordings_dir
):
26 with db_connection
.cursor() as cursor
:
30 WHERE progend < now() AND recgroup NOT IN ('LiveTV', 'Deleted')
34 if not is_valid_record(recordings_dir
, basename
):
37 def is_valid_record(recordings_dir
, basename
):
38 filename
= "%s/%s" % (recordings_dir
, basename
)
40 size
= os
.stat(filename
).st_size
41 except FileNotFoundError
:
46 def delete_orphan_record(db_connection
, basename
):
47 with db_connection
.cursor() as cursor
:
48 cursor
.execute("delete from recorded where basename='%s'" % basename
)
50 if __name__
== "__main__":
51 if len(sys
.argv
) != 2:
54 if sys
.argv
[1] == "-f":
56 elif sys
.argv
[1] == "-n":