File: describe_github_user.py

package info (click to toggle)
python-argcomplete 3.6.3-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 704 kB
  • sloc: python: 2,814; makefile: 50; sh: 7
file content (24 lines) | stat: -rwxr-xr-x 721 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/usr/bin/env python
# PYTHON_ARGCOMPLETE_OK

import argparse
import pprint

import requests

import argcomplete


def github_org_members(prefix, parsed_args, **kwargs):
    resource = "https://api.github.com/orgs/{org}/members".format(org=parsed_args.organization)
    return (member["login"] for member in requests.get(resource).json() if member["login"].startswith(prefix))


parser = argparse.ArgumentParser()
parser.add_argument("--organization", help="GitHub organization")
parser.add_argument("--member", help="GitHub member").completer = github_org_members

argcomplete.autocomplete(parser)
args = parser.parse_args()

pprint.pprint(requests.get("https://api.github.com/users/{m}".format(m=args.member)).json())