Python script that scrapes rom sites (right now only vimm.net) to find and download ROMs
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.
 

60 lines
1.7 KiB

import sqlite3
class dbConnection:
dbname = 'Romscraper.db'
def __init__(self, dbname=None):
if dbname is not None:
self.dbname = dbname
try:
self.sqliteConnection = sqlite3.connect('Romscraper.db')
self.cursor = self.sqliteConnection.cursor()
except sqlite3.Error as error:
print("Failed to fetch data from database: ", error)
#finally:
#print("Database is initialized")
def queryDB(self, query=None, values=None, commit=None, returnsRecords=None):
if query is None:
print("This needs a query!")
return
else:
try:
if values is not None:
self.cursor.execute(query, values)
else:
self.cursor.execute(query)
except sqlite3.Error as error:
print("Failed to fetch data from database: ", error)
finally:
if commit is True:
self.sqliteConnection.commit()
if returnsRecords is True:
records = self.cursor.fetchall()
return records
def closeDB(self, commit=None):
if commit is None:
commit = False
if commit:
self.sqliteConnection.commit()
self.sqliteConnection.close()
return
def searchByName(self, table, name, fuzzymatch):
if fuzzymatch:
name = "%" + name + "%"
query = "SELECT * FROM " + table + " WHERE name LIKE ?"
else:
query = "SELECT * FROM " + table + " WHERE name = ?"
self.cursor.execute(query, [name])
records = self.cursor.fetchall()
return records