Example #1
0
# -*- coding: utf-8 -*-

from flask import (Flask, request, render_template, session)
from flask_uploads import (UploadSet, configure_uploads, IMAGES, UploadNotAllowed)
from predict import (prediction_init, analysis, P_SUCCESS, P_NOTFOUND, P_UNDETECTED)
from cluster import get_cluster_images
import json
import os
import datetime

app = Flask(__name__)

uploaded_images = UploadSet('images', default_dest=lambda app: app.instance_path)
configure_uploads(app, uploaded_images)

def dump_response(cluster, sample_images, skin_color, hair_color, ratio,
                  contour, colors, clothes):
    return json.dumps({'cluster': cluster,
                       'sample_images': sample_images,
                       'skin_color': skin_color,
                       'hair_color': hair_color,
                       'ratio': ratio,
                       'contour': contour,
                       'colors': colors,
                       'clothes': clothes})

@app.before_request
def make_session_permanent():
    session.modified = True

@app.route('/')
Example #2
0
from flask_wtf import FlaskForm
from flask_uploads import UploadSet, IMAGES
from wtforms import StringField, PasswordField, SubmitField, BooleanField, SelectField
from wtforms.validators import DataRequired, Length, Email, EqualTo, ValidationError
from webpage.models import User
from flask_wtf.file import FileField, FileAllowed, FileRequired
from werkzeug.utils import secure_filename
from werkzeug.datastructures import FileStorage

images = UploadSet('images', IMAGES)
state_addbrev = [('NA', 'None'), ('NA', 'Indian')]


class RegistrationForm(FlaskForm):
    username = StringField('Username',
                           validators=[DataRequired(),
                                       Length(min=2, max=20)])
    email = StringField('Email', validators=[DataRequired(), Email()])
    password = PasswordField('Password', validators=[DataRequired()])
    confirm_password = PasswordField(
        'Confirm Password', validators=[DataRequired(),
                                        EqualTo('password')])
    submit = SubmitField('Sign Up')

    def validate_username(self, username):
        user = User.query.filter_by(username=username.data).first()
        if user:
            raise ValidationError(
                'That username is taken. Please choose a different one.')

    def validate_email(self, email):
Example #3
0
from flask_uploads import UploadSet, configure_uploads

from common import config
from src.definitions import INPUT_APK_DIR

app = Flask(__name__)

app.config['SQLALCHEMY_DATABASE_URI'] = config.MYSQL_URL
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db = SQLAlchemy(app)

app.secret_key = os.urandom(24)
login_manager = LoginManager(app)

app.config['UPLOADED_APKS_DEST'] = INPUT_APK_DIR
apks = UploadSet('apks', ('apk',))
configure_uploads(app, (apks,))

app.config['CELERY_BROKER_URL'] = config.RABBITMQ_URL
app.config['CELERY_ROUTES'] = {
    'static_analysis_task': {'queue': 'static_queue'},
    'dynamic_analysis_task': {'queue': 'dynamic_queue'}}
app.config['CELERYD_PREFETCH_MULTIPLIER'] = 1
app.config['CELERY_ACKS_LATE'] = True



gevent.monkey.patch_all()
socketio = SocketIO(app, message_queue=config.RABBITMQ_URL)

