Christian: Beendete Angebote bei ebay mit PHP auslesen

Hi,

ich möchte beendete Angebote bei eBay auslesen und die Daten später weiter verarbeiten.

Idee war, dass ich einfach mit fopen die Seite öffne und sie parse nach den Daten die ich haben will.

Leider ist das Problem, dass man sich einloggen muss, um die beendeten Angebote zu sehen.

Rufe ich nun mein Skript auf, dass die URL für beendeten Angebote aufruft (und sie einfach nur per echo durchreicht), klappt es nicht, sondern es kommt immer der Login Bildschirm. Logge ich mich dann ein, werde ich auf die "richtige" ebay-Seite redirectet.

Ist es möglich dass ich in meinem Skript irgendwelche Header-Infos mitgebe, dass ebay vorgaukelt, dass ich es wäre?

Und was hat dieser ewig lange String zu bedeuten:
...243QQsacqyopZgeQQsacurZ0...
Da sind auch Parameter drin versteckt, wie z.B. Sortierreihenfolge und so. Auch meine Session und/oder Logindaten?
Ich habe diesen String allerdings mitkopiert in mein Skript. Es sollte also dieselbe Session benutzen.
Läuft aber wohl eher über Cookies.

Also habt ihr eine Idee?

Gruß
Christian

  1. Hi,

    Läuft aber wohl eher über Cookies.

    richtig, veruche einfach mal irgendwo zu bieten oder dich einzuloggen und dabei alle Cookies zu verbieten.

    Zu deinem Problem: eBay stellt dir eine API für Perl/PHP/Python zur Verfügung, inwieweit die genau dein Problem abdeckt kann ich dir nicht beantworten.

    1. Hallo,

      Zu deinem Problem: eBay stellt dir eine API für Perl/PHP/Python zur Verfügung, ...

      Stimmt. Dazu muss man sich aber für das "ebay Developers Program" anmelden und einen guten Grund nennen, *warum* man direkt auf die ebay-Datenbank zugreifen möchte. Einen Grund, der auch die Verantwortlichen von ebay überzeugt.

      Ciao,

      Martin

  2. Hallo Christian,

    ich möchte beendete Angebote bei eBay auslesen und die Daten später weiter verarbeiten.

    Interessant... ;-)

    Leider ist das Problem, dass man sich einloggen muss, um die beendeten Angebote zu sehen.

    Tatsächlich? Ist mir noch gar nicht aufgefallen...

    Ist es möglich dass ich in meinem Skript irgendwelche Header-Infos mitgebe, dass ebay vorgaukelt, dass ich es wäre?

    Im Prinzip ja: Du müsstest herausfinden, wie ebay die Login-Ablaufdauer in den Cookies codiert, und dann jedesmal ein selbstgemachtes "aktuelles" Cookie mitsenden.

    Und was hat dieser ewig lange String zu bedeuten:
    ...243QQsacqyopZgeQQsacurZ0...
    Da sind auch Parameter drin versteckt, wie z.B. Sortierreihenfolge und so. Auch meine Session und/oder Logindaten?

    Nein, weder die Session noch die Login-Daten. ebay benutzt hier seit einiger Zeit einen eigenen Mechanismus, um URL-Paramter voneinander zu trennen. Anstatt den üblichen Trennzeichen '?', '&' und '=' benutzen sie Sequenzen, die mit 'QQ' beginnen. Dazwischen stehen die gewohnten URL-Parameter.

    Ich habe diesen String allerdings mitkopiert in mein Skript. Es sollte also dieselbe Session benutzen.

    Nein, nur dieselben Suchparameter.

    Mal 'ne ganz andere Frage: Hast du schon einmal verstanden, wie die ebay-Option "Eingeloggt bleiben, bis ich mich abmelde" wirklich funktioniert? Ich kreuze dieses Feld beim Login _immer_ an, werde aber trotzdem immer wieder nach einer willkürlichen Zeit ausgeloggt. Die Hilfeseiten von ebay behaupten, man bliebe so einen Tag lang eingeloggt. Tatsächlich sind es bei mir aber manchmal ein bis zwei Tage, manchmal aber auch nur zwei Minuten. Dabei ist es auch völlig egal, welchen Browser ich verwende (FF, Opera, IE). Die Zeitspanne scheint rein zufällig zu sein.
    Seltsam...

    So long,

    Martin

    1. Hi,

      Im Prinzip ja: Du müsstest herausfinden, wie ebay die Login-Ablaufdauer in den Cookies codiert, und dann jedesmal ein selbstgemachtes "aktuelles" Cookie mitsenden.

      Wie sende ich denn selbstgemachte Cookies an eine Seite?

      Mal 'ne ganz andere Frage: Hast du schon einmal verstanden, wie die ebay-Option "Eingeloggt bleiben, bis ich mich abmelde" wirklich funktioniert? Ich kreuze dieses Feld beim Login _immer_ an, werde aber trotzdem immer wieder nach einer willkürlichen Zeit ausgeloggt. Die Hilfeseiten von ebay behaupten, man bliebe so einen Tag lang eingeloggt. Tatsächlich sind es bei mir aber manchmal ein bis zwei Tage, manchmal aber auch nur zwei Minuten. Dabei ist es auch völlig egal, welchen Browser ich verwende (FF, Opera, IE). Die Zeitspanne scheint rein zufällig zu sein.
      Seltsam...

      Jo, hab ich auch schon festgestellt. Hab aber kA.

      Gruß
      Christian

      1. Hallo,

        Wie sende ich denn selbstgemachte Cookies an eine Seite?

        Wie rufst du denn mit PHP Seiten von einem fremden Server ab?
        Wenn wir mal den Trivialfall (fopen_url_wrapper aktiviert) ausschließen, wird es doch auf eine Socket-Verbindung hinauslaufen, bei der du den HTTP-Request einschließlich Cookie selbst zusammenbaust. Also im Prinzip etwa so:

        $sock = fsockopen("search.ebay.de", 80);
         fputs($sock, "GET $path HTTP/1.1\r\n");
         fputs($sock, "Host: search.ebay.de\r\n");
          [...]
         fputs($sock, "Cookie: $cookiedata\r\n");
          [...]

        [...] Die Zeitspanne scheint rein zufällig zu sein.
        Seltsam...

        Jo, hab ich auch schon festgestellt. Hab aber kA.

        Schade eigentlich. :-(
        Schönen Abend noch,

        Martin

        1. Hallo,

          Wie sende ich denn selbstgemachte Cookies an eine Seite?

          Wie rufst du denn mit PHP Seiten von einem fremden Server ab?
          Wenn wir mal den Trivialfall (fopen_url_wrapper aktiviert) ausschließen, wird es doch auf eine Socket-Verbindung hinauslaufen, bei der du den HTTP-Request einschließlich Cookie selbst zusammenbaust. Also im Prinzip etwa so:

          $sock = fsockopen("search.ebay.de", 80);
          fputs($sock, "GET $path HTTP/1.1\r\n");
          fputs($sock, "Host: search.ebay.de\r\n");
            [...]
          fputs($sock, "Cookie: $cookiedata\r\n");
            [...]

          Aha, ja danke!
          Habe das bisher immer ohne sockets gemacht, als einfach nur mit fopen. Geht ja auch.

    2. Hi,

      Mal 'ne ganz andere Frage: Hast du schon einmal verstanden, wie die ebay-Option "Eingeloggt bleiben, bis ich mich abmelde" wirklich funktioniert? Ich kreuze dieses Feld beim Login _immer_ an, werde aber trotzdem immer wieder nach einer willkürlichen Zeit ausgeloggt. Die Hilfeseiten von ebay behaupten, man bliebe so einen Tag lang eingeloggt. Tatsächlich sind es bei mir aber manchmal ein bis zwei Tage, manchmal aber auch nur zwei Minuten. Dabei ist es auch völlig egal, welchen Browser ich verwende (FF, Opera, IE). Die Zeitspanne scheint rein zufällig zu sein.
      Seltsam...

      ich habe festgestellt, dass ich mich i.d.R. nur dann neu anmelden muss, wenn ich bieten will oder Bankdaten abfragen. Daher habe ich das als zusätzliche Sicherheitseinrichtung betrachtet.

      Was mich viel mehr stört, ist die Tatsache, dass die Seitenquelltexte extrem groß geworden sind, wenn ich meine Beobachtungsseite (mit ca. 25 Artikeln) aufrufe, können das schon mal mehrere 100 kB sein. Was steht da bloß alles für ein Müll drin?

      Achja, und seit ein paar Tagen kann ich mit Opera 7.54 den Link "diese Suche speichern" auf der Suchergebnisseite nicht mehr anklicken, im IE geht's. Was hat eBay denn da schon wieder dran gefummelt, kann man das mit Bordmitteln beheben (vermute mal nein) oder könnte das nur eBay (sofern sie denn gewillt sind)?

      Schönen Sonntag noch!
      O'Brien

      --
      Frank und Buster: "Heya, wir sind hier um zu helfen!"
      1. n'Abend,

        ich habe festgestellt, dass ich mich i.d.R. nur dann neu anmelden muss, wenn ich bieten will oder Bankdaten abfragen.

        Oder Artikel zum Beobachten übernehmen, oder beobachtete Artikel löschen, oder die myebay-Übersichtsseite abrufen, oder Bewertungen abgeben, ...

        Daher habe ich das als zusätzliche Sicherheitseinrichtung betrachtet.

        Ich sehe es eher als lästige Paranoia. Überhaupt, Stichwort Bankdaten abfragen: Warum machen die das überhaupt so kompliziert? Warum senden sie einem die Bankdaten nicht per email zu, wenn man schon in der Kaufabwicklung wählt, dass man per Überweisung zahlen möchte? Nein, jeden Scheiß senden sie einem als "Zahlungsinformationen" mit, nur nicht die wirklich wichtigen Sachen.

        Was mich viel mehr stört, ist die Tatsache, dass die Seitenquelltexte extrem groß geworden sind, wenn ich meine Beobachtungsseite (mit ca. 25 Artikeln) aufrufe, können das schon mal mehrere 100 kB sein. Was steht da bloß alles für ein Müll drin?

        Wirf halt mal einen Blick in den Quelltext... oder nein, tu es besser nicht, es sei denn, du bist ausgesprochen masochistisch veranlagt.

        Achja, und seit ein paar Tagen kann ich mit Opera 7.54 den Link "diese Suche speichern" auf der Suchergebnisseite nicht mehr anklicken,

        Hmm, hab ich noch nie versucht. Aber ich habe auch gemerkt, dass sie vor ein paar Tagen mal wieder einige Seiten umgebaut haben.

        Gute Nacht erstmal,

        Martin