如何解析URI?
对于这个网址 http://foo.com/apple/123
我想提取出'123'这个部分。
根据GAE的文档,我可以使用self.request.get()来获取这个网址,但有没有什么简单的方法可以直接获取网址中的某些部分呢?
2 个回答
5
是的,Python里有一个叫做 urlparse
的模块。使用这个模块,你可以得到一个叫 ParseResult
的结果,它会把网址中的主机名和协议等信息整理得很清楚。然后你可以用字符串的 split()
方法,根据路径分隔符来分开这些信息。
4
如果你在使用网页应用程序,你可以“捕获”正则表达式中匹配到的部分,这些部分会作为参数传递给你的处理函数。举个例子:
class FooHandler(webapp.RequestHandler):
def get(self, fruit, number):
# Do something with your fruit and number (which are both strings, remember!)
application = webapp.WSGIApplication([
('/([^/]+)/(\d+)', FooHandler),
])