i am new all about peewee and i am trying to connect and query my DB using peewee library.
currently i have an error in the following line inside class Meta:
database = myDB
i am nut sure i should i pass the parameter to this class.
this is the full code:
import argparse
import traceback
import peewee as pw
from logHandler import logBuilder
# creating error log for android catchapp
log_creator = logBuilder()
error_log = log_creator.setup_log('stripper_logger', 'stripper.log')
def main():
try:
args = argument_parser()
myDB = pw.MySQLDatabase(args.db, host=args.host, user=args.user, passwd=args.password,charset="utf8mb4")
myDB.connect()
print str(Browsing.table_exists())
if not Browsing.table_exists():
myDB.create_table(Browsing)
for rec in Browsing.select():
print rec.record_hash
except Exception as e:
print traceback.print_exc()
print e
error_log.error(traceback.format_exc())
error_log.error(e)
def argument_parser():
parser = argparse.ArgumentParser(description='Insert Stripper data into newetl DB.')
parser.add_argument('--host', type=str, default="localhost", help='DB host url.', metavar='', required=True)
parser.add_argument('-u', '--user', type=str, default="root", help='DB user.', metavar='', required=True)
parser.add_argument('-p', '--password', type=str, default="root", help='DB password.', metavar='', required=True)
parser.add_argument('--db', type=str, default="newetl", help='DB name.', metavar='', required=True)
#parser.add_argument('--path', nargs=1, type=str,help='full path to stripper file',metavar='', required=True)
#parser.add_argument('--target', "-t", type=str, help='wint target id.', metavar='', required=True)
return parser.parse_args()
class MySQLModel(pw.Model):
class Meta:
database = myDB
class Browsing(MySQLModel):
class Meta:
db_table = "browsing"
record_hash = pw.CharField(primary_key=True)
device_id = pw.CharField()
target_id = pw.CharField()
last_visited = pw.DateTimeField()
title = pw.CharField()
url = pw.CharField()
visit_count = pw.IntegerField()
is_bookmark = pw.SmallIntegerField()
if __name__ == '__main__':
main()
Aucun commentaire:
Enregistrer un commentaire