Python Flask:用户下载Scraped Images

问题描述 投票:0回答:1

我有一个小图片刮刀。实质上,您为脚本提供了一个链接,它将网页上的所有图像下载到桌面上的文件夹中。我想在浏览器上使用相同的功能。我蚂蚁用户输入一个链接,脚本开始将图像从链接下载到他们的计算机。我的代码在下面:

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

@app.route('/Downlading', methods=['POST'])
def Downlading():
   url= request.form['url']
   start = request.form['start']
   end = request.form['end']
   dphy = image_downloader(url) #this is the script that saves the images
   return str(dphy)

我可以获取用户URL并将其传递给image_downloader,后者下载图像。问题是从命令提示符下载图像。我希望脚本在浏览器中运行,就像它在我的IDE中运行一样。对不起,如果这令人困惑。

我的HTML代码:

    <form action="/Downlading" method="POST" >
        URL: <input type="text" name="url"><br/>
        Start: <input type="text" name="start"><br/>
        End: <input type="text" name="end"><br/>
        <input type="submit" name="form" value="Submit" />

    </form>
python flask downloading
1个回答
1
投票

您需要为要反映的变量创建HTML模板。例如:

HTML - upload.html:

<html>
<title>Example on StackOverflow</title>
<p> The str representation of the variable dphy is {{ dphy }} </p>
</html>

Python(将其添加到现有的flask脚本):

@app.route('/Downlading', methods=['POST'])
def Downlading():
   url= request.form['url']
   start = request.form['start']
   end = request.form['end']
   dphy = image_downloader(url) #this is the script that saves the images
   return render_template('upload.html', dphy=str(dphy))

这应该有效,但我现在无法测试,所以我不是正面的。这是通过Flask传递变量的基本思想 - 创建一个使用变量的模板,然后在渲染创建的模板时显式传递它。

© www.soinside.com 2019 - 2024. All rights reserved.