Esempio n. 1
0
def grange(st, ime):
    rec=0
    ImamZadetke=True
    #global tekme
    while ImamZadetke:
        orodja.shrani('http://data.fis-ski.com/dynamic/athlete-biography.html?sector=AL&listid=&competitorid={}&type=result&category=WC&rec_start={}&limit=100'.format(st,rec), 'zajete-strani/{}{}.html'.format(ime,rec))
        if rec == 0:
            rezultat = re.search(r'Skis:.*?>[^>]*>(?P<smuci>[^<]*)', orodja.vsebina_datoteke('zajete-strani/{}{}.html'.format(ime,rec)))
            rez=re.search(r'Nation:.*\n\W*.*?>.*?>.*?>.*?>(?P<drzava>.+?)<.span>', orodja.vsebina_datoteke('zajete-strani/{}{}.html'.format(ime,rec)))
            if rezultat is None:
                ski='Ni_podatka'
            else:
                ski = rezultat.group('smuci')
            tekmovalci.append({'id':st, 'ime':ime, 'drzava': rez.group('drzava'), 'smuci': ski})

        tekma = re.compile(
            #r'<tr><td class=.i[01].>(?P<datum>.*?)&nbsp;<.td>'
            r'<tr><td class=.i[01].>(?P<datum>.*?)&nbsp;<.td>\n<td class=.i[01].><a href=.+?>(?P<kraj>.+?)<.a><.td>\n.*\n.*\n.*?>(?P<disciplina>.+?)&.*\n<td class.*?>(?P<uvrstitev>.+?)&nbsp;<.td>\n<td .+?>'
        )
    
        for vnos in re.finditer(tekma, orodja.vsebina_datoteke('zajete-strani/{}{}.html'.format(ime,rec))):
            datum='{}'.format(vnos.group('datum'))
            kraj='{}'.format(vnos.group('kraj'))
            disciplina='{}'.format(vnos.group('disciplina'))
            mesto='{}'.format(vnos.group('uvrstitev'))
            tekme.append({'datum': datum, 'kraj': kraj, 'mesto': mesto, 'disciplina': disciplina})
            vse.append({'datum': datum, 'kraj': kraj, 'mesto': mesto, 'disciplina': disciplina, 'id': st})

        #print (rec)
        rec+=100
        ImamZadetke=(len (tekme) == rec)
        #print (ImamZadetke, len (tekme))
    orodja.zapisi_tabelo(tekme,['datum', 'kraj', 'disciplina', 'mesto'], 'csv-datoteke/{}.csv'.format(ime))
Esempio n. 2
0
def pripravi_bwin(potdatoteke = datum):    
    reg_sportnika = re.compile(r'<td class="option  option_(.*?)" >'
    r'[^я]*?<span class="option-name">(?P<sportnik>.*?) \((?P<drzava>.*?)\)</span>'
    r'[^я]*?<span class="odds">(?P<kvota>.*?)</span>')
    reg_dogodka = re.compile(r'.*<a class="league-link" href=".*" >(?P<dogodek>.*.)\n* *- (?P<drzava>.*)</a>')
        #r'.*<a class="league-link" href=".*" >(?P<dogodek>.*.\n.*)</a>')
    reg_datumi = re.compile(r'(?P<vse><h2 class="event-group-level3">[^Я]*?  *.* - (?P<datum>.*)[^Я]*?<div class="ui-widget-content-body)')
    
    ###############################################################
    #Tole je preveč. Treba je iti korak za korakom.               #
    ###############################################################
    #reg_datumi = re.compile(r'<h2 class="event-group-level3">[^Я]*?  *.* - (?P<datum>.*)[^Я]*?</h2>'
    #                        r'[^Я]*?<a class="league-link" href="(.*)[^Я]*? - (?P<kategorija>.*)</a>'
    #                        r'[^Я]*?<h6 class="event-info">[^Я]*? *(?P<kraj>.*)[^Я]*?<td class="option  option_'
    #                        r'(.*?)" >'
    #                        r'[^я]*?<span class="option-name">(?P<sportnik>.*?).\((?P<drzava>.*?)\)</span>'
    #                        r'[^я]*?<span class="odds">(?P<kvota>.*?)</span>'
    #                        r'[^я]*</html>')

    reg_celatabela = re.compile(
        r'<a class="league-link" href=".*" >(?P<dogodek>[^Я]*?)</a>[^я]*?<span class="option-name">'
        r'(?P<sportnik>.*?) \((?P<drzava>.*?)\)</span>[^Я]*?<span class="odds">(?P<kvota>.*)'
        r'</span>[^я]*?(<a class="league-link" href=|<div class="ui-widget-content" id="sport-footer">)'
        )
    
    igralci_surovo = []
    dogodki = []
    igralci = []
    kategorije = []
    
    for html_datoteka in orodja.datoteke('zajete-strani/' + potdatoteke + '/bwin/'):
        datoteka = 'zajete-strani/' + potdatoteke + '/' + html_datoteka
        csvDat = 'csv-datoteke/'+ html_datoteka[13:-5]
        for ujemanje in re.finditer(reg_datumi, orodja.vsebina_datoteke(html_datoteka)):
            #print(uredi_datum(ujemanje.group('vse'), ujemanje.group('datum')))
            #print(ujemanje.groupdict())
            if uredi_datum(ujemanje.group('vse'), ujemanje.group('datum')) != {}:
                kategorije += [uredi_datum(ujemanje.group('vse'), ujemanje.group('datum'))]
        orodja.zapisi_tabelo(kategorije, ['datum', 'kategorija'], csvDat +  '/kategorije.csv')
        
        for ujemanje in re.finditer(reg_celatabela, orodja.vsebina_datoteke(html_datoteka)):
            igralci += [ujemanje.groupdict()]
        orodja.zapisi_tabelo(igralci, ['dogodek', 'kvota', 'drzava','sportnik'], csvDat +  '/sportniki.csv')
        for ujemanje in re.finditer(reg_dogodka, orodja.vsebina_datoteke(html_datoteka)):
            dogodki += [ujemanje.groupdict()]
        orodja.zapisi_tabelo(dogodki, ['dogodek', 'drzava'], csvDat +  '/dogodki.csv')
