Ankündigung

Einklappen
Keine Ankündigung bisher.

Quelltext auslesen mit file_get_contents

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    Nimm mal statt des geposteten Link besser den hier:
    Deutscher Basketball-Bund e.V.
    Da hast du die ganze Tabelle drinnen. (Ein klick auf Liste Ausdrucken hätte auch gereicht)

    Freundlicherweise steht im Quelltext der Seite folgendes, was den Anfang der Daten markiert:
    Code:
    <!-- this code has been generated from <header> custom tag (twlist.tld) -->
    Danach folgen schön aufgereiht alle Daten, die du brauchst.
    Vielleicht hilft dir diese Seite weiter.

    EDIT: Sehe gerade, dass man auch bei deinem Link nur deinen Verein auswählen kann. Wenn man dann auf die Druckversion wechselt, hat man genau das, was du haben möchtest.
    mysql ist veraltet Mails senden: Ohne Probleme und ohne mail()
    PHP-Code:
    echo 'PS: <b>Meine Antwort ist keine Lösung, sondern nur eine Hilfe zur Lösung.</b>'

    Kommentar


    • #17
      Hey, ja das hab ich natürlich schon gesehen. Da ist das Problem, dass die Hallen Daten, die wollte ich auch haben, nicht mit angezeigt werden. Unter meinem Link kann man wenn man mit der Maus über die halle fährt noch Infos (Straße etc.) bekommen. Das brauch ich auch. Daher kann ich nicht die Druckversion nehmen

      Kommentar


      • #18
        Das ist die Domain, die du als Beispiel in #15 angibst. Dieser Link ist allerdings falsch, und wenn du den in deinem Script auch so benutzt, dann dürfte klar sein, dass das nicht funktioniert.

        Der richtige Link für die ersten 10 Ergebnisse ist
        und der für die nächsten 10:
        (http://www. weggelassen, damit die Adresse lesbar bleibt.)
        PHP-Code:
        if ($var != 0) {
          
        $var 0;

        Kommentar


        • #19
          Das war leider nur ein Fehler, beim eingeben hier.
          Wenn es mal einer Testen möchte, bei mir kommt bei beiden Adressen, die Wolla benutzt hat die gleichen ersten 10 Zeilen!

          Bei file_get_contents() muss ich übrings zumind. "http://" angeben.

          Kommentar


          • #20
            da scheint noch "was" anderes zu sein

            wenn ich den Link von Wolla für startrow=20 benutze - und die Seite einfach im Browser öffne, dann wird zumindest beim ersten Besuch der Seite wohl auch ein Cookie abgefragt - und dann IN JEDEM FALL die erste Seite angezeigt (das müsste startrow=0 sein.)

            wenn ich dann - mit Cookie - die Navigation auf der Seite nutze, gelange ich mit startrow=10 auf die nächste Seite, startrow=20 , 3te Seite usw .. bis startrow=130 für die letzte Seite ..

            das Problem mit deinem PHP ist .. der verarbeitet bzw kann das Cookie nicht liefern - also bekommst du IMMER die Seite mit startrow=0 zu sehen ..

            und im Moment wüßte ich nicht, wie du das ändern willst ...denn Cookie kannst du meines Wissens nach dem "gegnerischen" Server nicht vorgaukeln - da beißt sich dann die Katze in den eigenen Schwanz
            "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste

            Kommentar


            • #21
              Oh man, das ist echt schade. Vll sollte ich den jeweiligen Quelltext als .txt-Datei speichern und dann einlesen ?

              Wie würde ich das anstellen ?

              Kommentar


              • #22
                einmal den Text speichern,

                danach kannst du den laden und liest die gewünschten Daten aus ..

                im Grunde sollte es so ähnlich gehen, wie deine bisherige Funktion, nur statt die "Datei" vom entfernten Webserver zu holen, lädst du sie aus dem Dateisystem - natürlich muss sie dazu auf deinem Webserver abgelegt werden
                "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste

                Kommentar


                • #23
                  Zitat von eagle275 Beitrag anzeigen
                  und im Moment wüßte ich nicht, wie du das ändern willst ...denn Cookie kannst du meines Wissens nach dem "gegnerischen" Server nicht vorgaukeln - da beißt sich dann die Katze in den eigenen Schwanz

                  Doch, kannst du: PHP: stream_context_create - Manual

                  (Siehe erstes Beispiel. Den context kannst du auch bei file_get_contents als Parameter übergeben)
                  @fschmengler - @fschmengler - @schmengler
                  PHP Blog - Magento Entwicklung - CSS Ribbon Generator

                  Kommentar


                  • #24
                    Warum willst du das erst speichern und dann wieder einlesen? Das machst du auch wieder mit file_get_contents() und dann hast du das gleiche in grün.
                    Und den Cookie kriegst du damit auch nicht überlistet.
                    PHP-Code:
                    if ($var != 0) {
                      
                    $var 0;

                    Kommentar


                    • #25
                      wenn er die Seite per Hand speichert übern Browser, dann schon ...
                      "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste

                      Kommentar


                      • #26
                        genau so meinte ich das mit dem Quelltext speichern.

                        Aber das von fab hört sich interessant an. Aber ich hab das durchgelesen und glaube ich bekomm das selbst nicht hin.
                        Vll wäre jemand von euch so nett ?

                        Ich weiß ja auch nicht was in dem Cookie steht, also was ich der Seite übergeben soll....

                        Kommentar


                        • #27
                          Zitat von Ralph777 Beitrag anzeigen
                          Ich weiß ja auch nicht was in dem Cookie steht, also was ich der Seite übergeben soll....
                          In dem Cookie steht eine Session-ID, also musst du erst mal einen Request machen, um dir diese ID zu „holen“.

                          cURL zu benutzen, könnte das ganze um einiges einfacher machen, als es selber zu basteln. (Steht allerdings nicht überall zur Verfügung.)

                          Kommentar


                          • #28
                            besuch die Seite mindestens 1 mal mit einem "vernünftigen" Browser .. Firefox oder besser noch Opera .. dann schaust du nach

                            Firefox : Einstellungen -> Datenschutz -> einzelne Cookies ...
                            Opera : Einstellungen -> Erweitert -> Cookies, Cookies verwalten

                            in der erscheinenden Liste suchst du den Server (also den der basketball-bundesliga) und schaust dir die Cookie-Felder an, die der setzt ..

                            in deinem Fall

                            basketball-bund.net -> JSESSIONID (6C7489EB19B5339EF0E1642C5DC86703) Beispiel von meinem Rechner

                            enthält einen Wert (JSESSIONID), den du mit deinem PHP script verwalten musst.

                            da du das Session-Cookie erst bekommst ,wenn du die Seite das erste mal besuchst , rechnest du halt intern "mit" ..

                            erster Besuch => startrow=0, danach kannst du navigieren mit den startrow-parametern ..
                            sollte eigentlich klappen ...
                            "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste

                            Kommentar


                            • #29
                              Ich glaube das übersteigt alles mein Wissen

                              Aber ich würde so gern haben, dass das klappt.

                              Also die JSESSIONID habe ich gefunden. Was meinst Du mit mitrechenen. An welcher Stelle verändert sich das denn bzw.
                              Soll ich die JSESSIONID per Hand einmal rausholen und in mein Script eingeben ? Und dann kann ich das irgendwie mit stream_context_create an die Seite abgeben und dann mit startrow navigieren ?

                              Wenn ja, wie genau gebe ich die JSESSIONID an den server ab ? und wenn das einmal geschehen ist kann ich file_get_contents die richtigen Zeilen bekomen (also über die zehnte hinaus) ?

                              Vielen Dank für eure Unterstützung.

                              Kommentar


                              • #30
                                im Grunde muss dein Script sich doch nur Verhalten wie ein "normaler" Browser ... also die Seite aufrufen , Cookie entgegennehmen , speichern . und dann als Kontext wieder mitliefern ... wenn ich die Aussage von fab richtig verstanden hab
                                "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste

                                Kommentar

                                Lädt...
                                X