python - jinja2.exceptions.TemplateNotFound:results.html
问题描述
我已经在我的电脑上运行了这段代码,它工作正常。但是当我将它部署到 zyte 时,它会引发错误。它似乎无法访问模板和 sqlite 文件。
目录
安装程序.py
# Automatically created by: shub deploy
from setuptools import setup, find_packages
setup(
name = 'project',
version = '1.0',
packages = find_packages(),
entry_points = {'scrapy': ['settings = gumtree.settings']},
)
New/
.scrapy/crawl_once/gumtree.splite
gumtree/
__init__.py
items.py
middlewares.py
models.py
pipelines.py
settings.py
spiders/
__init__.py
example.py
templates/
base.html
results.html
__init__.py
requirements.txt
scrapinghub.yml
错误
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/twisted/internet/defer.py",line 654, in _runCallbacks
current.result = callback(current.result, *args, **kw)
File "/app/__main__.egg/gumtree/pipelines.py", line 91, in close_spider
File "/app/__main__.egg/gumtree/pipelines.py", line 123, in send_mail
File "/usr/local/lib/python3.8/site-packages/jinja2/environment.py", line 883, in get_template
return self._load_template(name, self.make_globals(globals))
File "/usr/local/lib/python3.8/site-packages/jinja2/environment.py", line 857, in _load_template
template = self.loader.load(self, name, globals)
File "/usr/local/lib/python3.8/site-packages/jinja2/loaders.py", line 117, in load
source, filename, uptodate = self.get_source(environment, name)
File "/usr/local/lib/python3.8/site-packages/jinja2/loaders.py", line 199, in get_source
raise TemplateNotFound(template)
jinja2.exceptions.TemplateNotFound: results.html
编码
file_loader = jinja2.FileSystemLoader('templates')
env = jinja2.Environment(loader=file_loader)
template = env.get_template('results.html')
mail_content = template.render(items=self.items)
print(mail_content)
解决方案
推荐阅读
- c - 格式化字符串攻击,%_$d 和 %d 的区别
- excel - 有条件地使用 VBA “检查”复选框
- vue.js - 浏览“Vue Basics - Instant prototyping” - 运行“vue serve”失败
- java - 使用 Java 流将 Java 列表转换为另一个列表
- r - 如何在 convpow 中修复“xy.coords(x, y, setLab = FALSE) 中的错误:'x' 和 'y' 长度不同”以实现窄均匀分布?
- python - 如何使用 Python 绘制模拟几何随机变量的直方图?
- file - Dropzone.js - 如何在提交按钮单击而其他事件照常运行时触发 sendmultiple 事件
- excel - 如果范围内的单元格包含特定文本,则 Excel 导出并在新工作表上编译
- java - 嵌套 if 语句没有字符串
- scala - Gatling:转换响应并将其写入 JSON 文件