#        
        for ujemanje in re.finditer(reg_sportnika, orodja.vsebina_datoteke(html_datoteka)):
            #print(ujemanje.groupdict())            
            igralci_surovo += [ujemanje.groupdict()]
        orodja.zapisi_tabelo(igralci_surovo, ['sportnik', 'drzava', 'kvota'], csvDat +  '/sportniki_surovo.csv')
Esempio n. 3
0
def izloci_podatke(imenik):
    potresi = []
    for html_datoteka in orodja.datoteke(imenik):
        for potres in re.finditer(regex_potresa,
                                  orodja.vsebina_datoteke(html_datoteka)):
            potresi.append(pocisti(potres))
    return potresi
Esempio n. 4
0
def izloci_podatke_gora(imenik):

    regex_gore = re.compile(
        r'<td class="naslov1"><b>&nbsp;&nbsp;<h1>(?P<ime>.*?)</h1></b></td>.*?'
        r'<tr><td><b>Država:</b> <a class=moder href=/gore/.+?/\d>(?P<država>.*?)</a></td></tr>.*?'
        r'<tr><td><b>Gorovje:</b> <a class="moder" href="/gorovje/.*?/\d{1,3}">(?P<gorovje>.*?)</a></td></tr>.*?'
        r'<tr><td><b>Višina:</b> (?P<višina>\d+?)&nbsp;m</td></tr>.*?'
        r'<tr><td><b>Širina/Dolžina:</b>&nbsp;<a class="moder" href="/zemljevid\.asp\?goraid=(?P<id>\d*?)">.*?'
        r'<tr><td><b>Vrsta:</b> (?P<vrsta>.*?)</td></tr>.*?'
        r'<tr><td><b>Ogledov:</b> (?P<st_ogledov>\d*?)</td></tr>.*?'
        r'<tr><td><b>Priljubljenost:</b> \d+% \((?P<priljubljenost>\d+). mesto\)</td></tr>.*?'
        r'<tr><td><b>Število poti:</b> <a class="moder" href="#poti">(?P<st_poti>\d*?)</a></td></tr>.*?'
        r'<tr><td><b>Število GPS sledi:</b> <a class="moder" href="/gps.asp">(?P<st_GPS_sledi>\d+)</a></td></tr>.*?'
        r"href='/izlet/.*?'>(?P<nakljucna_pot>.*?)&nbsp;.*?</a></td><td><a.*?"
        r"href='/izlet/.*?>(?P<cas_hoje>.*?)</a></td><td><a.*?"
        r"href='/izlet/.*?'>(?P<zahtevnost_poti>.*?)</a></td><td>.*?",
        flags=re.DOTALL)

    gore = []
    for html_datoteka in orodja.datoteke(imenik):
        for gora in re.finditer(regex_gore,
                                orodja.vsebina_datoteke(html_datoteka)):
            gore.append(pocisti_goro(gora))

    print(gore)

    orodja.zapisi_tabelo(gore, [
        'ime', 'država', 'gorovje', 'višina', 'id', 'vrsta', 'st_ogledov',
        'priljubljenost', 'st_poti', 'st_GPS_sledi', 'nakljucna_pot',
        'cas_hoje', 'zahtevnost_poti'
    ], 'gore.csv')
