import sys
from bip353 import PyResolver
def main():
if len(sys.argv) < 2:
print(f"Usage: {sys.argv[0]} <bitcoin-address>")
print(f"Example: {sys.argv[0]} ₿user@example.com")
return 1
address = sys.argv[1]
try:
resolver = PyResolver()
except Exception as e:
print(f"Failed to create resolver: {e}")
return 1
try:
user, domain = resolver.parse_address(address)
print("Parsed address:")
print(f" User: {user}")
print(f" Domain: {domain}")
print()
except Exception as e:
print(f"Failed to parse address: {e}")
return 1
print(f"Resolving address {address}...")
try:
info = resolver.resolve_address(address)
print("Resolution successful!")
print(f" URI: {info.uri}")
print(f" Type: {info.payment_type}")
print(f" Reusable: {info.is_reusable}")
if info.parameters:
print(" Parameters:")
for key, value in info.parameters.items():
print(f" {key}: {value}")
except Exception as e:
print(f"Failed to resolve address: {e}")
return 1
return 0
if __name__ == "__main__":
sys.exit(main())