Moi
Tarkoitus olisi kerätä veikkauksen tulosvedon kertoimet taulukkoon.
Miten pääsen käsiksi esim. tällä sivulla 'kaikki kertoimet' -linkistä avautuvan popup ikkunan html koodiin?
Näethän selaimellakin sen sivun osoitteen (https://www.veikkaus.fi/pelit?op=calc_scoreallodds&i=1&all=n).
Morjens taas novice!
tässä VBA-viritelmänä...
VBA-Projektiin
referenssi:
WinHTTP Services, version 5.1
(C:\WINDOWS\System32\winhttp.dll)
sekä 1 lomake ja 1 luokkamoduuli
(UserForm1 & Class1)
lomakkeelle:
1 tekstiloota (TextBox1)
Multiline: True
ScrollBars: fmScrollBarsBoth
1 nappi (CommandButton1)
UserForm1:
Dim cl As New Class1 Private Sub CommandButton1_Click() Static i As Integer If i > 4 Then i = 0 i = i + 1 Select Case i Case 1 TextBox1.Text = cl.GetHTML( _ "https://www.veikkaus.fi/" & _ "pelit?op=calc_scoreallodds&i=" & _ "1&gtid=af893edab9a74b91fda1fb1384c70577&all=n") Case 2 TextBox1.Text = cl.GetHTML( _ "https://www.veikkaus.fi/js/texts_www_fi.js") Case 3 TextBox1.Text = cl.GetHTML( _ "https://www.veikkaus.fi/js/utils_www.js") Case 4 TextBox1.Text = cl.GetHTML( _ "https://www.veikkaus.fi/js/xml_www.js") Case 5 TextBox1.Text = cl.GetHTML( _ "https://www.veikkaus.fi/js/gamefolder_www.js") End Select TextBox1.SetFocus TextBox1.SelStart = 0 End Sub
Class1:
Public Function GetHTML(ByVal theURL As String) As String Dim xhttp As WinHttp.WinHttpRequest Set xhttp = New WinHttp.WinHttpRequest On Error Resume Next xhttp.Open "GET", theURL, False xhttp.SetRequestHeader "USER_AGENT", _ "Mozilla/5.0 (Windows; U; Windows NT 5.1; " & _ "fi; rv:1.9.0.13) Gecko/2009073022 " & _ "Firefox/3.0.13 (.NET CLR 3.5.30729)" xhttp.Send xhttp.GetAllResponseHeaders GetHTML = xhttp.ResponseText Set xhttp = Nothing End Function
Onnistuihan se... en vaan aluksi löytänyt linkin osoitetta mistään. Hieman tarkempi pääsivun lähdekoodin tarkastelu tuotti tulosta.
Minulla Firefox näyttä popup-ikkunassakin osoitteen, ja joka tapauksessa osoite löytyy myös kakkosnäppäimella aukeavasta valikosta (View Page Info).
Joo... Operalla kakkosnäppäimen 'Copy link address' antaa vain saman sivun osoitteen.
Ei pitänyt klikata sitä linkkiä vaan popup-ikkunassa näkyvää sivua. Jos siis tämä olisi se popup, klikkaisit suunnilleen tästä.
Firefox ja Firebug ovat todella tehokas yhdistelmä sivun sisällön tutkimisessa, kannattaa asentaa ainakin varalle.
Operassa Tools > Preferences > Advanced > Content > JavaScript Options > [ ] Allow script to hide address bar, suosittelen.
Aihe on jo aika vanha, joten et voi enää vastata siihen.