Frage

Ich schreibe einen Crawler in Perl, die Inhalte von Webseiten zu extrahieren hat, die auf demselben Server befindet. Ich bin derzeit auf der HTML :: Modul Extrahieren Sie die Arbeit zu tun, aber ich fand das Modul ein bisschen langsam, so schaute ich in den Quellcode und fand heraus, dass es keine Verbindung Cache nicht verwendet für

Andere Tipps

HTML::Extract-Funktionen aussehen sehr Grundlagen- und uninteressant. Wenn die Module, die erwähnt draegfun nicht wahr interessieren, können Sie alles tun, was nicht mit HTML::Extract LWP::UserAgent und HTML::TreeBuilder selbst, ohne dass sehr viel Code überhaupt, und dann würden Sie frei in Caching auf Ihrem eigenen Bedingungen zu arbeiten.

Ich habe mit Web :: Scraper für meine Schaben Bedürfnisse. Es ist sehr schön in der Tat Daten zum Extrahieren, und weil man ->scrape($html, $originating_uri) nennen kann es dann sehr einfach, das Ergebnis, das Sie auch benötigen zwischenzuspeichern.

Sie benötigen diese in Echtzeit zu tun? Wie kommt man die Ineffizienz beeinflussen? Machst du die Aufgabe, seriell, so dass Sie eine Seite extrahieren, bevor Sie auf die nächste bewegen? Warum wollen Sie einen Cache vermeiden möchten?

Kann Crawler die Seiten herunterladen und geben sie nicht auf etwas anderes aus? Vielleicht ist Ihr Crawler kann sogar parallel laufen, oder in irgendeiner Art und Weise verteilt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top