auslesen von dynamischen seiten
Übersicht

BBPro2Betreff: auslesen von dynamischen seiten |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hi,
angelehnt an dinge die ich mit der suche gefunden habe habe ich jetzt folgenden code Code: [AUSKLAPPEN] Graphics 640, 480, 16, 2 Type inhalt Field txt$ End Type GetData("www.xxlscore.com") For inhalt.inhalt = Each inhalt Print inhalt\txt$ + "!" Next WaitKey End Function GetData(url$,port=80) is_online=OpenTCPStream(url$,port) If is_online ; Request an das Serverscript schicken WriteLine is_online,"GET / HTTP/1.1" WriteLine is_online,"Host: "+url$ WriteLine is_online,"User-Agent: daten" WriteLine is_online,"Accept: */*" WriteLine is_online,"" ; Daten empfangen Repeat Until ReadLine(is_online)="" Repeat in$=Trim(ReadLine(is_online)) If in$<>"" i.inhalt=New inhalt i\txt$=in$ EndIf Until Eof(is_online) CloseTCPStream is_online EndIf End Function leider funktioniert der code bei der angegebenen domain nicht. es kommen nachrichten, dass ich javascript aktivieren muss etc. die seite zeigt normalerweise aktuelle ergebnisse von fußball und co. an möchte mir selbst ein kleines tool erstellen welches diese werte verwendet und bei gewissen toren bestimmte sounds abspielt etc. in meinem browser ist javascript natürlich aktiviert und die seite funktioniert soweit auch. wenn ich sie allerdings über diesen blitzbasic code ansteuere funktioniert das ganze nicht. leider kenn ich mich quasi null mit dem thema aus und auch google hat mir nur wenig brauchbares geliefert da ich nur bedingt weiß wonach ich überhaupt suchen soll. meine hoffnung: dass sich hier jemand befindet der sich genug damit auskennt um mir weiterzuhelfen ![]() was muss ich ändern/machen/angeben, damit das ganze mir regelmässig die aktuelle html datei liefert, die von der seite generiert wurde ? |
||
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Der Code liefert dir die Seite im HTML-Code zurück.
Das Problem ist, dass die ganze Seite fast ausschließlich aus Javascript besteht, und du zuerst einen Java-Interpreter schreiben müsstest, um dort einzelne Werte auszulesen. |
||
Twitter
Download Jewel Snake! Windows|Android |
BBPro2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
und da gibt es keinen umweg ? z.b mit dem internen html viewer das ganze darstellen lassen und dann die werte auslesen oder so ? | ||
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Vielleicht wäre es eine Lösung, mit Wireshark alle Aufrufe die JS in deinem Browser macht zu studieren. Und das "nachzumachen", denn da gehts eigentlich nur um normale GET / POST soweit ich weiß. Wird trotzdem nicht einfach fürchte ich. Auf Facebook hab ich mir das mal anschauen wollen um zu lernen "wie die ticken" und hab so gut wie nix heraus gefunden...
mfG, Christoph. |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
![]() |
ZEVS |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die Website http://www.xxlscore.com/start funktioniert auch ohne JavaScript. Es handelt sich um ein Frameset, wobei speziell der Frame http://www.xxlscore.com/livesc...wahl=start interessant ist.
Der Rest sollte dann möglich sein. Wieso Wireshark, wenn es Firebug gibt? ZEVS |
||
BBPro2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
öhm könntest du das etwas genauer erklären zeus?
ich versteh nich so ganz was das zu bedeuten hat was du da schreibst ![]() |
||
![]() |
ZEVS |
![]() Antworten mit Zitat ![]() |
---|---|---|
Verzeihung, ich vergaß, dass dies kein Forum über Websites und HTTP ist.
Den Link http://www.xxlscore.com/livesc...wahl=start hast du gewiss ausprobiert. Entscheidend ist, dass du hierfür JavaScript ausschaltest, da sonst weitergeleitet wird. Der Quelltext (Strg+U) enthält alle Spieldaten. Nun muss nur noch der Dateiname+Parameter("livescore?lg=0&auswahl=start") mit übergeben werden: BlitzBasic: [AUSKLAPPEN] Function GetData(host$, file$, port=80) Sodass BlitzBasic: [AUSKLAPPEN] GetData("www.xxlscore.com", "livescore?lg=0&auswahl=start") liefert. ZEVS |
||
BBPro2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
etwas spät aber vlt liest dus ja trotzdem ![]() hab das ganze jetzt bei ner anderen page verwendet und es wird alles ausgelesen außer die "interessanten" (nämlich dynamischen) daten alles ist da ... sogar die werbung links. aber die matches fehlen ich hab folgenden aufruf gemacht: GetData ("stats.dota2.be", "player/32413589#matchestab") originallink ist http://stats.dota2.be/player/32413589 irgendwelche ideen was ich machen kann ? kenne mich leider viel zu wenig damit aus ![]() edit: ok bin grad durch zufall etwas weiter gekommen. alles was ich jetzt noch wissen müsste ist wie ich einen klick auf den "next" button simulieren kann. sprich wie komme ich jetzt an den quelltext der die nächsten 10 games zeigt, etc. ? der link aus dem quelltext zu stats.dota2.be/matchstats/32413589 beinhaltet im prinzip alle informationen die ich brauche... allerdings nur für die ersten 10 spiele. wie komme ich also an die anderen ? aus dem quelltext werde ich nicht schlauer |
||
BBPro2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hab weiter damit rumgespielt und bin jetzt so weit dass ich über den normalen browser
weiß wie meine anfragen auszusehen haben und zwar z.B. so: Code: [AUSKLAPPEN] http://stats.dota2.be/matchstats/91589391?sEcho=3&iColumns=8&sColumns=&iDisplayStart=0&iDisplayLength=1&mDataProp_0=0&mDataProp_1=1&mDataProp_2=2&mDataProp_3=3&mDataProp_4=4&mDataProp_5=5&mDataProp_6=6&mDataProp_7=7 jetzt ist aber die frage wie ich in blitzbasic den string welchen der browser mir hier ausgibt auslesen kann. in dem speziellen fall wäre das (im moment - wenn ihr es testet ist es vermutlich bereits ein anderer...) Code: [AUSKLAPPEN] {"aaData":[["26713522","Broodmother","40:17","0","3","5","6","319"]],"sEcho":3,"iTotalRecords":"1238","iTotalDisplayRecords":"1238"} kann mir jemand erklären wie ich diesen string auslesen kann ? edit: wichtig zu wissen ist noch dass wenn ich ein "normales" runterladen der datei versuche automatisch die datei http://stats.dota2.be/matchstats/91589391 runtergeladen wird welche informationen über die letzten 10 spiele enthält. die parameter iDisplayStart und iDisplayLength werden so also ignoriert. und das darf nicht sein |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group