Example #4
0
def create():
    con = db.connect()
    cursor = con.cursor(db.getDictCursor())
    cursor.execute("SELECT * FROM categories")
    categories = cursor.fetchall()

    cursor.execute("SELECT * FROM types")
    types = cursor.fetchall()

    form = ProductForm(request.form, csrf_enabled=False)
    if request.method == 'POST' and form.validate_on_submit():
        sku = request.form['sku'] or 'NULL'
        name = request.form['name'] or 'NULL'
        description = request.form['description'] or 'NULL'
        category_id = request.form['category_id']
        type_id = request.form['type_id']
        normal_price = request.form['normal_price'] or 0
        point = request.form['point'] or 0
        weight = request.form['weight'] or 0
        extra_fee = request.form['extra_fee'] or 0
        created_by = session['user_id'] or 'NULL'
        medias = request.files.getlist("medias[]")
        is_disabled = 'is_disabled' in request.form
        file_url = ""
        sizes = ["S", "M", "L", "XL", "XXL"]
        type = "image"

        if is_disabled == True:
            is_disabled = 1
        else:
            is_disabled = 0

        photos = UploadSet('photos', IMAGES)
        configure_uploads(app, photos)

        con = db.connect()
        cursor = con.cursor(db.getDictCursor())
        try:
            cursor.execute(
                "INSERT INTO \
                            products( \
                                category_id, type_id, sku, name,\
                                description, normal_price, point, weight, extra_fee, \
                                is_disabled, created_by \
                            ) VALUES(%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
                (category_id, type_id, sku, name, description, normal_price,
                 point, weight, extra_fee, is_disabled, created_by))
            product_id = cursor.lastrowid

            for size in sizes:
                cursor.execute(
                    "INSERT INTO product_sizes(product_id, size) VALUES(%s, %s)",
                    (product_id, size))

            for i, media in enumerate(medias):
                sorting = str(request.form['sorting_' + str(i + 1)])
                if allowed_file(media.filename):
                    filename = photos.save(media)
                    path = photos.url(filename)
                    cursor.execute(
                        "INSERT INTO product_media(product_id, path, sorting, type) VALUES(%s, %s, %s, %s)",
                        (product_id, path, sorting, type))

            con.commit()
            flash('Operation success')
            return redirect(url_for('product.create'))
        except cursor.InternalError as e:
            code, message = e.args
            con.rollback()
            flash(message)
            return redirect(url_for('product.create'))
        finally:
            con.close()

    return render_template('back/product/create.html',
                           form=form,
                           categories=categories,
                           types=types)
Example #5
0
import uuid
import smtplib
import psycopg2
import psycopg2.extras
from lib.config import *
from flask import Flask, render_template, session, request, redirect, url_for, current_app
from flask_uploads import UploadSet, configure_uploads
from werkzeug.utils import secure_filename
import flask_login
#from pdfjinja import PdfJinja

UPLOAD_FOLDER = "/home/danieladamsumw/CSVFiles"
ALLOWED_EXTENSIONS = set(['csv'])

UPLOADS_DEFAULT_DEST = "/home/danieladamsumw/CSVFiles"
files = UploadSet('files', ("csv"))

#pdfjinja = PdfJinja('form.pdf', current_app.jinja_env)

app = Flask(__name__)
app.secret_key = os.urandom(24).encode('hex')
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER
app.config['UPLOADS_DEFAULT_DEST'] = UPLOADS_DEFAULT_DEST

configure_uploads(app, files)

from lib.config import *
from lib import postgresql_data as pg

#Global variables passed by the server to html pages
logged = ''
Example #6
0
mail=Mail()
moment = Moment()
rd = FlaskRedis()
babel = Babel()
cache = Cache(config={
    'CACHE_TYPE': 'redis',
    'CACHE_REDIS_HOST': '127.0.0.1',
    'CACHE_REDIS_PORT': 6379,
    'CACHE_REDIS_DB': 2
})

login_manager = LoginManager()
login_manager.session_protection = 'strong'
login_manager.login_view = 'auth.login'

videos = UploadSet('videos', ('mp4', 'flv', 'avi', 'wmv', 'mov', 'webm', 'mpeg4', 'ts', 'mpg', 'rm', 'rmvb', 'mkv'))
images = UploadSet('images', IMAGES)

def create_app(configname):
    app = Flask(__name__)
    app.config.from_object(config[configname])
    db.init_app(app)
    login_manager.init_app(app)
    mail.init_app(app)
    moment.init_app(app)
    rd.init_app(app)
    from app.admin_blueprint import f_admin
    f_admin.init_app(app)
    babel.init_app(app)
    cache.init_app(app)
Example #7
0
from redis import Redis
import rq

# class MySQLAlchemy(SQLAlchemy):
#     def create_session(self, options):
#         options['autoflush'] = False
#         return SignallingSession(self, **options)

