views:

410

answers:

1

I want to create a RESTFUL web service that gets a request via the URL that is accessed and then returns the appropriate document for that client. For example, if it was a weather app and I wanted to get the weather for Atlanta through a web browser, I would access http://weatherapp.appspot.com/temperature/Atlanta and it would return an HTML document with the information for Atlanta. I don't want anything that ties into a database as I am just trying to wrap another website via screen-scraping. Does anyone have any examples on how to get arguments from the url?

+2  A: 

Using the webapp framework, you can capture regular expression groups and pass them to your handler like this:

class WeatherHandler(webapp.RequestHandler):
  def get(self, location):
    # Do something for location

application = webapp.WSGIApplication([
    ('/temperature/(.*)', WeatherHandler),
])

def main():
  run_wsgi_app(application)

if __name__ == "__main__":
  main()

Any parenthesized groups in the regular expression are collected and passed as positional arguments to the get/post/etc methods on your handler.

Nick Johnson
That works well. Thanks!
James