You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
import sqlite3
|
|
|
|
import os
|
|
|
|
from subliminal import *
|
|
|
|
|
|
|
|
# Get providers list from subliminal
|
|
|
|
providers_list = sorted(provider_manager.names())
|
|
|
|
|
|
|
|
# Open database connection
|
|
|
|
db = sqlite3.connect(os.path.join(os.path.dirname(__file__), 'data/db/bazarr.db'), timeout=30)
|
|
|
|
c = db.cursor()
|
|
|
|
|
|
|
|
# Remove unsupported providers
|
|
|
|
providers_in_db = c.execute('SELECT name FROM table_settings_providers').fetchall()
|
|
|
|
for provider_in_db in providers_in_db:
|
|
|
|
if provider_in_db[0] not in providers_list:
|
|
|
|
c.execute('DELETE FROM table_settings_providers WHERE name = ?', (provider_in_db[0], ))
|
|
|
|
|
|
|
|
# Commit changes to database table
|
|
|
|
db.commit()
|
|
|
|
|
|
|
|
# Insert providers in database table
|
|
|
|
for provider_name in providers_list:
|
|
|
|
c.execute('''INSERT OR IGNORE INTO table_settings_providers(name) VALUES(?)''', (provider_name, ))
|
|
|
|
|
|
|
|
# Commit changes to database table
|
|
|
|
db.commit()
|
|
|
|
|
|
|
|
# Close database connection
|
|
|
|
db.close()
|