app = Flask(__name__)
app.config.from_object(Config)
login = LoginManager(app)
db = SQLAlchemy(app)
migrate = Migrate(app=app, db=db)
bootstrap = Bootstrap(app)
login.login_view = 'login'
text = UploadSet("downloads", TEXT)
configure_uploads(app, text)
moment = Moment(app)
babel = Babel(app)
redis = Redis.from_url(app.config['REDIS_URL'])
app.task_queue = rq.Queue('lightreader-tasks', connection=redis)

from app import models, routes

import create_db


@babel.localeselector
def get_locale():
    return request.accept_languages.best_match(app.config['LANGUAGES'])
Example #8
0
from redis import Redis
import rq
from config import Config
import flask_excel as excel
from flask_uploads import UploadSet, IMAGES, configure_uploads

db = SQLAlchemy()
migrate = Migrate()
login = LoginManager()
login.login_view = 'auth.login'
login.login_message = _l('Please log in to access this page.')
mail = Mail()
bootstrap = Bootstrap()
moment = Moment()
babel = Babel()
documents = UploadSet('documents')


def create_app(config_class=Config):
    app = Flask(__name__)
    app.config.from_object(config_class)

    db.init_app(app)
    migrate.init_app(app, db)
    login.init_app(app)
    mail.init_app(app)
    bootstrap.init_app(app)
    moment.init_app(app)
    babel.init_app(app)
    excel.init_excel(app)
    configure_uploads(app, documents)
Example #9
0
import os
import re
from werkzeug.datastructures import FileStorage
from typing import Union

from flask_uploads import UploadSet, IMAGES

IMAGE_SET = UploadSet("images", IMAGES)  # set name and allowed extentions


def save_image(image: FileStorage,
               folder: str = None,
               name: str = None) -> str:
    """Takes FileStorage and saves it to a folder"""
    return IMAGE_SET.save(image, folder, name)


def get_path(filename: str = None, folder: str = None) -> str:
    return IMAGE_SET.path(filename, folder)


def find_image_any_format(filename: str, folder: str) -> Union[str, None]:
    for _format in IMAGES:
        image = f"{filename}.{_format}"
        image_path = IMAGE_SET.path(filename=image, folder=folder)
        if os.path.isfile(image_path):
            return image_path
    return None


def _retrieve_filename(file: Union[str, FileStorage]) -> str:
Example #10
0
from flask import Flask, render_template, request
from flask_uploads import UploadSet, configure_uploads, IMAGES, UploadNotAllowed, TEXT

app = Flask(__name__)

photos = UploadSet('photos', IMAGES + TEXT + ('py', 'pyc', 'cpp'))
docs = UploadSet('docs', TEXT)

app.config['UPLOADED_PHOTOS_DEST'] = 'pictures'
app.config['UPLOADED_PHOTOS_ALLOW'] = ['txt', 'py']
# app.config['UPLOADED_PHOTOS_DENY'] = ['png']
app.config['UPLOADS_DEFAULT_DEST'] = 'other'

configure_uploads(app, (photos, docs))


@app.route('/upload', methods=['GET', 'POST'])
def upload():

    if request.method == 'POST' and 'thefile' in request.files:
        try:
            doc_filename = docs.save(request.files['thefile'])
            return '<h1>' + docs.url(doc_filename) + '</h1>'
        except UploadNotAllowed:
            return '<h1> File is not allowed </h1>'
    else:
        return render_template('upload.html')


if __name__ == '__main__':
    app.run(debug=True)
Example #11
0
from flask import Flask
from flask_bootstrap import Bootstrap
from flask_mail import Mail
from flask_moment import Moment
from flask_sqlalchemy import SQLAlchemy
from config import config
from flask_login import LoginManager
from flask_uploads import UploadSet, IMAGES, configure_uploads, patch_request_class, ALL
from flask_pagedown import PageDown