Esempio n. 5
0
def shrani_zanre(mapa):
    for zanr in mapa:
        print(zanr)
        vsebina = orodja.vsebina_datoteke(zanr)
        podatki2 = {'opis': None}
        for vzorec1 in re.finditer(vzorec_ime_zanra, vsebina):
            podatki1 = vzorec1.groupdict()

        for vzorec2 in re.finditer(vzorec_opis_zanr, vsebina):
            podatki2 = vzorec2.groupdict()
            if podatki2['opis_dolg'] is None:  #Opis je takratek
                podatki2['opis'] = orodja.pocisti_niz(
                    html.unescape(podatki2["opis"]))
            else:
                podatki2['opis'] = orodja.pocisti_niz(
                    html.unescape(podatki2["opis_dolg"]))

        ###CSV za zanr
        podatkiZanr = dict()
        zajeti_zanr = html.unescape(podatki1['ime_zanra'])
        if not zajeti_zanr in zanri_za_popravit.keys():
            podatkiZanr['ime_zanra'] = zajeti_zanr
            podatkiZanr['opis'] = podatki2['opis']
            seznam_vseh_zanrov.append(podatkiZanr)
        else:
            print('Nisem dodal {}'.format(zajeti_zanr))


#shrani_zanre(mapa)
#orodja.zapisi_tabelo(seznam_vseh_zanrov,
#                     ['ime_zanra', 'opis'],
#                     'podatki/zanr.csv')
Esempio n. 6
0
def igralci_na_strani():
    ime_datoteke = 'podatki.html'
    vsebina = orodja.vsebina_datoteke(ime_datoteke)
    igralci = []
    for blok in bloki.finditer(vsebina):
        igralci.append(blok.group(0))
    return igralci
Esempio n. 7
0
def izloci_podatke_aplikacij(imenik):
    aplikacije = []
    for html_datoteka in orodja.datoteke(imenik):
        for aplikacija in re.finditer(regex_aplikacije,
                                      orodja.vsebina_datoteke(html_datoteka)):
            aplikacije.append(pocisti_aplikacijo(aplikacija))
    return aplikacije
def izlocimo_restavracije_s_strani(url):
    podatki = []
    orodja.shrani_spletno_stran(url, frontpage_filename)
    vsebina = orodja.vsebina_datoteke(frontpage_filename)
    for blok in vzorec_bloka.findall(vsebina):
        podatki.append(izlocimo_podatke(blok))
    return podatki
def get_cvs():
    regex_competitors = re.compile(
        r'<tr.*?><td><a href="participant_r\.aspx\?id=(?P<id>\d+?)">(?P<Name>.*?)</a>.*?'
        r'href="country_individual_r\.aspx\?code=(?P<Short_country_name>.*?)">(?P<Full_country_name>.*?)</a>.*?'
        r'align="center">(?P<P1>.*?)</td><td align="center">(?P<P2>.*?)</td><td align="center">(?P<P3>.*?)</td>'
        r'<td align="center">(?P<P4>.*?)</td><td align="center">(?P<P5>.*?)</td><td align="center">(?P<P6>.*?)</td>'
        r'<td align="right">(?P<Points>.*?)</td><td align="right">(?P<Rank>.*?)</td><td>(?P<Achievement>.*?)</td></tr>',
        flags=re.DOTALL)
    matchings = []

    for year in orodja.datoteke('podatki'):
        for cats in re.finditer(regex_competitors,
                                orodja.vsebina_datoteke(year)):
            cat = cats.groupdict()
            cat['id'] = int(cat['id'])
            for i in range(1, 7):
                name = 'P{}'.format(i)
                cat[name] = int(cat[name])
            cat['Points'] = int(cat['Points'])
            cat['Rank'] = int(cat['Rank'])
            cat['Year'] = int(os.path.split(year)[1])
            matchings.append(cat)
    orodja.zapisi_tabelo(matchings, [
        'id', 'Name', 'Short_country_name', 'Full_country_name', 'P1', 'P2',
        'P3', 'P4', 'P5', 'P6', 'Points', 'Rank', 'Year', 'Achievement'
    ], 'data.csv')
Esempio n. 10
0
def tekma_i_iz_lige(stevilka, liga):
    ime_datoteke = 'spletne-strani-tekem/{}-{}.html'.format(liga, stevilka)
    vsebina = orodja.vsebina_datoteke(ime_datoteke)
    ekipe = []
    for blok in vzorec_bloka.finditer(vsebina):
        ekipe.append(blok.group(0))
    return ekipe
def igralci_na_strani(st_strani):
    url = f'https://www.fifaindex.com/players/{st_strani}/?gender=male&order=desc'
    ime_datoteke = 'zajeti-podatki/igralci{}.html'.format(st_strani)
    orodja.shrani_spletno_stran(url, ime_datoteke)
    vsebina = orodja.vsebina_datoteke(ime_datoteke)
    for blok in vzorec_bloka.finditer(vsebina):
        yield izloci_podatke_igralca(blok.group(0))
