urlfetch final_urlはnoneを返します
-
19-09-2019 - |
質問
私が取り組んでいる製品は、Google App Engineの上で実行されています。これに類似したコードが含まれています。
result = urlfetch.fetch(url, **parms)
log('%s' %result.final_url)
これは常に何も返されません。ドキュメントでは、正しいURLを返すと書かれています。しかし、これは問題のようです。その間に多くの302が発生しているため、指定されたURLを使用できません。
誰かが同じことを解決する方法を知っていますか?
解決
Testing on shell.appspot.com demonstrates that final_url is filled in iff a redirect was followed, and is left blank if it wasn't:
>>> from google.appengine.api import urlfetch
>>> urlfetch.fetch('http://google.com/').final_url
'http://www.google.com/'
>>> urlfetch.fetch('http://www.google.com/').final_url
So to get the final URL, just do this:
result = urlfetch.fetch(url, **parms)
final_url = result.final_url or url
log('%s' % final_url)
所属していません StackOverflow