bootstrap = Bootstrap()
mail = Mail()
moment = Moment()
db = SQLAlchemy()
login_manager = LoginManager()
avatar = UploadSet('avatar', IMAGES)
files = UploadSet('files', ALL)
pictures = UploadSet('pictures', IMAGES)
page_down = PageDown()

login_manager.login_view = 'auth.login'


def create_app(config_name):
    app = Flask(__name__)
    # config[config_name] : config.py文件中定义的字典config
    app.config.from_object(config[config_name])

    config[config_name].init_app(app)
    bootstrap.init_app(app)
    mail.init_app(app)
Example #12
0
    logger = logging.getLogger('sqlalchemy.engine')
    logger.setLevel(logging.INFO)
    logger.addHandler(logging.StreamHandler())

if app.config.get('DATABASE_LOG_QUERIES', False):
    configure_db_logger()


signals = Namespace()
calculation_finished = signals.signal('calculation-finished')

db = SQLAlchemy(app)
migrate = Migrate(app, db)
ma = Marshmallow(app)

resultfiles = UploadSet('results', extensions=ALL_EXTENSIONS)
configure_uploads(app, (resultfiles,))

# initialize Flask-Caching
cache = Cache(app)


# initialize Celery
def setup_celery():
    # we need pickle support to serialize exceptions from
    # tasks, otherwise we would need a catch-all handler in them.
    app.config['CELERY_ACCEPT_CONTENT'] = ['pickle', 'json']

    capp = Celery(app.import_name,
                  backend=app.config['CELERY_BACKEND'],
                  broker=app.config['CELERY_BROKER_URL'])
Example #13
0
# from flask_markdown import Markdown
import os
import os.path as op

from flask_admin.contrib import fileadmin
from admin.views import CustomView

bootstrap = Bootstrap()
mail = Mail()
moment = Moment()
db = SQLAlchemy()
pagedown = PageDown()

# flask_admin = Admin()

photos = UploadSet('photos', ALL)  # 创建set

login_manager = LoginManager()
login_manager.session_protection = 'strong'
login_manager.login_view = 'auth.login'


def create_app(config_name):
    app = Flask(__name__)
    app.config.from_object(config[config_name])
    config[config_name].init_app(app)

    bootstrap.init_app(app)
    mail.init_app(app)
    moment.init_app(app)
    db.init_app(app)
Example #14
0
from flask import jsonify, request, abort
from flask_restful import Resource
from flask_uploads import UploadSet

from .celery_proj.tasks import transfer_data
from .schemes.upload_scheme import CsvFileUploadSchema
from .services.services_senders import SessionService

csv_uploader = UploadSet('CsvUploader')
CHUNK_SIZE = 50


class UploadCsv(Resource):
    sessions_service = SessionService()

    def post(self):
        filename, project_id, session_id = self._validate_request(request)
        # self._validate_session(session_id)
        transfer_data.delay(project_id, CHUNK_SIZE, filename, "parser1")
        return jsonify(dict(result='success'))

    def _validate_session(self, session_id):
        response = self.sessions_service.get(session_id)
        if response.status_code != 200:
            abort(300, {"message": "unauthorized access"})

    @staticmethod
    def _validate_request(request_):
        schema = CsvFileUploadSchema().load(request_)
        if schema.errors:
            abort(400, {'message': schema.errors["file"]})
Example #15
0
import os

from flask import Flask, render_template, request
from flask_uploads import DOCUMENTS, IMAGES, UploadSet, configure_uploads

app = Flask(__name__)
files = UploadSet('files')
# 上传的配置
app.config['UPLOADED_FILES_DEST'] = os.path.join(os.path.dirname(
    os.path.abspath(__file__)), "data")  # 配置文件保存的目录,本参数必须设置;
app.config['UPLOADED_FILES_ALLOW'] = [
    DOCUMENTS, IMAGES, 'sav']  # 配置允许的扩展名,其他的都是不允许
app.config['UPLOADED_FILES_DENY'] = ['html']  # 配置不允许的扩展名

configure_uploads(app, files)


@app.route('/', methods=['GET'])
def hello_world():
    return render_template('main.html')


