Gå til innhold

Hvordan hente data fra en nettside til en annen


Anbefalte innlegg

Er det mulig å hente ut data (kamper, ligaer og odds) fra Norsk Tipping sin nettside, og lagre det i en database eller tekstfil? Hvordan kan jeg gjøre dette? Kan eventuelt hente data fra oddsprogrammet (pdf fil). Men må uansett hente resultatene på en eller annen måte. Vet ikke om noe annet en nettsiden deres som en kilde på det. 

 

 

Dette ble kanskje feil underforum :)

Endret av Cookiemonster25
Lenke til kommentar
Videoannonse
Annonse
Gjest Slettet+1523

Det kan jo tenkes at Norsk Tipping har et API som er åpent for bruk, evt mot at du registrerer deg for å få tilgang. Var jeg deg startet jeg med å sende en mail for å spørre, mange aktører i dag har APIer som er tilgjengelige mot forespørsel. Det burde være et godt utgangspunkt for ditt bruksområde.

Lenke til kommentar
Nå har du 2 poster om samme tema -- 1
Langoddsen har ikke API som gir ut JSON som f.eks lotto,joker,vikinglotto,keno...
Hvis du kan bruke PHP er for eksempel Simple HTML DOM Parser en grei start.

Det går ikke med SimpleHTML DOM Parser alene,

vil ikke få ut verdier fra JavaScript som kjøres i DOM.

 
Langoddsen har sikkert 100 valg av hvilken odds enn ønsker.
Skrev en rask test kode,
bruker Selenium/PhantomJs laster kildekoden etter det til BeautifulSoup/lxml.
Poster ikke hele koden,men kan ta litt om fremgangs måte.
Valg gjøres først med XPhat i Selenium,f.eks velge fotball/NOR tippeliga:
from selenium import webdriver
import time

browser = webdriver.Firefox()
#browser = webdriver.PhantomJS('PhantomJS')
browser.get('https://www.norsk-tipping.no/sport/langoddsen')
browser.implicitly_wait(3)
browser.find_elements_by_xpath('//*[@id="sportGameBoardTool"]/section[2]/div[1]/span[1]/span')[0].click()
#osv
Ferdig med valg lastes kilekoden til BS/lxml.
Da er det vanlig parsing,
for nå får man alle verdier pga nettleser automasjon med Selenium/PhantomJS.
Eks på første linje:
from bs4 import BeautifulSoup

html = '''\
<span class="ellipsis text" title="Strømsgodset">Strømsgodset</span>
<span title="Bodø/Glimt" class="ellipsis text">Bodø/Glimt</span>
<span class="value ellipsis">1,42</span>
<span class="value ellipsis">4,20</span>
<span class="value ellipsis">5,95</span>'''

soup = BeautifulSoup(html, 'lxml')
kamp = soup.find_all('span', {'class': 'ellipsis text'})
odds = soup.find_all('span', {'class': 'value ellipsis'})
print(' -- '.join(lag.text for lag in kamp))
print(' - '.join(odd.text for odd in odds))

# Output-->
Strømsgodset -- Bodø/Glimt
1,42 - 4,20 - 5,95
Endret av snippsat
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...