Exemplo n.º 1
0
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)
Exemplo n.º 2
0
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.')
Exemplo n.º 4
0
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)
Exemplo n.º 6
0
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.')