@app.route('/upload', methods=['GET', 'POST'])
def upload():
    if request.method == 'POST':
        try:
            # 将文件保存到指定位置
            files.save(request.files['file'])
            return render_template('main.html', info='上传成功')
        except Exception:
            return render_template('main.html', info='上传失败,不支持该类型文件')
Example #16
0
File: app.py Project: foamliu/Gaze
from flask import Flask
from flask_uploads import UploadSet, ALL, configure_uploads
from settings import *
from datetime import timedelta


app = Flask(__name__)

# configure debug
# app.debug = DEBUG

# configure upload set
app.config['UPLOADED_PACKAGE_DEST'] = UPLOAD_FOLDER
app.config['SEND_FILE_MAX_AGE_DEFAULT'] = timedelta(seconds=1)

packages = UploadSet('PACKAGE', extensions="gaz")
configure_uploads(app, packages)


# import router view
from router import *
if __name__ == '__main__':
    app.run(port=5001, threaded=True, debug=True, host=('0.0.0.0'))
# app.config.from_object(Config)
# app.upload_set_config()

file_url = "/home/CitizenScience/file"
file_dir = "image"

real_file_url = os.path.join(file_url, file_dir)

from flask import Blueprint, request
from flask_uploads import UploadSet, IMAGES, ARCHIVES
from io import BytesIO
import datetime
import random


profile = UploadSet("profile", IMAGES)
photo = UploadSet("photo", IMAGES)
feedback = UploadSet("feedback", IMAGES)
proofphoto = UploadSet("proofphoto", IMAGES)
dataimage = UploadSet("dataimage", IMAGES)
datazip = UploadSet("datazip", ARCHIVES)



'''
filename 是不带文件后缀的名字
path 是文件完整路径(包括文件名)
'''
def compress_image(filename, path):
    new_filename = filename+"_cmprs.jpg"
Example #18
0
from flask import Blueprint, render_template, request, redirect, url_for, flash, current_app
from flask_babel import gettext
from flask_security import login_required, current_user
from flask_uploads import UploadSet
import os

from forms import AccessoryAddForm, AccessoryEditForm
from models import db, Accessory
from utils import IMAGES, get_hashed_filename

bp_accessories = Blueprint("bp_accessories", __name__)

pictures = UploadSet("pictures", IMAGES)


@bp_accessories.route("/gear/accessory/add", methods=["GET", "POST"])
@login_required
def new():
    pcfg = {"title": gettext("Add Accessory")}

    form = AccessoryAddForm()
    if form.validate_on_submit():
        accessory = Accessory()
        accessory.state = form.state.data
        accessory.state_notes = form.state_notes.data
        accessory.manufacturer = form.manufacturer.data
        accessory.model = form.model.data
        accessory.model_notes = form.model_notes.data
        accessory.description = form.description.data
        accessory.serial = form.serial.data
        accessory.mount = form.mount.data
Example #19
0
from flask import Flask
from flask_bootstrap import Bootstrap
from config import config_options
from flask_sqlalchemy import SQLAlchemy
from flask_login import LoginManager
from flask_uploads import UploadSet, configure_uploads, AUDIO

# Instances of flask extensions
login_manager = LoginManager()
login_manager.session_protection = 'strong'
login_manager.login_view = 'auth.login'
bootstrap = Bootstrap()
db = SQLAlchemy()
audios = UploadSet('audios', AUDIO)


def create_app(config_name):
    '''
    Function that takes configuration setting key as an argument

    Args:
        config_name : name of the configuration to be used
    '''

    # Initialising application
    app = Flask(__name__)

    # Creating the app configurations
    app.config.from_object(config_options[config_name])

    # Configure UploadSet
Example #20
0
def map_key():
    sc = SC()
    return json.dumps(sc.map_key)


@app.errorhandler(404)
def page_not_found(error):
    return render_template('index.html')


