100 lines
3.4 KiB
Python
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:
|
|
print("""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)
|