def get_cw_clans(server): check_server_availability(server, 'uc') d = get_dic(settings(mypath + '/' + SETTINGS_FILE_NAME)['region_data_url'] + str(settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_regions'][0])) l = [] d_clans = d['clans'] for i in d_clans: l.append((d_clans[i]['id'],d_clans[i]['tag'])) return tuple(l)
def get_cw_clans(server): check_server_availability(server, 'uc') d = get_dic( settings(mypath + '/' + SETTINGS_FILE_NAME)['region_data_url'] + str( settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_regions'][0])) l = [] d_clans = d['clans'] for i in d_clans: l.append((d_clans[i]['id'], d_clans[i]['tag'])) return tuple(l)
def make_clanlist(server, start=None): check_server_availability(server, 'clanlist') if not start: try: with open(mypath + '/' + server.upper() + '_clans.lst', mode='r', encoding='utf_8') as clanlist: l = clanlist.readlines() start = int(l[-1].split('\t')[0]) + 1 except: start = 1 + settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_clan_index_shift'] url = settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_clan_page_link'] i = start c = True while c: try: c = lxml.html.parse(url+str(i)+'/') known_404 = None except: known_404s = settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_known_404'] if isinstance(known_404s, int): if i == settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_known_404']: known_404 = True elif isinstance(known_404s, list) or isinstance(known_404s, tuple): if i in settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_known_404']: known_404 = True c = False if c and not known_404: t = c.find(".//title").text if settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_disbanded'] not in t : tag_name = t[:-settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_clan_page_trim']] tag_end = tag_name.find(']') clan_tag = tag_name[1:tag_end] clan_name = tag_name[tag_end+2:] print('\rProcessing clan: # {0} [{1}]'.format(i,clan_tag).ljust(67),end='') with open(mypath + '/' + server.upper() + '_clans.lst', mode='a', encoding='utf_8') as clanlist: clanlist.write('{0}\t{1}\t{2}\n'.format(i,clan_tag,clan_name)) if known_404: c = True i += 1 print('\nDONE.')
def get_clanlist(server, clanref): def get_all_clans(): with open(mypath + '/' + server.upper() + '_clans.lst', encoding='utf_8') as all_clans: content = all_clans.readlines() return [x[:-1].split('\t') for x in content] if isinstance(clanref, list) or isinstance(clanref, tuple) or isinstance( clanref, set): content = clanref elif clanref.lower() == 'all': check_server_availability(server, 'clanlist') return get_all_clans() elif clanref.lower() == 'uc' or clanref.lower() == 'cw': check_server_availability(server, 'uc') return get_cw_clans(server) else: check_server_availability(server, 'clanlist') try: with open(clanref, encoding='utf_8') as f_clanref: content = f_clanref.readlines() content = [x[:-1] for x in content] except: pass l = [] all_clans = get_all_clans() for c in content: i = 0 searching = True while searching: try: if c.upper() == all_clans[i][1]: l.append((all_clans[i][0], c.upper())) searching = False else: i += 1 except: searching = False return tuple(l)
def get_clanlist(server, clanref): def get_all_clans(): with open(mypath + '/' + server.upper() + '_clans.lst', encoding='utf_8') as all_clans: content = all_clans.readlines() return [ x[:-1].split('\t') for x in content ] if isinstance(clanref,list) or isinstance(clanref,tuple) or isinstance(clanref,set): content = clanref elif clanref.lower() == 'all': check_server_availability(server, 'clanlist') return get_all_clans() elif clanref.lower() == 'uc' or clanref.lower() == 'cw': check_server_availability(server, 'uc') return get_cw_clans(server) else: check_server_availability(server, 'clanlist') try: with open(clanref, encoding='utf_8') as f_clanref: content = f_clanref.readlines() content = [ x[:-1] for x in content ] except: pass l = [] all_clans = get_all_clans() for c in content: i = 0 searching = True while searching: try: if c.upper() == all_clans[i][1]: l.append((all_clans[i][0], c.upper())) searching = False else: i += 1 except: searching = False return tuple(l)
def make_clanlist(server, start=None): check_server_availability(server, 'clanlist') if not start: try: with open(mypath + '/' + server.upper() + '_clans.lst', mode='r', encoding='utf_8') as clanlist: l = clanlist.readlines() start = int(l[-1].split('\t')[0]) + 1 except: start = 1 + settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_clan_index_shift'] url = settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_clan_page_link'] i = start c = True while c: try: c = lxml.html.parse(url + str(i) + '/') known_404 = None except: known_404s = settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_known_404'] if isinstance(known_404s, int): if i == settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_known_404']: known_404 = True elif isinstance(known_404s, list) or isinstance(known_404s, tuple): if i in settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_known_404']: known_404 = True c = False if c and not known_404: t = c.find(".//title").text if settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_disbanded'] not in t: tag_name = t[:-settings(mypath + '/' + SETTINGS_FILE_NAME)[server.upper() + '_clan_page_trim']] tag_end = tag_name.find(']') clan_tag = tag_name[1:tag_end] clan_name = tag_name[tag_end + 2:] print('\rProcessing clan: # {0} [{1}]'.format( i, clan_tag).ljust(67), end='') with open(mypath + '/' + server.upper() + '_clans.lst', mode='a', encoding='utf_8') as clanlist: clanlist.write('{0}\t{1}\t{2}\n'.format( i, clan_tag, clan_name)) if known_404: c = True i += 1 print('\nDONE.')