Google Web APIsってなんなの †Google Web APIsとはGoogleの検索機能をWebサービスAPIを通じて使用できるというモノです。なんだか、とても楽しいことができる気がします。 とりあえず、使ってみる。 †ライセンスの取得(無料)と、APIのダウンロードをするだけみたいです。 http://www.google.com/apis/index.htmlにアクセスし、メニューより
サンプルをたたいてみる。 †ダウンロードしたファイル内にはサンプルが含まれています。とりあえず使ってみました。 java -cp googleapi.jar com.google.soap.search.GoogleAPIDemo "ライセンスキー" search "きのさいと" ってやってみると、結果が返ってきました。。 Parameters: Client key = xxxxxxxxxxxxxxxxxxxxx Directive = search Args = きのさいと Google Search Results: ====================== { TM = 0.632057 Q = "きのさいと" CT = "" TT = "" CATs = { <EMPTY> } Start Index = 1 End Index = 10 Estimated Total Results Number = 21 Document Filtering = true Estimate Correct = false Rs = { [ URL = "http://www.masatom.in/pukiwiki/index.php" Title = "FrontPage - <b>きの</b><b>さいと</b> Wiki" Snippet = " <b>...</b> クラス図の基礎(3). edit ページ名 変更. 使用中のひと:2<br> 人. ようこそ「<b>きの</b> <b>さいと</b>」へ. このサイトはMasatomi KINO <b>...</b> " Directory Category = {SE="", FVN=""} Directory Title = "" Summary = "" Cached Size = "46k" Related information present = true Host Name = "" ], [ URL = "http://search.goo.ne.jp/web.jsp?TAB=&MT=frontpage+apache" Title = "[frontpage apache] goo ウェブ検索結果" Snippet = " <b>...</b> サイトとして動かす方 法。. ... http://qwik.jp/ - 7k - キャッ<br> シュ - 別ウィンドウ 表示. 7 FrontPage - <b>きの</b><b>さいと</b> Wiki ... JDIC <b>...</b> " Directory Category = {SE="", FVN=""} Directory Title = "" Summary = "" Cached Size = "36k" Related information present = true Host Name = "" ], URL = "http://yoichiro.cocolog-nifty.com/eclipse/" Title = "Eclipseプラグイン開発" Snippet = "Eclipseプラグイン開発. Eclipseプラグイン 開発は至難の業!?<br>日々の苦悩から技術を蓄積する ために綴る日記です。. <b>...</b> " Directory Category = {SE="", FVN=""} Directory Title = "" Summary = "" Cached Size = "38k" Related information present = true Host Name = "" ] } } これはおもろいかもー Apache Axisを使う †http://archive.apache.org/dist/ws/axis/1_2RC2/ よりダウンロードしてApache Axisのランタイムを使ってみました。 WSDLからJavaスタブを作る †java org.apache.axis.wsdl.WSDL2Java -p nu.mine.kino.googleapis GoogleSearch.wsdl パスはあらかじめライブラリに通しておきましょう*1。 ちなみに引数でwsdlを指定しますがhttp://で始めればインタネット上のファイルを指定することもできます。 Axisランタイムのサンプルプログラム †public class TestMain { public static void main(String[] args) throws ServiceException, RemoteException { GoogleSearchServiceLocator locator = new GoogleSearchServiceLocator(); // locator.setGoogleSearchPortEndpointAddress(); GoogleSearchPort googleSearch = locator.getGoogleSearchPort(); GoogleSearchResult result = googleSearch.doGoogleSearch( "xxxxxxxxxxxxxx", "きのさいと", 1, 10, false, "", false, "", "", ""); ResultElement[] elements = result.getResultElements(); for (int i = 0; i < elements.length; i++) { ResultElement element = elements[i]; System.out.println("-----------------------------------"); System.out.println("タイトル: " + element.getTitle()); System.out.println("URL: " + element.getURL()); System.out.println("サマリー: " + element.getSummary()); } } } プロクシ越えとか †プロクシーとか、プロクシ認証とかの設定方法がわかりません。とりあえず、Java/TIPS集#u29f0f6c 関連リンク †この記事は 現在のアクセス:9516 |