python - 当我设置 TZ 环境变量时,为什么 dateparser 在我的 Flask 应用程序中停止工作?
问题描述
为了弄清楚为什么 dateparser(0.7.6 和 1.0.0)不能在 Python 下的 Flask(Flask 1.1.2,Werkzeug 1.0.1)中工作,我将一个更大的 Flask 应用程序缩减到了基本要素3.8.5 在 Windows 10 中。
运行.py
from mytest import app as _application
def application(environ, start_response):
return _application(environ, start_response)
if __name__ == '__main__':
from werkzeug.serving import run_simple
run_simple('localhost', 5003, application, use_reloader=True, use_debugger=True, threaded=True, use_evalex=True)
我的测试.py
import os, dateparser, time
from flask import Flask
app = Flask(__name__)
# os.environ['TZ'] = 'UTC'
@app.route('/')
def date_test():
parsed = dateparser.parse('01/13/2021')
return 'Date parse results are: {}'.format(parsed)
此应用程序运行良好 - 转到http://127.0.0.1:5003会产生“日期解析结果为:2021-01-13 00:00:00 ”
但是,如果我在 mytest.py ( os.environ['TZ'] = 'UTC'
) 中取消注释第 5 行,dateparser 会突然停止工作,并且 URL 返回“日期解析结果为:无”
我发现有一些方法可以缓解它:
- 在 run.py 中,将
from mytest import app as _application
行移到application
函数中 - 在 mytest.py 中,将
os.environ['TZ']...
行移到date_test
函数中
但我真的不明白为什么问题会首先发生,或者为什么这两个“解决方案”中的任何一个实际上都能解决问题。
我错过了什么?
解决方案
推荐阅读
- python - Python - 定义一个块函数来编码基因组数据
- android - Android animationUtils 或 AnimatorSet 问题
- pattern-matching - 用户定义类型 Ocaml
- r - R:导出为 PDF 时,图例文本不在绘图范围内
- c# - 布局不会落到底部!它在一边
- apache-spark - Spark覆盖aws s3上的镶木地板文件引发URISyntaxException:绝对URI中的相对路径
- tensorflow - 卷积神经网络 (CNN) 输入形状
- ios - 不知道在哪里添加pod文件flutter ios安装
- algorithm - 熄灯最佳优先搜索/A* 算法
- python - 在 Python 中自动检测并在 C/C++ 循环上放置大括号