Cleaned up. Added some logic incase the base url is in the URL instead of being tied to the URL_flag. Added method to check what mangas are active.
This commit is contained in:
45
main.py
45
main.py
@@ -1,15 +1,9 @@
|
|||||||
from flask_sqlalchemy import SQLAlchemy
|
from flask_sqlalchemy import SQLAlchemy
|
||||||
from flask import Flask, jsonify
|
from flask import Flask, jsonify
|
||||||
|
|
||||||
import json
|
import json
|
||||||
import time
|
|
||||||
# from manga_py1.parser import Parser
|
|
||||||
# from manga_py1.info import Info
|
|
||||||
# from Downloader import my_awesome_handler
|
|
||||||
import os
|
import os
|
||||||
|
|
||||||
# PATH = 'Manga/'
|
|
||||||
# PATH = 'smb://MediaServer._smb._tcp.local/Downloads/Manga/'
|
|
||||||
PATH = '/download'
|
PATH = '/download'
|
||||||
|
|
||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
@@ -19,6 +13,7 @@ app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://mdownload:mdownload@192
|
|||||||
|
|
||||||
db = SQLAlchemy(app)
|
db = SQLAlchemy(app)
|
||||||
|
|
||||||
|
|
||||||
class downloaderSettings(db.Model):
|
class downloaderSettings(db.Model):
|
||||||
ID = db.Column(db.Integer, primary_key=True)
|
ID = db.Column(db.Integer, primary_key=True)
|
||||||
path = db.Column(db.Text)
|
path = db.Column(db.Text)
|
||||||
@@ -43,21 +38,22 @@ class url_metadata(db.Model):
|
|||||||
|
|
||||||
@app.route('/download', methods=['GET'])
|
@app.route('/download', methods=['GET'])
|
||||||
def download():
|
def download():
|
||||||
# updated = []
|
updated = []
|
||||||
# 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).filter_by(active=1).join(url_metadata, manga.url_flag==url_metadata.flag).all()
|
result = db.session.query(manga, url_metadata).filter_by(active=1).join(url_metadata, manga.url_flag==url_metadata.flag).all()
|
||||||
|
|
||||||
for each in result:
|
for each in result:
|
||||||
execute = """manga-py """ + each.url_metadata.base_url+each.manga.url + """ -n \"""" + each.manga.name + """\" -d \"""" + PATH + """\" -z -N"""
|
book={}
|
||||||
# print("""manga-py """ + each.url_metadata.base_url+each.manga.url + """ -n \"""" + each.manga.name + """\" -d \"""" + PATH + """\" -z -N""")
|
if 'http' in each.manga.name or 'https' in each.manga.url:
|
||||||
|
execute = """manga-py """ + each.manga.url + """ -n \"""" + each.manga.name + """\" -d \"""" + PATH + """\" -z -N"""
|
||||||
|
else:
|
||||||
|
execute = """manga-py """ + each.url_metadata.base_url+each.manga.url + """ -n \"""" + each.manga.name + """\" -d \"""" + PATH + """\" -z -N"""
|
||||||
|
book['title'] = each.manga.name
|
||||||
|
book['command'] = execute
|
||||||
|
updated.append(book)
|
||||||
os.system(execute)
|
os.system(execute)
|
||||||
# updated.append(each.manga.name)
|
|
||||||
|
|
||||||
return jsonify(updated='done')
|
return jsonify(manga=updated)
|
||||||
|
|
||||||
@app.route('/upload', methods=['GET'])
|
@app.route('/upload', methods=['GET'])
|
||||||
def upload_jason():
|
def upload_jason():
|
||||||
@@ -89,5 +85,22 @@ def upload_jason():
|
|||||||
db.session.commit()
|
db.session.commit()
|
||||||
return jsonify(uploaded='done')
|
return jsonify(uploaded='done')
|
||||||
|
|
||||||
|
|
||||||
|
@app.route('/active', methods=['GET'])
|
||||||
|
def active():
|
||||||
|
activbooks=[]
|
||||||
|
|
||||||
|
result = manga.query.filter_by(active=1).all()
|
||||||
|
|
||||||
|
for each in result:
|
||||||
|
book={}
|
||||||
|
book['id'] = each.manga_id
|
||||||
|
book['title'] = each.name
|
||||||
|
book['url'] = each.url
|
||||||
|
book['url_flag'] = each.url_flag
|
||||||
|
activbooks.append(book)
|
||||||
|
|
||||||
|
return jsonify(active=activbooks)
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
app.run(host='0.0.0.0', debug=True)
|
app.run(host='0.0.0.0', debug=True)
|
||||||
|
|||||||
Reference in New Issue
Block a user