Here in Google App Engines我得到的代码有助于通过网址获取任何网页的HTML代码:
from google.appengine.api import urlfetch
url = "http://www.google.com/"
result = urlfetch.fetch(url)
if result.status_code == 200:
doSomethingWithResult(result.content)
我不明白这里有一件事(事实上还有很多其他事情)为什么在这段代码中建议从google.appengine.api导入urlfecth? Python没有自己的命令吗?
答案 0 :(得分:16)
Python具有用于获取URL的urllib和httplib等库,但在App Engine上,所有请求都必须通过自定义urlfetch库。 App Engine包含urllib和httplib的存根,导致它们在内部使用urlfetch,但是如果你有选择,直接使用urlfetch会更有效和灵活。
答案 1 :(得分:5)
google.appengine.api是一个包含Google版本的urlfetch类的库。引用from the manual:
网址提取服务使用Google的 网络基础设施提高效率 和缩放目的。
Python在其标准库中也有url检索类,但是那些无法使用App Engine中可用的基础结构。
简而言之,google.appengine.api urlfetch功能更强大,但是你也没有阻止使用Pythons自己的urllib,这也在我上面链接的手册页中有描述。