############################# Upload Setup ############################
app.config['UPLOADED_XMLFILES_DEST'] = get_tmp_dir()
app.config['UPLOADED_IMAGEFILES_DEST'] = os.path.join(sc_dir(), STATIC_DIR)
app.config['EARTHQUAKES'] = get_data_dir()
app.config['MESSAGES'] = {}
xml_files = UploadSet('xmlfiles', ('xml', ))
image_files = UploadSet('imagefiles',
                        IMAGES,
                        default_dest=app.config['UPLOADED_IMAGEFILES_DEST'])
configure_uploads(app, (xml_files, image_files))
ui = UI()


def get_file_type(file_name):
    ext = file_name.split('.')[-1]
    if ext in ['jpg', 'jpeg', 'png', 'bmp']:
        return 'image'
    elif ext in ['xml']:
        return 'xml'

Example #21
0
def update(id):
    data = get_data(id)
    sizes = []

    con = db.connect()
    cursor = con.cursor(db.getDictCursor())
    cursor.execute("SELECT * FROM categories")
    categories = cursor.fetchall()

    cursor.execute("SELECT * FROM types")
    types = cursor.fetchall()

    cursor.execute("SELECT * FROM product_sizes WHERE product_id=%s", (id))
    product_sizes = cursor.fetchall()
    for ps in product_sizes:
        sizes.append(ps['size'])

    cursor.execute("SELECT * FROM product_media WHERE product_id=%s", (id))
    product_media = cursor.fetchall()

    form = ProductForm(obj=data, csrf_enabled=False)
    if request.method == 'POST' and form.validate_on_submit():
        sku = request.form['sku'] or 'NULL'
        name = request.form['name'] or 'NULL'
        description = request.form['description'] or 'NULL'
        category_id = request.form['category_id']
        type_id = request.form['type_id']
        normal_price = request.form['normal_price'] or 0
        point = request.form['point'] or 0
        weight = request.form['weight'] or 0
        extra_fee = request.form['extra_fee'] or 0
        updated_by = session['user_id'] or 'NULL'
        medias = request.files.getlist("medias[]")
        post_sizes = request.form.getlist("sizes[]")
        is_disabled = 'is_disabled' in request.form
        file_url = ""
        type = "image"

        if is_disabled == True:
            is_disabled = 1
        else:
            is_disabled = 0

        photos = UploadSet('photos', IMAGES)
        configure_uploads(app, photos)

        con = db.connect()
        cursor = con.cursor(db.getDictCursor())
        try:
            cursor.execute(
                "UPDATE \
                            products SET category_id=%s, type_id=%s, sku=%s, \
                            name=%s, description=%s, normal_price=%s, point=%s, \
                            weight=%s, extra_fee=%s, is_disabled=%s, updated_by=%s \
                            WHERE id=%s",
                (category_id, type_id, sku, name, description, normal_price,
                 point, weight, extra_fee, is_disabled, updated_by, id))

            cursor.execute("DELETE FROM product_sizes WHERE product_id=%s",
                           (id))
            for ps in post_sizes:
                cursor.execute(
                    "INSERT INTO product_sizes(product_id, size) VALUES(%s, %s)",
                    (id, ps))

            for i, media in enumerate(medias):
                sorting = str(request.form['sorting_' + str(i + 1)])
                media_id = str(request.form['id_' + str(i + 1)])

                if allowed_file(media.filename):
                    filename = photos.save(media)
                    path = photos.url(filename)
                    if media_id == "":
                        cursor.execute(
                            "INSERT INTO product_media(product_id, path, sorting, type) VALUES(%s, %s, %s, %s)",
                            (id, path, sorting, type))
                    else:
                        cursor.execute(
                            "UPDATE product_media SET path=%s WHERE id=%s",
                            (path, media_id))
            con.commit()
            flash('Operation success')
            return redirect(url_for('product.update', id=id))
        except cursor.InternalError as e:
            code, message = e.args
            con.rollback()
            flash(message)
            return redirect(url_for('product.update', id=id))
        finally:
            con.close()

    return render_template('back/product/update.html',
                           form=form,
                           data=data,
                           categories=categories,
                           sizes=sizes,
                           types=types,
                           product_sizes=product_sizes,
                           product_media=product_media)
