Frage

Ich möchte eine Java func grabTopResults(String f) schreiben, so dass grabTopResults("automata theory") kehrt mir eine Liste der Top-100-Papiere zitiert auf scholar.google.com für „Automatentheorie“.

Hat jemand Vorschläge für welche Bibliotheken mein Leben machen einfach?

Danke!

War es hilfreich?

Lösung

Wie ich bin sicher, dass Google die Bandbreite leisten kann, werde ich die Frage ignorieren, ob dies unmoralisch / illegal / verboten durch Google-T & C

Das erste, was Sie tun müssen, ist herauszufinden, was HTTP-Anforderung (oder Anforderungen) müssen Sie Ausgabe, um die Seite mit den Daten zu erhalten, die Sie benötigen. Sobald Sie diese herausgefunden haben, verwenden Sie Httpclient das gleiche ausstellen von Java-Code anfordern. Der bisherige Link zeigt Beispiel-Code, der erläutert, wie dies zu tun.

Wenn Sie den Inhalt der entsprechenden Seite heruntergeladen haben, benötigen Sie einen HTML-Parser zu verwenden, um die Daten, die Sie daran interessiert sind, zu extrahieren. Die Jericho-Parser von peperg vorgeschlagen ist eine gute Wahl.

Wenn die Google Polizei Come Knocking, haben Sie nie von mir gehört, OK?

Andere Tipps

Ich benutze http://jericho.htmlparser.net/docs/index.html. Google Scholar nicht über API ( http: // code.google.com/p/google-ajax-apis/issues/detail?id=109 ). Natürlich ist es nicht von Google erlaubt (lesen Sie die Nutzungsbedingungen. Automatische requestr verboten sind).

Im Folgenden finden Sie ein bisschen von Beispiel-Code, der den Titel auf der ersten Seite mit dem Open-Source-Produkt erhält Testplan . Es ist ein eigenständiges Produkt, aber wenn Sie es wirklich brauchen könnte ich Ihnen helfen, es in Ihren Java-Code integriert (es ist in Java geschrieben ist selbst).

GotoURL http://scholar.google.com/

SubmitForm with
    %Params:q% automate theory
end

set %Items% as response //div[@class='gs_r']
foreach %Item% in %Items%
    set %Title% as selectIn %Item% h3
    Notice %Title%
end

Dies erzeugt eine Ausgabe wie die folgenden (meine IP ist Deutschland, also eine Deutsch-Antwort). Offensichtlich könnten, wenn sie formatiert aber wie Sie, oder schreiben Sie sie in eine Datei; Dies ist nur ein grober Test.

00000000-00 GOTOURL http://scholar.google.com/
00000001-00 SUBMITFORM default
00000002-00 NOTICE [ZITATION] Stochastic complexity in statistical inquiry theory
00000003-00 NOTICE AUTOMATED THEORY FORMATION IN MATHEMATICS1
00000004-00 NOTICE Constraint generation via automated theory formation
00000005-00 NOTICE [BUCH] Automated theorem proving: after 25 years
00000006-00 NOTICE [BUCH] Introduction to the Theory of Computation
00000007-00 NOTICE [ZITATION] Computer-controlled systems: theory and design
00000008-00 NOTICE [BUCH] … , randomness & incompleteness: papers on algorithmic information theory
00000009-00 NOTICE [BUCH] Automatic control systems
00000010-00 NOTICE [BUCH] VLSI physical design automation: theory and practice
00000011-00 NOTICE Singular Control Systems.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top