Pergunta

Eu quero escrever uma func grabTopResults(String f) de tal modo que grabTopResults("automata theory") Retorna -me uma lista dos 100 principais artigos citados no Scholar.google.com para "Automata Theory".

Alguém tem sugestões para quais bibliotecas facilitarão minha vida?

Obrigado!

Foi útil?

Solução

Como tenho certeza de

A primeira coisa que você precisa fazer é descobrir qual solicitação HTTP (ou solicitações) você precisa emitir para obter a página com os dados necessários. Depois de descobrir isso, use HttpClient Para emitir a mesma solicitação do código Java. O link anterior mostra o código de exemplo que explica como fazer isso.

Depois de baixar o conteúdo da página relevante, você precisará usar um analisador HTML para extrair os dados em que você está interessado. Jericho Parser Sugerido por Peperg é uma boa escolha.

Se a polícia do Google bate, você nunca ouviu falar de mim, ok?

Outras dicas

eu uso http://jericho.htmlparser.net/docs/index.html . Google Scholar não tem API ( http://code.google.com/p/google-ajax-apis/issues/detail?id=109 ). Obviamente, não é permitido pelo Google (leia os termos de uso. São proibidos de solicitação automática).

Abaixo está um código de exemplo que recebe os títulos na primeira página usando o produto de código aberto Plano de teste. É um produto independente, mas se você realmente precisar, eu poderia ajudá -lo a integrá -lo ao seu código Java (ele está escrito no próprio Java).

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

Isso produz saída como o abaixo (meu IP é a Alemanha, portanto, uma resposta alemã). Obviamente, você pode formatá -lo como quiser ou escrevê -lo em um arquivo; Este é apenas um teste aproximado.

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.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top