Přidání dalsích pluginů -- ACM, Springer

Z FI WIKI
Přejít na: navigace, hledání

ACM

Plugin implementová pro fulltext vzhledávání. Nelze ovšem použít XSLT transformaci, celý zdrojový kód odpovědi se musí parsovat, využívám balík HTMLParser (http://htmlparser.sourceforge.net/).


V dalším kroku bude doplněno rozšířené vyhledávání.


Rozšířené vyhledávání implementováno pro tato kritéria:

  • Title
  • Author
  • Date From/To
  • Abstract
  • Results / page

Plugin pro ACM standardně vrací dvacet výsledků na stránku, toto číslo nejde nijak ovlivnit. Pro získání více výsledků se ACM volá vícekrát. Volání je prováděno ve vláknech, čekání na výsledek je metodou active waiting, což krátkodobě zvyšuje zatížení procesoru. Dotazování podle kritérií title, author, abstract je na straně ACM implementováno pouze přidáním +title:xy (%20%2Btitle%3Axy), +author:, +abstract: do dotazu. Stačí upravit metodu pro tvorbu URL. Kritérium "Date From/To" je složitější, musí se ve finále do dotazu přidat řetezec obdobný tomuto:

source_disp=Published%20since%20January%202000%20and%20Published%20before%20January%202004&source_query=meta%5Fpublished%5Fdate%20%3E%3D%2001%2D01%2D2000%20%3CAND%3E%20meta%5Fpublished%5Fdate%20%3C%3D%2001%2D01%2D2004

== Publikováno od ledna 2000 do ledna 2004

Springer

Práce na pluginu byla již započata.

Vytvořen XSLT styl, řeším problém s vytvořením dotazu.


Jsem již schopen získat adresu pdf souboru, vetšina obtíží již překonána. Začínám pracovat na finální podobě pluginu.


Vyřešen problém s identifikací pluginu

dříve:
 HTTP User Agent: Java/1.5.0_02
nyní:
 HTTP User Agent: MUNI search gateway/1.0 (Linux i686; en-US)

V poslední verzi je identifikace agenta vybírána náhodně z dvaceti možností.

Plugin využívá třídy PluginHelper pro jednodušší a přehlednější implementaci. Zpracování XML dat do odpovídající podoby je nutné implementovat přímo v kódu pluginu, nelye vzužít metodu z PluginHelperu. Musí se simulovat klikání na jednotlivé odkazy, server Springer si uchovává informaci o aktuální stránce a podle toho vrací odpovědi. Je nutné "proklikat" vsechny nalezené odkazy.