Example #22
0
from werkzeug.security import generate_password_hash
import os

import logging
from logging.handlers import SMTPHandler

app = Flask(__name__)
#app = Flask("Main")
app.config.from_object(Config)
bootstrap = Bootstrap(app)
db = SQLAlchemy(app)
excel.init_excel(app)
login = LoginManager(app)
login.login_view = 'login'
# Configure the image uploading via Flask-Uploads
excel_format = UploadSet('files', extensions=('xls', 'xlsx', 'csv'))
configure_uploads(app, excel_format)

if app.config['VANTAGE_UPLOAD_FOLDER']:
    folders = [
        a for a in app.config['VANTAGE_UPLOAD_FOLDER'].split("/")
        if (a != "" and a != ".")
    ]
    for i, folder in enumerate(folders):
        folder = "/".join(folders[:i + 1])  # WE Want the current one as well.
        if os.path.isdir(folder) == False:
            os.mkdir(folder)

from app import routes, errors

if not app.debug:
Example #23
0
import numpy as np

from sklearn import model_selection
from sklearn.tree import DecisionTreeClassifier
from sklearn.linear_model import LogisticRegression
from sklearn.neighbors import KNeighborsClassifier
from sklearn.naive_bayes import GaussianNB
from sklearn.svm import SVC
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis

from sklearn.feature_extraction.text import CountVectorizer
from sklearn.feature_extraction.text import TfidfVectorizer

app = Flask(__name__)

files = UploadSet('files', ALL)
app.config['UPLOADED_FILES_DEST'] = 'upload'
configure_uploads(app, files)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///upload/filestorage.db'

db = SQLAlchemy(app)


@app.route('/')
def index():
    return render_template('index.html')


@app.route('/upload', methods=['GET', 'POST'])
def datauploads():
    if request.method == 'POST' and 'video' in request.files:
Example #24
0
from flask import Blueprint
from flask_uploads import UploadSet, ARCHIVES, configure_uploads

quiz_archive = UploadSet('quizzes', extensions=('zip'))
video_file = UploadSet('videos', extensions=('mp4', 'webm'))
lecture_file = UploadSet('lectures', extensions=('pdf', 'pptx', 'ppt'))
root = ''

repo = Blueprint('repo', __name__, url_prefix='/repo')

from . import views


def configure_up(app):
    configure_uploads(app, (quiz_archive, video_file, lecture_file))
    root = app.instance_path
    print(app.instance_path)
Example #25
0
from wtforms.validators import InputRequired, Required
from flask_uploads import configure_uploads, UploadSet, patch_request_class
import os
import score

curr_path = os.path.abspath(os.path.dirname(__file__))

if not os.path.exists(os.path.join(curr_path, 'temp/')):
    os.makedirs(os.path.join(curr_path, 'temp/'))

app = Flask(__name__)
app.secret_key = 'development key'
app.config['UPLOADED_RESUME_DEST'] = os.path.join(curr_path, 'temp/')

DOCUMENTS = ('txt', 'pdf', 'docx', 'doc')
resumes = UploadSet('resume', DOCUMENTS)
configure_uploads(app, resumes)
patch_request_class(app)


class MyForm(FlaskForm):
    resume = FileField('resume',
                       validators=[
                           FileAllowed(
                               resumes,
                               "Only PDF, TXT, DOC, DOCX Files Allowed"),
                           Required("Resume is Required")
                       ])
    description = TextAreaField(
        'description',
        validators=[InputRequired("Job Description is required")])
Example #26
0
from flask import Flask, render_template, url_for
from flask_wtf import FlaskForm
from wtforms import FileField
from flask_uploads import configure_uploads, IMAGES, UploadSet
import os
import numpy as np
import cv2

# CODE FOR APP

app = Flask(__name__, static_folder="/home/pi/Desktop/obj-detect-web/static")
app.config['SECRET_KEY'] = "clishmaclaver"
app.config['UPLOADED_IMAGES_DEST'] = "static"

