community-stats/parseGroup.py
2020-03-11 08:31:00 -06:00

35 lines
1.2 KiB
Python

import configparser
import os.path
from fedora.client import AccountSystem, AuthError
class GroupParser:
def __init__(self):
self.username = None
self.password = None
self.config = configparser.RawConfigParser()
try:
self.config.read('config.cfg')
self.username = self.config.get('FAS', 'user').strip('\'')
self.password = self.config.get('FAS', 'pass').strip('\'')
self.check_config()
except:
print("[*] Invalid / Missing Configuration file.")
def check_config(self):
if self.username.strip('\'') == 'FAS_USERNAME_HERE':
print("[*] Please enter FAS credentials in config.cfg")
return False
else:
return True
def group_users(self, group_name):
group_json = dict()
account = AccountSystem(username=self.username,
password=self.password)
try:
group_json = account.group_members(group_name)
except AuthError:
print("[*] Invalid Username / Password")
return 1
userlist = [user_desc['username'] for user_desc in group_json]
return userlist