Ich möchte Daten von dieser Seite erhalten:
%Vor%Aber diese Seite geht weiter zu:
%Vor% Wenn ich open
von OpenUri verwende, um die Daten abzurufen, wird ein RuntimeError
Fehler mit HTTP redirection loop:
Ich bin mir nicht sicher, wie ich diese Daten nach der Weiterleitung erhalten und diesen Fehler auslösen soll.
Sie benötigen ein Tool wie Mechanize . Aus seiner Beschreibung:
Die Mechanize-Bibliothek wird für Automatisierung der Interaktion mit Websites. Mechanize speichert und speichert automatisch sendet Cookies, folgt Weiterleitungen, kann folgen Sie den Links und senden Sie Formulare. Bilden Felder können ausgefüllt und gesendet werden. Mechanize verfolgt auch die Websites, die Sie als besucht haben Geschichte.
was genau Sie brauchen. Also,
%Vor%dann
%Vor%und Sie sind bereit, Rock 'n' Roll.
Die Site scheint einige Umleitungslogik mit Sitzungen auszuführen. Wenn Sie die Sitzungs-Cookies, die sie bei der ersten Anfrage senden, nicht zurücksenden, gelangen Sie in eine Weiterleitungsschleife. IMHO ist es eine beschissene Implementierung ihrerseits.
Allerdings habe ich versucht, die Kekse an sie zurück zu geben, aber ich habe es nicht zur Arbeit gebracht, daher kann ich mir nicht ganz sicher sein, dass das hier alles ist.
Während mechanize ein wunderbares Werkzeug ist, ziehe ich es vor, mein eigenes Ding zu "kochen".
Wenn Sie es ernst meinen mit dem Parsen, können Sie sich diesen Code ansehen. Es dient dazu, Tausende von Websites auf internationaler Ebene jeden Tag zu crawlen und soweit ich recherchiert und optimiert habe, gibt es keinen stabileren Ansatz dafür, der Ihnen auch erlaubt, Ihre Bedürfnisse später anzupassen.
%Vor%Tags und Links ruby-on-rails redirect open-uri