def upload(): if request.method == 'GET': return render_template('upload.html') else: # desc = request.form.get('desc') # image_file = request.files.get('image_file') # # print(image_file) # # print(type(image_file)) # # 参数:路径 文件名 # # images 1.jpg 木马文件 jpg png gig # # 验证问题 重命名问题 文件名字+日期+随机数 uuid # # image_file.save(upload_path, image_file.filename) # filename = secure_filename(image_file.filename) # image_file.save(os.path.join("images", filename)) # CombinedMultiDict 可以传入多个参数 form = UploadForm(CombinedMultiDict([request.form, request.files])) if form.validate(): # desc = request.form.get('desc') # image_file = request.files.get('image_file') desc = form.desc.data image_file = form.image_file.data filename = secure_filename(image_file.filename) image_file.save(os.path.join("images", filename)) return '文件上传成功' else: print(form.errors) return "fail"
def upload_file(): form = UploadForm() if request.method == "POST": if form.validate() == False: flash("All fields are required.") return render_template("upload.html", form=form) else: file = request.files["filename"] if file and allowed_file(file.filename): filename = secure_filename(file.filename) file.save(os.path.join(app.config["UPLOAD_FOLDER"], filename)) msg = Message(form.subject.data, sender="*****@*****.**", recipients=["*****@*****.**"]) msg.body = """ From: %s <%s> Subject: %s PeakCaller: %s SupplementalInfo: %s File Name: %s """ % ( form.name.data, form.email.data, form.subject.data, form.peakcaller.data, form.supplementalinfo.data, filename, ) mail.send(msg) return redirect(url_for("uploaded_file", filename=filename)) elif request.method == "GET": return render_template("upload.html", form=form)
def upload(): form = UploadForm() if form.validate(): if form.title.data == "": flash("Must include title") return redirect(request.referrer + "#add_form") filename = secure_filename(form.photo.data.filename) pos = filename.rfind('.') #flash(str(filename[pos + 1: ] in ALLOWED_EXTENSIONS)) if pos < 0 or (pos >= 0 and (not filename[pos + 1 : ] in ALLOWED_EXTENSIONS)): flash("Error: Invalid extension, pleases use jpg or png") return redirect(request.referrer + '#add_form') form.photo.file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename)) pin = Pin(title=form.title.data, img=filename, dscrp=form.dscrp.data, orig=True, date=datetime.now(), pinner=current_user.to_dbref(), repins=0, like_count=0) pin.save() flash("Image has been uploaded.") else: flash("Image upload error.") return redirect(request.referrer + "#add_form" or url_for("index"))
def index(): subtitle = "Transfer books to Internet Archive" form = UploadForm(request.form) if request.method == "POST": if form.validate(): book_id = html_escape(form.book_id.data) email = html_escape(form.email.data) if form.email.data not in (None, "") else "" book = bridge.fields(form.library_id.data, book_id, email) book_id = book.Id if book.Id not in (None, "") else book_id redis = redis_py.Redis() redis_key3 = keys.redis_key3 book_key = "%s:%s:%s" % (redis_key3, form.library_id.data, book_id) library_url_key = book_key + ":library_url" redis_py.set(library_url_key, form.book_id.data, True) redis.expire(library_url_key, 60 * 15) verification_status_no = book.verify_fields() if verification_status_no != 0: flash(error_msg(verification_status_no, book)) return render_template("index.html", subtitle=subtitle, libraries=libraries, form=form) else: if redundant_request(book) == True: flash(error_msg(50)) return render_template("index.html", subtitle=subtitle, libraries=libraries, form=form) book_info = bridge.book_info(form.library_id.data, book_id) if isinstance(book_info, (int, long, float, complex)): flash(error_msg(book_info)) return render_template("index.html", subtitle=subtitle, libraries=libraries, form=form) confirm_resp = make_response(minify(render_template("confirm.html", book_info=book_info, form=form))) uuid = urandom(32).encode("hex") confirm_resp.set_cookie("bub_session", uuid) store_request(book, uuid) return confirm_resp return render_template("index.html", subtitle=subtitle, libraries=libraries, form=form) else: return render_template("index.html", subtitle=subtitle, libraries=libraries, form=form)
def upload(): form = UploadForm() if request.method == 'POST' and form.validate(): g.user.avatar = form.uri.data db_session.add(g.user.avatar) db_session.commit() return redirect(url_for("home", username=g.user.username)) return render_template("upload.html", form=form, user=g.user)
def index(): subtitle = "Transfer books to Internet Archive" form = UploadForm(request.form) if request.method == 'POST': if form.validate(): book_id = html_escape(form.book_id.data) email = html_escape( form.email.data) if form.email.data not in (None, "") else "" book = bridge.fields(form.library_id.data, book_id, email) book_id = book.Id if book.Id not in (None, "") else book_id redis = redis_py.Redis() redis_key3 = keys.redis_key3 book_key = "%s:%s:%s" % (redis_key3, form.library_id.data, book_id) library_url_key = book_key + ":library_url" redis_py.set(library_url_key, form.book_id.data, True) redis.expire(library_url_key, 60 * 15) verification_status_no = book.verify_fields() if verification_status_no != 0: flash(error_msg(verification_status_no, book)) return render_template("index.html", subtitle=subtitle, libraries=libraries, form=form) else: if redundant_request(book) == True: flash(error_msg(50)) return render_template("index.html", subtitle=subtitle, libraries=libraries, form=form) book_info = bridge.book_info(form.library_id.data, book_id) if isinstance(book_info, (int, long, float, complex)): flash(error_msg(book_info)) return render_template("index.html", subtitle=subtitle, libraries=libraries, form=form) confirm_resp = make_response( minify( render_template("confirm.html", book_info=book_info, form=form))) uuid = urandom(32).encode("hex") confirm_resp.set_cookie('bub_session', uuid) store_request(book, uuid) return confirm_resp return render_template("index.html", subtitle=subtitle, libraries=libraries, form=form) else: return render_template("index.html", subtitle=subtitle, libraries=libraries, form=form)
def upload(): form = UploadForm() if request.method == "POST": form = UploadForm(request.form) if form.validate(): filename = secure_filename(form.img.file.filename) filename.save(os.path.join(UPLOAD_FOLDER, filename)) flash(ocr(filename)) else: flash("Invalid filename. Please choose another.") return render_template("base.html", form=form)
def upload(): form = UploadForm() if request.method == "POST": form = UploadForm(request.form) if form.validate(): filename = secure_filename(form.img.file.filename) filename.save(os.path.join(UPLOAD_FOLDER, filename)) flash(ocr(filename)) else: flash("Invalid filename. Please choose another.") return render_template("base.html", form=form)
def uploadFile(): if request.method == 'GET': return render_template('upload.html') else: form = UploadForm(CombinedMultiDict([request.form, request.files])) if form.validate(): desc = request.form.get('desc') avatar = request.files.get('avatar') filename = secure_filename(avatar.filename) avatar.save(os.path.join(UPLOAD_PATH, avatar.filename)) return '文件上传成功!!!' else: print(form.errors) return 'Failed!!'
def upload(): if request.method == 'GET': return render_template('flask_upload_file.html') else: form = UploadForm(CombinedMultiDict([request.form, request.files])) if form.validate(): avatar = request.files.get('avatar') desc = request.form.get('desc') avatar.save(os.path.join(UPLOAD_PATH, avatar.filename)) print(desc) return '上传成功' else: print(form.errors) return 'fail'
def upload(): if request.method == 'GET': return render_template('index.html') else: form = UploadForm(CombinedMultiDict([request.form, request.files])) if form.validate(): desc = form.desc.data avator = form.avator.data filename = secure_filename(avator.filename) avator.save(os.path.join(UNLOAD_PATH, filename)) print(desc) return '上传成功' else: print(form.error) return 'fail'
def admin_adverupload(): if session.get('user_id'): form = UploadForm() if request.method == 'POST' and form.validate(): file = request.files['file'].read() file_name = flask.request.form.get('title') advertisment_file = AdvertisementModel(picture_name=file_name, picture=file) db.session.add(advertisment_file) db.session.commit() return u'发布成功!' else: return render_template(url_for(admin_advertisement)) else: return redirect(url_for('admin_login'))
def Upload(): if request.method == "GET": return render_template("upload_file.html") else: form = UploadForm(CombinedMultiDict([request.form, request.files])) if form.validate(): desc = request.form.get('desc') #获取描述信息 avatar = request.files.get('avatar') filename = secure_filename(avatar.filename) avatar.save(os.path.join(UPLOAD_PATH, filename)) print(desc) return "文件上传成功" else: print(form.errors) return "Failed"
def upload(): error = None if not session.get('logged_in'): abort(401) form = UploadForm() # Validate file upload on submit if request.method == 'POST': if form.validate() == False: flash_errors(form) else: file = form.upload.data filename = secure_filename(file.filename) file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename)) flash('File Saved', 'success') return redirect(url_for('home', error=error)) return render_template('upload.html', form=form, error=error)
def upload(): if request.method == "GET": return render_template('upload.html') else: form = UploadForm(CombinedMultiDict([request.form, request.files])) if form.validate(): # 获取描述信息 desc = request.form.get('desc') avatar = request.files.get('avatar') # 用于检验文件名,保证安全性, 消除安全隐患 filename = secure_filename(avatar.filename) avatar.save(os.path.join(UPLOAD_PATH, filename)) print(desc) return "文件上传成功!" else: print(form.errors) return "Upload Fail!"
def settings(): if request.method == 'GET': return render_template('upload.html') else: # 从request,files里面获取文件,这里使用CombinedMultiDict把form和file的数据组合起来,一起验证 form = UploadForm(CombinedMultiDict([request.form, request.files])) if form.validate(): desc = request.form.get('desc') avatar = request.files.get('avatar') # 对文件名进行包装 filename = secure_filename(avatar.filename) avatar.save(os.path.join(UPLOAD_PATH, filename)) print(desc) return '文件上传成功' else: print(form.errors) return "fail"
def upload(): if request.method == 'GET': return render_template('upload.html') else: form = UploadForm(CombinedMultiDict([request.form, request.files])) if form.validate(): # 获取描述信息 # desc = request.form.get("desc") # avatar = request.files.get("avatar") desc = form.desc.data avatar = form.avatar.data filename = secure_filename(avatar.filename) avatar.save(os.path.join(UPLOAD_PATH, filename)) print(desc) return '文件上传成功' else: print(form.errors) return "fail"
def upload(): if request.method == "GET": return render_template('index.html') else: # request.form.get('desc') # request.files.get('avator') form = UploadForm(CombinedMultiDict([request.form, request.files])) if form.validate(): desc = form.desc.data avator = form.avator.data #avator表示上传过来的文件的名字 #secure_filename用它来堆上传文件的名字 进行安全过滤 filename = secure_filename(avator.filename) avator.save(os.path.join(UPLOAD_PATH, filename)) print(desc) return '上传成功' else: print(form.errors) return 'fail'
def upload(): if request.method == 'GET': return render_template('upload.html') else: form = UploadForm(CombinedMultiDict([request.form, request.files])) # 获取描述信息 if form.validate(): desc = request.form.get('desc') avatar = request.files.get('avatar') filename = secure_filename(avatar.filename) avatar.save(os.path.join(UPLOAD_PATH, filename)) print(desc) return 'success' else: pass return 'fail'
def upload(): if request.method == 'GET': return render_template('upload.html') else: # desc = request.form.get('desc') # image_file = request.files.get('image_file') # filename = secure_filename(image_file.filename) # image_file.save(os.path.join('images', filename)) # return '文件保存成功' form = UploadForm(CombinedMultiDict([request.form, request.files])) print(form) if form.validate(): desc = request.form.get('desc') image_file = request.files.get('image_file') filename = secure_filename(image_file.filename) image_file.save(os.path.join('images', filename)) return '文件保存成功' else: print(form.errors) return '文件格式不正確'
def hello_world(): if request.method == 'GET': return render_template('upload.html') else: if not path.exists(UPLOAD_PATH): os.mkdir(UPLOAD_PATH) form = UploadForm(CombinedMultiDict([request.form, request.files])) if form.validate(): f = request.files['file'] filename = secure_filename(f.filename) # 会丢失中文名字 ext = filename.rsplit('.')[-1] print(ext) # ext = filename.rsplit('.', 1)[1] # unix_time = int(time.time()) # new_filename = str(unix_time) + '.' + ext # file_url = UPLOAD_PATH + new_filename file_url = UPLOAD_PATH + filename f.save(file_url) return 'upload success' else: return '不支持问格式文件!'
def upload(): if request.method == "GET": return render_template('upload.html') else: # CombinedMultiDict 整合 描述 与 文件信息,在UploadForm 中对比过滤 form = UploadForm(CombinedMultiDict([request.form, request.files])) if form.validate(): # 获取描述信息 # desc = request.form.get('desc') # 图片文件信息 # avatar = request.files.get('avatar') # 过滤用户名是否安全 # 另一种获取表单的方式 desc = form.desc.data avatar = form.avatar.data filename = secure_filename(avatar.filename) avatar.save(os.path.join(UPLOAD_PATH, filename)) print(desc) return '文件上传成功' else: print(form.errors) return 'fail'
def upload(): form = UploadForm(request.form) if request.method == 'POST' and form.validate() and current_user.is_authenticated(): image = request.files['image'] if image: filename = secure_filename(image.filename) filename, ext = filename.split('.', 1) if ext not in IMG_EXTS: return redirect(url_for('upload')) timestamp = cleanTime(str(datetime.utcnow())) filename = filename + timestamp + '.' + ext image_data = request.files[image.name].read() open(os.path.join(app.config['UPLOAD_FOLDER'], filename), 'w').write(image_data) flash('You have uploaded a file') if form.maxColors.data: patternfile, across, tall = processImage(filename, form.stitches.data, form.maxColors.data) colors = form.maxColors.data else: patternfile, across, tall = processImage(filename, form.stitches.data) colors = 256 os.remove(UPLOAD_FOLDER + filename) patternsave = url_for('static', filename=patternfile) project = Project(session.get('user_id'), patternsave, form.title.data, form.public.data, across, tall, colors) db_session.add(project) db_session.commit() tags = form.tags.data if tags: tags = tags.split(',') for tag in tags: if tag != '': tag = Tag(tag.strip(), project.id) db_session.add(tag) db_session.commit() return redirect(url_for('project', pid=project.id)) return redirect(url_for('index.html')) return render_template('upload.html', form = form)
def upload(): if User.sessionCreatedAt(session.get('_cu', None)): form = UploadForm() if request.method == 'POST': if form.validate() == False: flash('Validation Failed!') return redirect(url_for('upload')) else: image = form.photo.data try: img = Image.open(image) img.verify() except (IOError, SyntaxError): flash('Image is not Valid!') else: img = Image.open(image) buffered = BytesIO() img.save(buffered, format="JPEG", optimize=True, quality=75) fileObj = buffered.getvalue() encodedImg = base64.b64encode(fileObj).decode() # compressing image for API size = img.size img.resize((size[0] // 10, size[1] // 10), Image.ANTIALIAS) img.save(buffered, format="JPEG", optimize=True, quality=75) fileObj = buffered.getvalue() tags, api_data = Hashtags(fileObj) min_score = api_data['keywords'][9][ 'score'] # 10th highest score cats = [ i.get('keyword').lower() for i in api_data['keywords'] if i.get('score') >= min_score ] tags = [i.lower() for i in tags] img_id = str(uuid4().hex)[::-1] User.uploadImage(session.get('_cu'), categories=cats, image=encodedImg, description=form.description.data, hashtags=tags, img_id=img_id) del img del fileObj flash('Image Uploaded Successfully!') return redirect(f'/post/{img_id}', 302) elif request.method == 'GET': return render_template('upload.html', form=form) else: if session.get('_cu'): flash('Invalid Session Cookies..') flash('Please Login Again..') session.pop('_cu', None) else: flash('You are not Logged In!') flash('Please Login to Upload a Picture!') return redirect(url_for('login'))