Esempio n. 12
0
def izloci_podatke_receptov(imenik):
    recepti = []
    for html_datoteka in orodja.datoteke(imenik):
        for recept in re.finditer(regex_recepta,
                                  orodja.vsebina_datoteke(html_datoteka)):
            recepti.append(pocisti_recept(recept))
    return recepti
Esempio n. 13
0
def ekipe_iz_lige(drzava, liga):
    ime_datoteke = 'spletne-strani/{}-{}.html'.format(drzava, liga)
    vsebina = orodja.vsebina_datoteke(ime_datoteke)
    ekipe = []
    for blok in vzorec_bloka.finditer(vsebina):
        ekipe.append(blok.group(0))
    return ekipe
Esempio n. 14
0
def ena_stran(stevilka):
    url=f'https://www.goodreads.com/book/popular_by_date/{stevilka}/'
    datoteka = f'najbolj-popularne-knjige/{stevilka}.html'
    orodja.shrani_spletno_stran(url, datoteka)
    vsebina = orodja.vsebina_datoteke(datoteka)
    for blok in vzorec_bloka.finditer(vsebina):
        yield spremeni(blok.group(0))
def vsa_tekmovanja(začetek, konec):
    osnovni_link = "https://www.imo-official.org/"
    tekmovanja = []
    for leto in range(zacetek, konec):
        tekmovanje_leto = []
        #Za leto 1980 ni podatkov.
        if leto == 1980:
            continue
        url = f'https://www.imo-official.org/year_country_r.aspx?year={leto}'
        ime_datoteke_html = f'zajeti_podatki/leto_{leto}/imo-{leto}.html'
        orodja.shrani_spletno_stran(url, ime_datoteke_html)
        vsebina = orodja.vsebina_datoteke(
            f'zajeti_podatki/leto_{leto}/imo-{leto}.html')

        for link in vzorec_leto.finditer(vsebina):
            tekmovanje_leto.append({
                "leto":
                leto,
                "država":
                link.groupdict()["država"],
                "link":
                osnovni_link + link.groupdict()["link1"] +
                link.groupdict()["link2"]
            })
        # Shranim v json
        ime_datoteke_json = f'zajeti_podatki/leto_{leto}/imo-{leto}.json'
        orodja.zapisi_json(tekmovanje_leto, ime_datoteke_json)
        tekmovanja.extend(tekmovanje_leto)
    return tekmovanja
 def leto_drzava_gostiteljica():
     url = "https://www.imo-official.org/results_year.aspx"
     ime_datoteke_html = 'zajeti_podatki/leto_gostiteljica.html'
     orodja.shrani_spletno_stran(url, ime_datoteke_html)
     vsebina = orodja.vsebina_datoteke(ime_datoteke_html)
     for leto_drzava in vzorec_leto_gostiteljica.finditer(vsebina):
         yield leto_drzava.groupdict()
Esempio n. 17
0
def shrani_serije(mapa):
    for serija in mapa:
        vsebina = orodja.vsebina_datoteke(serija)

        for vzorec in re.finditer(vzorec_ime_serije, vsebina):
            podatki_serija = vzorec.groupdict()

        for vzorec in re.finditer(vzorec_knjige_v_seriji, vsebina):
            knjiga = vzorec.groupdict()
            if knjiga['id_knjige'] not in idji_knjig and (
                    knjiga['serija'] == podatki_serija['ime']):
                naslov = re.sub('[:|/|?]', '-', knjiga['naslov'])
                urlji_knjig_iz_serij.append(
                    (knjiga['kratki_url'], naslov + knjiga['id_knjige']))
                seznam_serija_knjiga.append({
                    'id_knjige':
                    knjiga['id_knjige'],
                    'id_serije':
                    serija.split('.')[0].split('\\')[-1],
                    'zaporedna_stevilka_serije':
                    knjiga['zaporedna_st']
                })

        # CSV datoteka serija: - naslov se je dodal že prej
        podatki_serija['id'] = serija.split('.')[0].split('\\')[-1]
        idji_serij.add(podatki_serija['id'])
        seznam_vseh_serij.append(podatki_serija)
Esempio n. 18
0
def izloci_podatke_kategorij(imenik):
    kategorije = []
    for html_datoteka in orodja.datoteke(imenik):
        for kategorija in re.finditer(regex_kategorije,
                                      orodja.vsebina_datoteke(html_datoteka)):
            kategorije.append(pocisti_kategorije(kategorija))
    return kategorije
Esempio n. 19
0
def podrobnosti(sifra):
    '''Shrani oglas z dano šifro, prebere vsebino danega oglasa in naredi slovar glede na zgornji vzorec s pomočjo regularnih izrazov.'''
    url = (f'https://www.studentski-servis.com'
           f'/ess/podrobnosti.php?id={sifra}')
    ime_datoteke = 'zajeti-podatki/podrobnosti-oglasa.{}.html'.format(sifra)
    orodja.shrani_spletno_stran(url, ime_datoteke)
    vsebina = orodja.vsebina_datoteke(ime_datoteke)
    return izloci_podatke_oglasa(vsebina)
