class Crawl(webapp2.RequestHandler):
def get(self):
from google.appengine.api import urlfetch
url = "http://www.example.com/path/to a/page" #URL with a space
result = urlfetch.fetch(url)
self.response.write('url: %s' % (result.status_code)) ## Outputs 400
self.response.write(content) # Gives me 400 error page
我们不能否认有成千上万个 URL 包含空格。我们无法一一纠正。
为什么 urlfetch 对于这种可以通过浏览器完全访问的 URL 得到 400 bad request 错误?如何克服这一点?