我想在刮取域Scrapy时处理DNS错误.
这是我看到的错误:
ERROR: Error downloading <GET http://domain.com>: DNS lookup failed: address 'domain.com' not found [Errno 8] nodename nor servname provided, or not known.
Run Code Online (Sandbox Code Playgroud)
当我收到这样的错误时,我怎么能得到通知,这样我就可以自己处理它而不用Scrapy只是抛出一个错误并继续前进.
我在一个非常简单的应用程序中遇到了一个烧瓶url_for('')错误.
from flask import Blueprint, render_template, abort
from jinja2 import TemplateNotFound
base = Blueprint('main', __name__)
@base.route('/', defaults={'page':'home'})
@base.route('/<page>')
def show(page):
try:
return render_template('%s.html'%page, name='my name is')
except TemplateNotFound:
abort(404)
Run Code Online (Sandbox Code Playgroud)
以上是我的蓝图文件,这些路线工作正常,但如果我尝试做
with flask.test_request_context():
print url_for('home') #home.html or any other forms
Run Code Online (Sandbox Code Playgroud)
我刚收到这个错误:
raise BuildError(endpoint, values, method)
werkzeug.routing.BuildError: ('home', {}, None)
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮我弄清楚这里发生了什么?在我的html页面中,我可以打印出静态文件的位置:
{{ url_for('static', filename='style.css') }}
Run Code Online (Sandbox Code Playgroud)
但如果我试着这样做:
{{ url_for('home') }}
Run Code Online (Sandbox Code Playgroud)
我再次得到同样的错误.任何人都有一些建议如何继续?