Esempio n. 20
0
def dodaj_letosnje_podatke(firma):
    ime_datoteke = 'Spletne_strani/Firme/' + firma[
        'poenostavljeno'] + '/2019.html'
    orodja.shrani_spletno_stran(firma['link'], ime_datoteke)
    vsebina_strani = orodja.vsebina_datoteke(ime_datoteke)
    for zadetek in re.finditer(vzorec_na_strani, vsebina_strani):
        podatki_firme = zadetek.groupdict()
    firma.update(podatki_firme)
Esempio n. 21
0
def placa(st_strani):
    igralci = []
    for i in range(1, st_strani + 1):
        ime = 'podatki/place{}'.format(i)
        vsebina1 = orodja.vsebina_datoteke(ime)
        for blok in bloki_za_place.finditer(vsebina1):
            igralci.append(blok.group(0))
    return igralci
def zanri_url(seznam):
    for konec in seznam:
        url = ('https://www.goodreads.com/book/show/' f'{konec}')
        ime_datoteke = f'htmlji-knjig-posebej/{konec}.html'
        orodja.shrani_spletno_stran(url, ime_datoteke)
        vsebina = orodja.vsebina_datoteke(ime_datoteke)
        blok = re.finditer(vzorec_zanra, vsebina)
        print(blok)
def najdi_studio(datoteka):
    studiji = []
    vsebina = orodja.vsebina_datoteke(datoteka)
    for s in re.finditer(vzorec_studija, vsebina):
        studio = s.groupdict()
        studio['studio'] = studio['studio'].replace('&#039;', "'")
        studiji.append(studio)
    return studiji
def najdi_sezono(datoteka):
    vsebina = orodja.vsebina_datoteke(datoteka)
    for s in re.finditer(vzorec_sezone, vsebina):
        sezona = s.groupdict()
    if sezona['sezona'] == '?':
        return None
    else:
        return sezona['sezona'][:-5]
Esempio n. 25
0
def izloci_rezultate(imenik, regex):
    '''Vrne seznam s slovarji podatkov iz imenika'''
    podatki = []
    for datoteka in orodja.datoteke(imenik):
        for podatek in re.finditer(regex, orodja.vsebina_datoteke(datoteka)):
            pod = podatek.groupdict()
            pod['Leto'] = int(pod['Leto'])
            podatki.append(pod)
    return podatki
def skladbe_na_strani(st_strani):
    url = ('https://www.rollingstone.com/music/music-lists/'
           '500-greatest-songs-of-all-time-151127/'
           '?list_page={}').format(st_strani)
    ime_datoteke = 'zajeti-podatki/top-skladbe-{}.html'.format(st_strani)
    #orodja.shrani_spletno_stran(url, ime_datoteke)
    vsebina = orodja.vsebina_datoteke(ime_datoteke)
    for blok in vzorec_bloka.finditer(vsebina):
        yield izloci_podatke_skladbe(blok.group(0))
def knjige_na_strani(st_strani):
    url = (
        f'https://www.goodreads.com/list/show/133723.Goodreads_Choice_Awards_2019_eligible_for_write_in_only_?page={st_strani}'
    )
    ime_datoteke = 'knjige-na-strani-{}.html'.format(st_strani)
    orodja.shrani_spletno_stran(url, ime_datoteke)
    vsebina = orodja.vsebina_datoteke(ime_datoteke)
    for blok in vzorec_bloka.finditer(vsebina):
        yield izloci_podatke_knjige(blok.group(0))
def knjige_na_strani(st_strani, na_stran=100):
    url = ('https://www.goodreads.com/list/show/'
           '1.Best_Books_Ever?'
           f'page={st_strani}')
    ime_datoteke = f'htmlji/knjige-{st_strani}.html'
    orodja.shrani_spletno_stran(url, ime_datoteke)
    vsebina = orodja.vsebina_datoteke(ime_datoteke)
    for blok in vzorec_bloka.finditer(vsebina):
        yield izloci_podatke_knjige(blok.group(0))
def poberi_tedensko_lestvico(datum):
    leto = datum.year
    mesec = datum.month
    dan = datum.day
    url = f'http://world.kbs.co.kr/service/musictop10.htm?lang=e&start_year={leto}&rank_date={leto}-{mesec}-{dan}'
    datoteka = f'kpop-lestvice/{leto}-{mesec}-{dan}.html'
    orodja.shrani_spletno_stran(url, datoteka)
    vsebina = orodja.vsebina_datoteke(datoteka)
    for blok in vzorec_bloka.finditer(vsebina):
        yield izlusci_podatke_pesmi(blok.group(0))
