我有python脚本从数据库中删除文本并创建一个文字云。我想创建一个运行python脚本的基于瓶子的网页,然后显示脚本生成的文字云。
到目前为止,我有一个python script.py:
from bottle import *
@route('/static/<filepath:path>')
def server_static(filepath):
return static_file(filepath,root='C:\wordcloud')
@route('/')
def main():
picture_name = 'wordcloud.png'
return template('template.tpl', picture=picture_name)
run(host='localhost',port=8080,debug=True)
和模板文件template.tpl:
...
<body>
<div class = "container">
%import script
<img src="/static/{{picture}}">
</div>
</body>
...
当我第一次进入localhost:8080时,我能够生成单词云。然而,在我第一次刷新页面后,网页只会加载“旧”字云(它显示单词云,但使用旧图像)。此外,我确信有一些更好,更方便的方法来做这一切。有什么建议吗?
谢谢!
答案 0 :(得分:0)
这种情况发生的原因是Web浏览器会根据URI来缓存图像等内容。通常的解决方法是向URI添加无意义的参数,如<img src="/static/{{picture}}?v={{version}}">
中所示。在这种情况下,您可以使用int(time.time())
作为{{version}}
。
另一种解决方案是使用类似内联SVG的方式来放置&#34;图像&#34;就在HTML中。