CLI toolΒΆ
A small argparse based CLI that prints BIN, bank or country lookups.
import argparse
import asyncio
import json
from smartbindb import SmartBinDB
db = SmartBinDB()
async def run(args):
if args.bin:
return await db.aget_bin_info(args.bin)
if args.bank:
return await db.aget_bins_by_bank(args.bank, limit=args.limit)
if args.country:
return await db.aget_bins_by_country(args.country, limit=args.limit)
return {"status": "error", "message": "no query given"}
def main():
parser = argparse.ArgumentParser(prog="smartbindb")
parser.add_argument("--bin")
parser.add_argument("--bank")
parser.add_argument("--country")
parser.add_argument("--limit", type=int, default=10)
args = parser.parse_args()
result = asyncio.run(run(args))
print(json.dumps(result, indent=2, default=str))
if __name__ == "__main__":
main()
Save as cli.py and run:
python cli.py --bin 457173
python cli.py --bank "Chase" --limit 5
python cli.py --country BD --limit 20