def filmi_na_strani(st_strani, na_stran=250):
    url = (f'https://www.imdb.com/search/title'
           f'?sort=num_votes,desc&title_type=feature&count={na_stran}'
           f'&start={(st_strani - 1) * na_stran + 1}')
    ime_datoteke = 'zajeti-podatki/najbolj-znani-filmi-{}.html'.format(
        st_strani)
    orodja.shrani_spletno_stran(url, ime_datoteke)
    vsebina = orodja.vsebina_datoteke(ime_datoteke)
    for blok in vzorec_bloka.finditer(vsebina):
        yield izloci_podatke_filma(blok.group(0))
Esempio n. 31
0
def izloci_podatke_rezultati(imenik):
    '''Poišče ujemanja med regexom rezultatov in datotekami v imeniku in jih vrne v obliki seznama.'''
    ujemanja = []
    for datoteka in orodja.datoteke(imenik):
        print(datoteka)
        vsebina = orodja.vsebina_datoteke(datoteka)
        for podatki in re.finditer(regex_rezultatov, vsebina):
            ujemanja.append(pripravi_podatke_rezultati(podatki))
            print(ujemanja)
    return ujemanja
def animeji_na_strani(stran):
    start = stran * 50
    url = (
        f'https://myanimelist.net/anime.php?cat=0&q=&type=1&score=0&status=2&p=0&r=0&sm=0&sd=0&sy=0&em=0&ed=0&ey=0&c%5B0%5D=a&c%5B1%5D=b&c%5B2%5D=c&c%5B3%5D=d&c%5B4%5D=e&c%5B5%5D=f&c%5B6%5D=g&gx=1&genre%5B0%5D=9&genre%5B1%5D=12&genre%5B2%5D=26&genre%5B3%5D=28&genre%5B4%5D=33&genre%5B5%5D=34&o=7&w=1&show={start}'
    )
    ime_datoteke = f'zajeti-podatki/popularni_animeji_{stran}'
    orodja.shrani_spletno_stran(url, ime_datoteke)
    vsebina = orodja.vsebina_datoteke(ime_datoteke)
    for blok in vzorec_bloka.finditer(vsebina):
        yield izloci_podatke_animeja(blok.group(0))
Esempio n. 33
0
def zajemi_isbn():
	regex_isbn=re.compile(
		r'gp/product-reviews/(\d{10}).{150,200}?\$\d*\.\d{2} \$(\d*\.\d{2})',
		flags=re.S
	)

	seznamISBN=[]

	for html_datoteka in orodja.datoteke('podatki/amazon/'):
		for knjiga in re.finditer(regex_isbn, orodja.vsebina_datoteke(html_datoteka)):
			seznamISBN.append(knjiga.group(1))

	return seznamISBN
Esempio n. 34
0
def priprava_amazon():
	regex_knjige = re.compile(
		r'gp/product-reviews/(?P<ISBN10>\d{10}).{150,200}?\$\d*\.\d{2} \$(?P<cenaD>\d*\.\d{2})',
		flags=re.S
	)

	knjige = {}
	for html_datoteka in orodja.datoteke('podatki/amazon5/'):
		for knjiga in re.finditer(regex_knjige, orodja.vsebina_datoteke(html_datoteka)):
			podatki=knjiga.groupdict()
			knjige[podatki['ISBN10']]=podatki
	orodja.zapisi_tabelo(sorted(knjige.values(), key=lambda knjiga: knjiga['ISBN10']),
                             ['ISBN10','cenaD'], 'csv-datoteke/amazon2.csv')
Esempio n. 35
0
def zajemi_bwin():
    if not os.path.exists(datum):
        os.makedirs(datum)
    orodja.shrani('https://sports.bwin.com/en/sports', datum + 'bwin.html')
    izraz = r'href="(?P<link>/en/sports/(?P<id>[0-9]+)/.*/(?P<sport>.*))" title=".*">\s*<span class="sporticon"'
    #print(izraz)
    regex_url_filma = re.compile(izraz)
    #print(regex_url_filma)
    #print(orodja.vsebina_datoteke(datum + 'bwin.html'))
    for sport in re.finditer(regex_url_filma, orodja.vsebina_datoteke(datum + 'bwin.html')):
        url = 'https://sports.bwin.com{}'.format(sport.group('link'))
        ime_datoteke = datum + 'bwin/{}.html'.format(sport.group('sport'))
        print(url)
        orodja.shrani(url, ime_datoteke)
