-
Notifications
You must be signed in to change notification settings - Fork 0
/
counter.py
57 lines (45 loc) · 1.37 KB
/
counter.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
import config
import requests
apiHome = config.apiHome
token = "token " + config.token
langDict = {}
def checkOrg(org):
print(org["login"])
print("========================")
apiOrgrepos = apiHome + "/orgs/" + org["login"] + "/repos"
response = requests.get(apiOrgrepos,
headers={"Authorization": token})
repos = response.json()
for repo in repos:
print(repo["full_name"])
showlanguage(repo["languages_url"])
print()
print()
def showlanguage(languages_url):
response = requests.get(languages_url,
headers={"Authorization": token})
langs = response.json()
print(langs)
for lang in langs:
langDict[lang] = langDict.get(lang, 0) + langs[lang]
if __name__ == "__main__":
if (apiHome == ""):
print("Please set api home at config.py")
exit()
if (token == ""):
print("Please set access token at config.py")
exit()
if config.serverType == "github":
apiAllorgs = apiHome + "/user/orgs"
else:
apiAllorgs = apiHome + "/organizations"
response = requests.get(apiAllorgs,
headers={"Authorization": token})
orgs = response.json()
for org in orgs:
checkOrg(org)
print(langDict)
s = 0
for lang in langDict:
s = s + langDict[lang]
print(s)