| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- #!/usr/bin/env python
- from openid.consumer.discover import discover, DiscoveryFailure
- from openid.fetchers import HTTPFetchingError
- names = [["server_url", "Server URL "],
- ["local_id", "Local ID "],
- ["canonicalID", "Canonical ID"],
- ]
- def show_services(user_input, normalized, services):
- print " Claimed identifier:", normalized
- if services:
- print " Discovered OpenID services:"
- for n, service in enumerate(services):
- print " %s." % (n,)
- for attr, name in names:
- val = getattr(service, attr, None)
- if val is not None:
- print " %s: %s" % (name, val)
- print " Type URIs:"
- for type_uri in service.type_uris:
- print " *", type_uri
- print
- else:
- print " No OpenID services found"
- print
- if __name__ == "__main__":
- import sys
- for user_input in sys.argv[1:]:
- print "=" * 50
- print "Running discovery on", user_input
- try:
- normalized, services = discover(user_input)
- except DiscoveryFailure, why:
- print "Discovery failed:", why
- print
- except HTTPFetchingError, why:
- print "HTTP request failed:", why
- print
- else:
- show_services(user_input, normalized, services)
|