Esempio n. 36
0
def priprava_depository():
	regex_knjige = re.compile(
		r'<meta itemprop="author" content="(?P<avtor>.*?)".*?'
                r'<h1 itemprop="name">(?P<naslov>.*?)<.*?'
                r'<div class="item-info-wrap">\s*<p class="price">\s*(?P<cenaE>\d*,\d{2}).*?'
                r'<label>Format</label>\s*<span>\s*(?P<format>\w*).*?'
                r'"numberOfPages">(\d+).*?"datePublished">(?P<datum>\d{2} \w{3} \d{4}).*?'
                r'Language</label>\s*<span>\s*(?P<jezik>\w*).*?'
                r'ISBN10</label>\s*<span>(?P<ISBN10>\d{10}).*?'
                r'ISBN13</label>\s*<span itemprop="isbn">(?P<ISBN13>\d{13})',
		flags=re.S
	)

	knjige = {}
	for html_datoteka in orodja.datoteke('podatki/depositoryISBN/'):
		for knjiga in re.finditer(regex_knjige, orodja.vsebina_datoteke(html_datoteka)):
			podatki=knjiga.groupdict()
			knjige[podatki['ISBN10']]=podatki
	orodja.zapisi_tabelo(sorted(knjige.values(), key=lambda knjiga: knjiga['ISBN10']),
                             ['ISBN10','avtor', 'naslov', 'cenaE', 'format','jezik','datum','ISBN13'],
                             'csv-datoteke/depository2.csv')
Esempio n. 37
0
def zajemi_url():
    global tekme
    orodja.shrani('http://www.fis-ski.com/alpine-skiing/athletes/', 'zajete-strani/sportniki.html')
    #print("Zajemam ulr ... ")
    url = re.compile(
        r'<a href=..alpine-skiing.athletes\D+(?P<id>\d+).. alt=.(?P<ime>[\w| |-]+)'
    )

    smucarji = []
 
    for vnos in re.finditer(url, orodja.vsebina_datoteke('zajete-strani/sportniki.html')):
        st='{}'.format(vnos.group('id'))
        ime='{}'.format(vnos.group('ime'))
        #print (ime, st)
        #print ('1')
        smucarji.append({'id': st, 'ime': ime})
        tekme=[]
        grange(st, ime) #zajame podatke za posameznega smučarja
    #orodja.zapisi_tabelo(smucarji,['id', 'ime'], 'csv-datoteke/smucarji.csv')

    orodja.zapisi_tabelo(tekmovalci, ['id', 'ime', 'drzava', 'smuci'], 'csv-datoteke/smucarji.csv')
def izloci_podatke_filmov(imenik):
    filmi = []
    for html_datoteka in orodja.datoteke(imenik):
        for film in re.finditer(regex_filma, orodja.vsebina_datoteke(html_datoteka)):
            filmi.append(pocisti_film(film))
    return filmi
Esempio n. 39
0
def pripravi_bwin(potdatoteke = datum):
	regex_celatabela = re.compile(
		r'(?P<vse>.*<a class="league-link" href=".*" >(?P<ime_dogodka>.*.)\n *- (?P<drzava>.*)</a>'
		r'[^я]*?<span class="option-name">(?P<igralec>.*)</span>\n *<span class="odds">(?P<kvota>.*)</span>'
		r'[^я]*?(<a class="league-link" href=|<div class="ui-widget-content" id="sport-footer">))'
		)
	regex_celatabela1 = re.compile(
		r'(?P<vse>.*<a class="league-link" href=".*" >(?P<ime_dogodka>.*.)\n *- (?P<drzava>.*)</a>'
		r'[^я]*?<span class="option-name">(?P<igralec>.*)</span>\n *<span class="odds">(?P<kvota>.*)</span>'
		r'[^я]*?(<a class="league-link" href=|<div class="ui-widget-content" id="sport-footer">))'
		)
	regex_dogodka1 = re.compile(
		r'.*<h6 class="game">(?P<dogodek>.*)</h6>'
		r'[^я]<h6 class="game">'
		#r'.*<a class="league-link" href=".*" >(?P<dogodek>.*.\n.*)</a>'
		)
	regex_dogodka1 = re.compile(
		r'.*<a class="league-link" href=".*" >(?P<dogodek>.*.)\n* *- (?P<drzava>.*)</a>'
		r''
		#r'.*<a class="league-link" href=".*" >(?P<dogodek>.*.\n.*)</a>'
		)
	
	regex_sporta = re.compile(
		r'<button type="submit" class="no-uniform option-button fav-button">\n* *<span class="option-name">'
		r'(?P<ime>.*)</span>\n* *<span class="odds">(?P<kvota>.*)</span>')



	dogodek, igralec = {}, {}
	drzava, kvota = set(), []
	podatki_dogodkov = {}
	j = 1
	i = 1
	kvot = 0

	print(orodja.datoteke(potdatoteke + '/bwin/'))
	for html_datoteka in orodja.datoteke(potdatoteke + '/bwin/'):
		#print(orodja.vsebina_datoteke(html_datoteka))
		for tabela in re.finditer(regex_celatabela, orodja.vsebina_datoteke(html_datoteka)):
			print('***')
			#print(tabela)
			for podatki in re.finditer(regex_celatabela, tabela.group('vse')):				
				#for dogodek in re.finditer(regex_dogodka, tabela.group('vse')):
				#dogodek = podatki.group('dogodek')
				dogodek = tabela.group('ime_dogodka')
				igralec = tabela.group('igralec')
				print(dogodek)
				print(podatki)
				print(igralec + tabela.group('kvota'))
				podatki_dogodka = podatki_dogodkov.get(dogodek, {})
				podatki_dogodka[tabela.group('igralec')] = tabela.group('kvota')
				podatki_dogodkov[dogodek] = podatki_dogodka
				#drzava.add(podatki.group('drzava'))
				#print(podatki.group('dogodek') + ' -- ' + podatki.group('igralec') + ' -- ' + podatki.group('kvota'))



	#for html_datoteka in orodja.datoteke(potdatoteke + '/bwin/'):
	#	print(html_datoteka)
	#	for ime in re.finditer(regex_dogodka, orodja.vsebina_datoteke(html_datoteka)):
	#		if ime.group('drzava') == 'Slovenia':
	#			pass
				#print(ime.group('dogodek') + ' ' + ime.group('drzava')  + ' ' + html_datoteka)
	#		j += 1



	for html_datoteka in orodja.datoteke(potdatoteke + '/bwin/'):
		for ime in re.finditer(regex_sporta, orodja.vsebina_datoteke(html_datoteka)):
			#print(ime.group('ime') + '  '  + ime.group('kvota') + ' ' + datum[14:-1])
			i += 1
			kvot += float(ime.group('kvota'))
	orodja.zapisi_tabelo(igralec.values(), ['igralec', 'kvota'], 'csv-datoteke/dogodki.csv')
	print(drzava)
	print(igralec)
	return (i, j, kvot/i)
