Files
mangaDownloader/main.py
2020-03-11 14:56:34 -04:00

100 lines
3.4 KiB
Python

from flask_sqlalchemy import SQLAlchemy
from flask import Flask
import json
import time
# from manga_py1.parser import Parser
# from manga_py1.info import Info
# from Downloader import my_awesome_handler
import os
app = Flask(__name__)
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://mdownload:mdownload@192.168.86.198:3306/Downloads'
db = SQLAlchemy(app)
class downloaderSettings(db.Model):
ID = db.Column(db.Integer, primary_key=True)
path = db.Column(db.Text)
class manga(db.Model):
manga_id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.Text)
url = db.Column(db.Text)
url_flag = db.Column(db.Text)
view_format = db.Column(db.Integer)
unknown_value = db.Column(db.Integer)
active = db.Column(db.Boolean, default=1)
class url_metadata(db.Model):
url_id = db.Column(db.Integer, primary_key=True)
source_name = db.Column(db.VARCHAR(length=10000))
flag = db.Column(db.Text)
base_url = db.Column(db.VARCHAR(length=10000))
@app.route('/download', methods=['GET'])
def download():
# db_URI = 'mysql+pymysql://mdownload:mdownload@192.168.86.198:3306/Downloads'
# query = db.select([manga.columns.url, url_metadata.columns.base_url, manga.columns.url_flag])
# result = db.session.query(manga.base_url, manga.name, manga.url, url_metadata.base_url, url_metadata.flag).join(manga.url_flag == url_metadata.flag).all()
result = db.session.query(manga, url_metadata).join(url_metadata, manga.url_flag==url_metadata.flag).all()
# PATH = 'Manga/'
# PATH = 'smb://MediaServer._smb._tcp.local/Downloads/Manga/'
PATH = '/download'
for each in result:
execute = """manga-py """ + each.url_metadata.base_url+each.manga.url + """ -n \"""" + each.manga.name + """\" -d \"""" + PATH + """\" -z -N"""
os.system(execute)
return "neat"
# def upload_jason():
# url = []
# base = []
# name = []
# y = 0
# z = 0
#
# db_URI = 'mysql+pymysql://mdownload:mdownload@192.168.86.198:3306/Downloads'
#
# engine = db.create_engine(db_URI)
# con = engine.connect()
# metadata = db.MetaData()
# manga = db.Table('manga', metadata, autoload=True, autoload_with=engine)
#
# with open("tach.json", "r") as tf:
# data = json.load(tf)
# for x in data["mangas"]:
# # Manga Name
# name.append(data["mangas"][y]["manga"][1])
# # Mange URL
# url.append(data["mangas"][y]["manga"][0])
# # Mange Base URL
# base.append(data["mangas"][y]["manga"][2])
# y=y+1
# # query = """ Delete from manga"""
# # con.execute(query)
# # query = """ Alter table manga auto_increment = 1 """
# # con.execute(query)
# for x in name:
# query = """select name from manga where name = \"""" + name[z] + """\""""
# exists = con.execute(query).fetchone()
# if exists == None or exists[0] != name[z]:
# query = """ insert into manga(name, url, url_flag, view_format, unknown_value) values (\"""" + name[z] + """\",\"""" + url[z] + """\",\"""" + str(base[z]) + """\",\"0\",\"0\")"""
# print(query)
# con.execute(query)
# else:
# continue
# z=z+1
if __name__ == "__main__":
app.run(host='0.0.0.0', debug=True)