images = UploadSet("images", IMAGES)
configure_uploads(app, images)


class ObjDetectForm(FlaskForm):
    image = FileField("image")


@app.route("/", methods=["GET", "POST"])
def home():
    form = ObjDetectForm()
    if form.validate_on_submit():
        filename = images.save(form.image.data)
        detected = obj_detect("/home/pi/Desktop/obj-detect-web/static/" +
                              filename)
        filename = "result_" + filename
        cv2.imwrite("/home/pi/Desktop/obj-detect-web/static/" + filename,
Example #27
0
from functools import wraps
from credentials import login_creds

ALLOWED_EXTENSIONS = set(['jpg', 'jpeg', 'heic'])



app = Flask(__name__)
app.secret_key = 'my_secret_key'

# basedir = pathlib.Path.cwd()
# alt base directory to try
basedir = pathlib.Path(__file__).parent.resolve()


photos = UploadSet('photos', IMAGES)
app.config['UPLOADED_PHOTOS_DEST'] = basedir / 'static' / 'long_term_storage' / 'uploads'
configure_uploads(app, photos)

def cookie_required(f):
    @wraps(f)
    def decorated_function(*args, **kwargs):
        if 'family' not in request.cookies:
            return redirect(url_for('home'))
        return f(*args, **kwargs)
    return decorated_function

@app.route('/')
def home():
	if 'family' in request.cookies:
		return redirect(url_for('activity_picker'))
Example #28
0
    Bootstrap(app)

    app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///' + os.path.join(
        basedir, 'data.sqlite')
    app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False

    # lokacija slika
    app.config['UPLOADS_DEFAULT_DEST'] = os.path.join(basedir, 'static/images')

    return app


app = create_app()

slike = UploadSet('pizzas', IMAGES)
configure_uploads(app, slike)
patch_request_class(app)

db = SQLAlchemy(app)

# default slika
placeholderSrc = '../static/images/pizzas/placeholder.png'


class LoginForm(FlaskForm):
    username = StringField(
        'Username',
        validators=[
            DataRequired(),
            Email(message="Username has to be in the form of email")
Example #29
0
    abort,
)
from flask_uploads import UploadSet, configure_uploads, IMAGES, patch_request_class
import datetime
import base64
from io import StringIO
from flask import current_app

import swagger_server.config as config

basedir = os.path.abspath(os.path.dirname(__file__))
ALLOWED_EXTENSIONS = set(["jpeg", "png", "gif"])

bp = Blueprint("img_bp", __name__, url_prefix="/")

uploaded_photos = UploadSet("photos")


def save_file(f):
    file_dir = os.path.join(basedir, current_app.config["UPLOAD_FOLDER"])
    content = StringIO(f.read())
    try:
        mime = Image.open(content).format.lower()
        if mime not in ALLOWED_EXTENSIONS:
            raise IOError()
        else:
            new_filename = str(uuid.uuid4()) + "." + mime
            f.save(os.path.join(file_dir, new_filename))
    except IOError:
        print("error")
Example #30
0
from flask import Flask, render_template
from flask_wtf import FlaskForm
from wtforms import FileField
from flask_uploads import patch_request_class, configure_uploads, UploadSet, IMAGES, DATA, TEXT, ARCHIVES
## pip install Flask-Reuploaded

app = Flask(__name__)

app.config['SECRET_KEY'] = 'thisisasecret'
patch_request_class(app, 25 * 1024 * 1024)  # (n * 1024 * 1024) bytes
app.config['UPLOADED_UPLOADS_DEST'] = 'uploads/'

uploads = UploadSet('uploads', IMAGES + DATA + TEXT + ARCHIVES)
configure_uploads(app, uploads)


class MyForm(FlaskForm):
    image = FileField('image')


@app.route('/', methods=['GET', 'POST'])
def index():
    form = MyForm()
    if form.validate_on_submit():
        filename = uploads.save(form.image.data)
        return '<h1>' + uploads.url(filename) + '</h1>'

    return render_template('index.html', form=form)


if __name__ == '__main__':