Esempio n. 40
0
vzorec_tekmovalca = re.compile(r'<td class=.i\d. align=.right.>&nbsp;(?P<uvrstitev>([12]?\d)|(30))</td>\s'\
                               r'<td .*?</td>\s'\
                               r'<td class=.i\d. align=.right.>&nbsp;(?P<id_tekmovalca>\d+?)</td>\s'\
                               r'<td class=.i\d.><a href=".*?">(?P<ime>.*?)</a>&nbsp;</td>\s'\
                               r'<td class=.*?>(?P<letnica>\d+?)&nbsp;</td>\s'\
                               r'<td class=.*?>(?P<nacionalnost>\w+?)&nbsp;</td>\s'\
                               r'<td class=.*?>&nbsp;(?P<dolzina1>.*?)</td>\s'\
                               r'<td .*?</td>\s<td class=.*?>&nbsp;(?P<dolzina2>.*?)</td>\s'\
                               r'<td .*?</td>\s<td class=.*?>&nbsp;(?P<tocke>.*?)</td>')

tekmovalci, prizorisca = {}, {}
uvrstitve, tekmovanja = [], []

for tekma in tekme:
    for opis in re.finditer(vzorec_tekme, orodja.vsebina_datoteke(tekma)): # na vsaki strani bo le eno ujemanje
        ta_tekma = re.findall(idtekme, orodja.vsebina_datoteke(tekma))[0]
        podatki_tekma = opis.groupdict()
        podatki_tekma['id_tekme']= (ta_tekma)
        podatki_tekma['id_prizorisca'] = podatki_tekma['id_prizorisca'][:5]
        podatki_tekma['sezona'] = tekma.split(sep = '_')[1][0:4]
        ime_prizorisca = podatki_tekma.pop('prizorisce')
        drzava_prizorisca = podatki_tekma.pop('drzava')
        prizorisca[podatki_tekma['id_prizorisca']] = {'id_prizorisca' : podatki_tekma['id_prizorisca'],
                                                'kraj' : ime_prizorisca,
                                                'država': drzava_prizorisca
                                                }

    tekmovanja += [podatki_tekma]

    for tekmovalec in re.finditer(vzorec_tekmovalca, orodja.vsebina_datoteke(tekma)):
Esempio n. 41
0
import re
import orodja
   
   
   
reg_datumi = re.compile(r'<h2 class="event-group-level3">[^Я]*?  *.* - (?P<datum>.*)[^Я]*?<div class="ui-widget-content-body')
reg_dogodka = re.compile(r'.*<a class="league-link" href=".*" >(?P<dogodek>.*.)\n* *- (?P<drzava>.*)</a>')

#<h2 class="event-group-level3">[^Я]*?  *.* - (?P<datum>.*)[^Я]*?(<a class="league-link" href=|<div class="ui-widget-content" id="sport-footer">)

for ujemanje in re.finditer(reg_datumi, orodja.vsebina_datoteke('zajete-strani/2016-01-16/bwin/alpine-skiing.html')):
    print(ujemanje.groupdict())