X



GoogleAPIってどうよ?
0001nobodyさん垢版02/04/12 21:27ID:Mmm+bS50
これってなんなの?
0174ぼるじょあ ◆ySd1dMH5Gk 垢版03/08/02 04:53ID:???
     ∧_∧  ∧_∧
ピュ.ー (  ・3・) (  ^^ ) <これからも僕たちを応援して下さいね(^^)。
  =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
  = ◎――――――◎                      山崎渉&ぼるじょあ
0175nobodyさん垢版03/09/12 11:29ID:L2Twm04Z
PHPで日本語が通るサンプルが欲しいんですけれど
ありませんでしょうか?

自分で作ってみたんですけれど日本語で検索すると
結果がいつも同じものになってしまいます。

ちなみにNuSOAPを使ってます。
よろしくお願いします。
0176nobodyさん垢版03/09/12 12:50ID:wy8c1f8H
ぬるり
0177nobodyさん垢版03/09/18 13:32ID:OomwOh7u
.
0178nobodyさん垢版03/09/18 13:42ID:OomwOh7u
googleapiつかわずに、これと似た機能を実現するにはどうすればいいNO?
1000query/日じゃあ、つかえねーんだよ!
0179nobodyさん垢版03/09/18 13:50ID:???
API通さないで検索結果拾い捲るとアクセス制限喰らうらしいが
0181nobodyさん垢版03/09/18 17:55ID:/RiQwiHS
>>179
>>API通さないで検索結果拾い捲るとアクセス制限喰らうらしいが
どーゆーこと?ヴァカにもわかるように教えてくださいっつーの!!
0182nobodyさん垢版03/09/18 20:14ID:nGSwS+tg
>179
1秒間隔で、連続して検索を実行すれば、プログラムで検索を
実行しているのが、ログファイルからばれてしまう。でも、
5秒以上間隔をおけば、API通さないで検索結果拾いをしても
ばれない。
0183nobodyさん垢版03/09/18 20:17ID:nGSwS+tg
>179
Google Hacksという本に書いてあった。でも、日本の
Googleのページのどこを読んでも、「API通さないで検索結
果拾いを禁止する」なんて書いていませんよね?
0184nobodyさん垢版03/09/18 21:40ID:ykzED/23
>>182
まじっすか?
じゃあ、5秒以上間隔をあければ、1日1000query以上も官能なの?
0185nobodyさん垢版03/09/18 21:55ID:nGSwS+tg
>184
APIを通さなければ、一日何千回でも使えるが、短時間に連続して
アクセスすると、API以外のプログラムでのアクセスと判断され、
制限がかかる、ということ。
0187nobodyさん垢版03/09/19 19:19ID:d1imFEE2
googleapiをダウンしたんだけーど、
% java -cp googleapi.jar com.google.soap.search.GoogleAPIDemo ライセンスキー search プロ野球
としても検索されずに、こんなんが出てきやがった!!

Parameters:
Client key = ライセンスキー
Directive = search
Args = プロ野球
Exception in thread "main" java.lang.InternalError: unexpected exception during linking: java.lang.ClassNotFoundException: com.ibm.xmi.framework.WriterFactory

だれか、助けてぷりーず。
ちなみに、OSはRD9.0でつ。
0188187垢版03/09/19 19:20ID:d1imFEE2
RDじゃなく、RedHatです。
0189221垢版03/09/19 22:06ID:8UmudfeU
age
0190(*∠_*) ダカラドーシタ垢版03/09/27 17:11ID:???
■日本人プログラマーよGoogleを攻略せよ 2003年09月24日 CNET Japan - 梅田望夫・英語で読むITトレンド: http://blog.cnetnetworks.jp/umeda/archives/000697.html

Google Code Jamというプログラミングコンテスト(CNET Japan速報記事「米グーグル:「プログラミングコンテスト出場者を求む」」をご参照)が10月から11月にかけて開かれる。
参加資格は18歳以上(世界中の誰でも)。予選はオンラインで、決勝(トップ25人)はシリコンバレーのGoogle本社で行なわれる。
腕自慢の日本人プログラマーたちには、この機会にぜひその実力を発揮してほしい。

Google Code Jamのファイナリストといえば、これから腕一本でプロとして生きていきたい若い人にとっての大きな勲章になる(中途半端な学歴なんかよりうんと価値がある)。
ファイナリストに残る日本人がいれば、日本人プログラマーの実力が世界でもトップレベルにあるという事実を、広くアピールできるだろう。
さて、コンテストの仕組みとスケジュールであるが、

参加者全員から500人にふるい落とす「Qualification Rounds」、
500人を250人に絞る「Online Elimination Rounds 1」、
250人から25人に落とす「Online Elimination Rounds 2」。
ここまではすべてオンラインなので、自宅から参加できる。
そして、ファイナリスト25人はGoogle本社での「Onsite Championship Round」に進むことができる。

★google code jam 公式サイト(excite翻訳) http://www.excite.co.jp/world/url/body?wb_url=http%3A%2F%2Fwww.topcoder.com%2Fpl%2F%3F%26module%3DStatic%26d1%3Dgoogle%26d2%3Dgoogle_overview&wb_lp=ENJA&wb_dis=2
0191nobodyさん垢版03/10/12 14:14ID:v0QvxQMA
GoogleAPIってまだβなんだっけ?
課金とかはいつから始まるんだろう

#ライセンスキーが行方不明だよ、面倒くさいなぁ
0192nobodyさん垢版03/10/24 21:27ID:???
"?"とか"~"とか普通は検索できない文字を検索する方法はないんですか?
0193nobodyさん垢版03/10/30 21:08ID:???
googleAPI使っている香具師っている?
いや、なんとなく。
だって、API叩かなくても、通常の検索画面から
いろいろ切り出すだけで十分っぽいから
0194nobodyさん垢版03/10/30 21:26ID:fIsrcUrh
<稲中卓球部読んだことある?「しねしね団」は人類の敵
万病の元(アトピー性皮膚炎)
記憶のカギを握っている。男や女?>
メールや口伝えで
これをできるだけ多くの人に伝えること
0195nobodyさん垢版03/11/01 23:08ID:???
>>192
Google Hacks に載ってるという記事をどこかで見ました。
Google Hacks は持っていないので、詳細は不明です。
0196nobodyさん垢版03/11/02 10:50ID:???
>>193
使ってますよ。(まだ実験段階ですが)
検索画面から切り出す処理がめんどくさいと言うのか・・・
0197nobodyさん垢版03/11/18 02:50ID:JBgGg7JE
age?
0198nobodyさん垢版03/11/22 03:21ID:fqQ05iK2
有害サイトだけを検出する
コンテンツづくりをしたいのですが、
GoogleAPIだと可能でしょうか?
0199nobodyさん垢版03/11/25 12:18ID:Jgt+9Lne
>>198
なんかSAFESEARCHってオプションが有ったけど
(有害ページ(?)をブロックするオプション)
>setSafeSearch(boolean safeSearch)
これを使ってほげほげするのはどうよ?
0200nobodyさん垢版03/12/05 23:54ID:Ih/eg1z8
少し以前まではデフォルトで日本語検索できてましたが、
最近デフォルトでは出来なくなりました。
他にそのような方いますでしょうか?
0201nobodyさん垢版03/12/06 00:32ID:???
馬鹿じぇねえの。
cookieが消えたんだろ。初心者うざー(ーー;)
0202nobodyさん垢版03/12/06 21:20ID:cFpL96Ba
>>201
0204nobodyさん垢版03/12/13 13:03ID:???
無かったら作ろう

と言うことで、
最近やったのは、google web apisからHIT数を取って来て、
その変化をmrtgのグラフにしてみたりしている。(意味があるかわからんけど)
0205nobodyさん垢版04/01/01 12:09ID:???
>>192
googleに問い合わせてみたが、"無理"と。
C++とかJ#みたいな単語についてのみ使える方法を考えていると。

>>195
となると益々、GoogleHacksに載っている内容が木になりますが
0207nobodyさん垢版04/01/10 03:30ID:???
~は無理なんじゃない?
検索オプションであるから
0209nobodyさん垢版04/01/11 04:25ID:???
できないって。

"~" Searches

You may want to search not only for a particular keyword, but also for its synonyms. Indicate a search for both by placing the tilde sign ("~") immediately in front of the keyword.
0210nobodyさん垢版04/04/16 00:36ID:b5fmr+qV
hosu
0211nobodyさん垢版04/05/13 14:00ID:gihnq5aI
キャッシュデータが使いたいです

resultElementsで
URL
title:タイトル
snippet:ヒットした文字列のデータ

 ってのはわかったのですが、キャッシュは何になるんですか?
0212211垢版04/05/13 18:17ID:gihnq5aI
誰か・・。゜゜(>ヘ<)゜ ゜。ビエェーン
0213nobodyさん垢版04/05/16 18:25ID:???
登録してみたんだけど、メールが来ない。
二、三日は待った方が良い?
0214nobodyさん垢版04/05/16 20:31ID:???
>>213
今はどうなっているのかわかりませんが、
ライセンスキーは、申し込み後にすぐメールできます。
ですので、違ったメールアドレスで再登録してください。
0215213垢版04/05/16 22:07ID:???
>>214
ありがとう。
即座にメールが返って来て登録できました。
0216211垢版04/05/18 15:58ID:XH5CU6iK
誰か>>211に・・。゜゜(>ヘ<)゜ ゜
0217213垢版04/05/18 20:48ID:???
>>211
my $key='....';
my $query='http://www.google.com';
my $googleSearch = SOAP::Lite -> service("file:GoogleSearch.wsdl");
my $result = $googleSearch -> doGetCachedPage($key, $query);
print $result;

Perlなら、こんなんでできたよ。
適当だから、何か間違ってるかも。

# SOAPとXMLを勉強する為に入れてみたけど、さっぱり分からんちん。
0218211垢版04/05/20 16:17ID:???
nusoapで出来るのかな?
でも情報ありがとう。m(。_。;))m ペコペコ…
0220nobodyさん垢版04/07/26 23:23ID:BExJxWuL
過疎板でageて何が悪い!
0221nobodyさん垢版04/07/27 12:43ID:???
>>211
漏れもはまったことありまつ
たしか、apiのtopページからログインしたら
すぐにメールが送られてきたような…
0222221垢版04/07/27 12:45ID:???
間違えますた
>>211 ではなく >>213
イテキマース
0223nobodyさん垢版04/07/27 15:45ID:???
コラッ! イクナ 人いないんだかだ
02241234垢版04/08/04 18:59ID:5KUncmzd
日本語ができない、どうするの?
0226nobodyさん垢版04/08/06 09:07ID:???
>>224, 225
日本語が出来ないと言うのは?
日本語サイトのみ検索? -> lr(language restrict) で ja を指定。
それともエンコーディング? -> utf-8でデータを送る。サーバーが返信するデータもutf-8
0227225垢版04/08/06 21:48ID:???
>>226
後者の方です。

私は1年ぐらい前、perlのSOAPLiteでgoogleAPI扱っていた。

その際、日本語の検索が出来ない事に困った。
(日本語検索が出来ないとは、「HIT数が明らかに少ない」
「上位に来るはずのページがHITしない」
「エンコードの指定が間違っているページが上位でHITする」など)

そこで、このスレの>>1-100あたりや、他のサイトを参考にし
$SOAP::Constants::DO_NOT_USE_CHARSET を変更する方法を試したところ、
正常に検索できるようになった。
(通常のブラウザから検索するのと同じ結果が返ってきた)

しかし、1ヶ月ぐらい経ったら、何故かまた検索できなくなった。
サーバに送信している文字列のエンコードがおかしいのではないかと思い
送信する文字列のエンコードを変えてみたりなど、いろいろ試行錯誤してみたが、
結局あきらめた、という経緯です。
0228nobodyさん垢版04/08/08 03:34ID:???
>>227
EUC-JPなどにすると結果がおかしくなったりした事はあったけど、
Google APIs referenceにもエンコードはUTF-8にしろと書いてあるので
検索する文字列のエンコードをUTF-8にしてみては?(ie, oeは無視されれるので関係ない)

後、$SOAP::Constants::DO_NOT_USE_CHARSET は変更しなくてもいいはず。
Net::Googleでは変更していなかったけど、UTF-8で送るとちゃんと日本語検索できてたよ。

検索結果が少なくなるのは英文字の検索でも同様なので、
日本語固有の問題ではないと思う。
0229225垢版04/08/08 12:41ID:???
>>228
UTF-8にエンコードはもちろん試してみました。
(Jcode.pmを使ってjcode("検索ワード")->utf8という風に)

Net::Googleは今まで知らなかったので、
調べて試して見ました。
しかし、やはり検索はうまくできてないようです。
(とあるwordで検索したら、ブラウザで検索するより100分の1程度しかHITしない)

原因がわかったら教えてください。
0230225垢版04/08/08 12:42ID:???
書いたソースです
----
#!/usr/local/bin/perl
use Jcode;
use Net::Google;
my $google = Net::Google->new(key=>'*********************************') ;
my $search = $google->search();
$search->query('"'.jcode("検索ワード")->utf8.'"') ;
$search->lr("");
$search->starts_at(0);
$search->max_results(1);
$search->restrict("") ;
$search->filter(0) ;
$search->safe(1) ;

foreach $r ( @{$search->response()} ) {
print " " . $r ."\n" ;
foreach $a2 (keys %$r ) {
print " ".$a2. " -> ".$r->{$a2}. "\n" ;
}
}
foreach $a1 ( @{$search->results()} ) {
print $a1 ."\n" ;
foreach ( keys %$a1 ) {
print " ". $_ ." ->" . $a1->{$_}. "\n" ;
}
}

---
0232nobodyさん垢版04/08/11 01:25ID:XAxg01DA
PHPとnusoap.phpでつくったのですが、
英語でも日本語でも文字化けせずに検索できるものの、
一致件数が、オリジナルGoogleを検索したときより大幅に少ないです。

例)
短歌 オリジナルGoogle⇒312,000 API⇒5610
tanka オリジナルGoogle⇒277,000 API⇒96200

とある記事で、本番で使ってるDBとAPI用のDBは異なると読んだのですが、
みなさん、こんなに違うもんですか?

ちなみに、PHPは、内部エンコーディングはEUC、OutputはShift_JIS。
SOAPに渡す前に検索文字列はUTF-8に変換し、結果はEUCに変換してます。
というか、検索はできてるので、文字コードはOKだと思うのですが・・・
うーん・・・みなさんのとこではいかがでしょう?
0233232垢版04/08/11 01:29ID:???
>とある記事で、本番で使ってるDBとAPI用のDBは異なると読んだのですが、

あ、これ、>>231に書いてある記事だったw 失礼。いろいろ検索しまくってたので・・・
0234232垢版04/08/11 01:35ID:???
あ、すみません。結果が文字化けしてないと思ったら、一部文字化けしてました。

やはり文字コードの問題か・・・
0235232垢版04/08/11 01:48ID:???
>>234文字化けじゃなかった、中国語だった。。。スレ汚しすまそ
0236Re:APIでの検索結果が少ない問題垢版04/08/11 08:32ID:7ZtbNsSB
>>229-235

この件に関しては日本語かどうかは関係ないという認識でいいかな?根拠は>>228で示した通り、
また、APIで検索した時にHit数が少なくなるのは英語圏でも問題になっています。

>231のURI先からリンクされているforumに書かれていますが、
ブラウザで検索した時は、同一サイトのリンクをカウントするのに対し、
APIで検索した時は同一サイトのリンクは一つのみなので、結果が少なくなるそうです。

google.public.web-apiというnews groupでも同様の投稿を見かけました。
http://groups.google.com/groups?group=google.public.web-apis
頻繁に質問されてます(FAQになっていてもよさそうなのに)

どうすればブラウザで検索した時と同じ結果が得られるのかということに皆興味があるかと思うのですが
残念ながら、僕が探した限りでは結論を出している情報は見当たりませんでした。

filterオプションの設定とかが関係ありそうかなと思ったのだけど
検索する語によっては、影響があったりなかったり ...期待した通りの振舞をしてくれなかった。

0237225垢版04/08/12 03:09ID:???
>>236

>この件に関しては日本語かどうかは関係ないという認識でいいかな?根拠は>>228で示した通り、

全然違うと思われ
>>228に書かれていること(つまり、UTF-8でサーバに送っていないから駄目)が本当だとしたら、
>>230に示したソースは?


>どうすればブラウザで検索した時と同じ結果が得られるのかということに皆興味があるかと思うのですが
>残念ながら、僕が探した限りでは結論を出している情報は見当たりませんでした。

>>231のサイトには(Yahooの検索だけど)ブラウザと同じ結果が得られると書いてありましたが、
これはどうですか?
http://www.google.com/と同じ結果をgoogle web apisから得ることは、私も調べた限り不可能では、と思いました。
0238nobodyさん垢版04/08/12 08:45ID:BNPcYl+E
>>237
APIで検索した時のHIT数が少ないのは他の言語でも問題になっている為、
日本語かどうかが直接問題になっているのではない。という主張だったんですが、、
エンコードが違っていても検索結果が変わってくるので、全く関係なくはないかな。
"エンコードに関わらずHit数が少なくなる要因がある"に訂正します。

UTF-8以外の特定のエンコードでクエリを送った場合、
その検索文字のエンコードのみが検索対象になるようです。
例えば、EUC-JPの文字を送れば検索結果もEUC-JPで返ってくる。
期待していたサイトが上位にこないという現象は、
検索する文字列をのエンコードをUTF-8以外で送った場合に起こるはずです。

エンコードに関わらずHit数が少なくなるというのが>>236で示した別の問題です。
> ブラウザで検索した時は、同一サイトのリンクをカウントするのに対し、
> APIで検索した時は同一サイトのリンクは一つのみなので、結果が少なくなるそうです。
0239nobodyさん垢版04/08/12 09:06ID:BNPcYl+E
>>273
>>231のサイトには(Yahooの検索だけど)ブラウザと同じ結果が得られると書いてありましたが、
これはどうですか?

これは、YahooがGoogle APIsを使っていたと言う根拠にはなると思うけど。
>>236でいいたかったのは、http://www.google.com/search の方でした。


0240nobodyさん垢版04/08/19 18:56ID:Kc/QSXo3
ところで、1000クエリ超えたらどうなんの?
注意されて止められるのかな
0241225垢版04/08/19 22:06ID:???
>>239までで、HIT数が少なくなる原因

(1)Google Web Apisと、http://www.google.com/がそれぞれ違うデータベースサーバを
 持っているため(Google Web Apis用のデータベースは、量が少ない)
  →参考:http://www.goodpic.com/mt/archives/000132.html

(2)同一サイトのリンクをカウントの違いにより、Google Web Apisの方がHIT数が少なく見える
  →参考:>>236


(3)日本語で検索すると、正常に検索が出来ないため、HIT数が少ない
  →正常な検索結果では無いと思う理由:
   ・HIT数が極端に少ない(100分の1ぐらい)(参考>>232
   ・中国語など文字化けしたようなページばかりHITする(参考>>234>>227)
   ・上位に来るはずのページがHITしない(例:「2ちゃんねる」で検索しても上位にwww.2ch.netが来ない)(参考>>227)
 
  →予想される原因:
   ・EUC-JPで送っていないから?(>>228)
    →EUC-JPで送信しているプログラムの例>>230(これでも駄目)
   ・その他???

とにかく、日本語(他外国語も?)のエンコード周りでとらぶっている予感がする。
0242nobodyさん垢版04/08/20 07:15ID:OVDxpCAg
>>240
http://www.google.com/apis/api_faq.html#tech7
Google APIs (java)とかだったら 例外(GoogleSearchFault) が throw されます。

>>241
まとめありがとう。一点だけ訂正、EUC-JP ではなく UTF-8 ですね。

>>230 のコード
Jcodeはインストールされていなかったので、
エンコード処理を標準モジュールの Encode::from_to に変更して試したところ、
http://www.2ch.net/ が検索結果のトップに出ました。
2ちゃんの"2"は全角と半角の両方で試しましたが、どちらも同じ結果です。

EUC-JPで"2ちゃんねる"や"2ちゃんねる"を検索すると下のURLがひっかかりました、
検索上位に期待したサイトがこない、文字化けしたようなページばかりHitするって
こういう事じゃないのかな? UTF-8で検索している限りではこういう事は起こった事ないです
http://www.foundertech.com/Stock/%B7%BD%D5%FD%BF%C6%BC%BC%CD%B6%D7%CA%D5%DF%B9%D8%CF%B5%B9%DC%C0%ED%D6%C6%B6%C8.pdf
http://www.stopwar.org.uk/Resources/cairo2callpersian.pdf

(230のコードで追加/変更した箇所)

use encoding 'utf-8', STDOUT => 'euc-jp'; # consoleでテストしていた為
use Encode qw/from_to/;

my $word = shift(@ARGV); from_to($word, 'euc-jp', 'utf-8');
# snip
$search->query($word) ;

0243nobodyさん垢版04/08/20 09:01ID:???
Googleからもらったトークンを使ってアクセスするわけだけど、
CGIなんかにして検索フォームを設置するとか、専用アプリケーションにするとかした場合、
自分のトークンを埋め込まないといけないわけで、利用者が多くなれば
1000クエリ/日 の制限なんてあっという間に超えてしまいそうなんだが、どういうもんなんでしょ?
0245nobodyさん垢版04/08/20 15:00ID:???
>>244
なるほど〜。てことは、多くのgoogleを使って面白いことをしている検索サイトは
googleで検索した結果のHTMLを解析しているってことなんだね。

Amazonのはどんな規約だったんだろう
0246nobodyさん垢版04/08/21 09:50ID:Ws+CcWA8
>>245
1日1000クエリ内に収めているか、
商用だとしたら、前のyahooみたいにgoogleと提携してるんじゃない?

> googleで検索した結果のHTMLを解析している
これも商用目的の場合は禁止だったはず。
自動で送られてくる様なクエリーはチェックされているらしいです。

# Amazonは知らない。

>>241
追加情報。

Release Notes http://www.google.com/apis/release_notes.html
> Queries in CJK languages (Chinese, Japanese, and Korean) still do not work completely correctly. A future release will address these problems.

FAQより、最後の行 http://www.google.com/apis/api_faq.html#tech26
> The APIs still do not always return complete results for Chinese, Japanese, and Korean; we are working to remedy this issue.

APIsでは、日本語の検索は、まだ完全には対応されていない
ってことで結論になりそう?

CJKって事から察するに、恐らくエンコーディグの自動判別関連だろうけど、
これって "検索対象のサイト" が日本語/中国語/韓国語の場合、他の言語と区別出来ないって事かな?
検索する語のエンコードはUTF-8って指定されてるから、こっちは問題にならないよね?
0247225垢版04/08/22 00:37ID:???
>>241の"EUC-JP"は"UTF8"の間違い

>>242と同じように>>230を書き換えたが、
結果は>>230と全く同じ結果だった。

↓ソース
---
#!/usr/local/bin/perl
use SOAP::Lite;
use Net::Google;
use Encode qw/from_to/;
my $google = Net::Google->new(key=>'****************************************') ;
my $search = $google->search();
$word = "2ちゃんねる" ;
from_to($word, 'euc-jp', 'utf-8');
$search->query($word) ;
$search->lr("");
$search->starts_at(0);
$search->max_results(10);
$search->restrict("") ;
$search->filter(0) ;
$search->safe(1) ;
foreach $a1 ( @{$search->results()} ) {
print " URL ->" . $a1->{__URL}. "\n" ;
}

↓結果(上位5)
URL ->http://www.who.int/ifcs/Documents/Forum/ForumIII/f3-finrepdoc/Arabic/Annex1.pdf
URL ->http://www.who.int/ifcs/Documents/Forum/ForumIII/f3-finrepdoc/Arabic/MeetingSummary.pdf
URL ->http://www.who.int/entity/vaccine_safety/reports/ar/en/june2002_ar.pdf
URL ->http://www.who.int/entity/vaccine_safety/reports/ar/en/dec2002_ar.pdf
URL ->http://www.who.int/gb/ebwha/pdf_files/EB108/aeb108id2.pdf
0248225垢版04/08/22 01:07ID:???
つづき

で、本当にutf8で送信されているか8行目の後でチェックしてみた。
utf8で送信はされているはず
(参考:http://www.cybercom.co.jp/~mikio/other/tips/tips_contents.html)
↓ソース
---
$enc = guess_encoding( $word) ;
print " QueryEnc -> " .$enc->name."\n" ;
print " Query -> " .jcode($word,'utf8')->euc ."\n" ;

↓出力結果
---
QueryEnc -> utf8
Query -> 2ちゃんねる


また、気になるのは、サーバから戻ってくるsearchQueryが、エンコード等が正しいのか怪しい
utf8で帰ってきているけど、それをEUCに変換すると、デタラメな文字列になる・・・
↓ソース
---
print " returnQueryEnc -> " .$enc->name."\n" ;
print " returnQuery -> ".jcode($r->{__searchQuery},'utf8')->euc ."\n";
$enc = guess_encoding( $r->{__searchQuery} ) ;

↓出力
---
returnQueryEnc -> utf8
returnQuery -> 羨・・〓束〓〓・・・〓〓・・
0249225垢版04/08/22 01:08ID:???
これらから原因予測すると
 ・そもそもGoogle Web Apisは日本語検索に対応してない
 ・$search->query以外のパラメータが影響している
という辺りか?

>>242は日本語検索できるが、>>247は出来ないとなると、
perlのバージョンやらSOAPLiteのバージョンやらOSやらの環境の違いが影響しているのじゃないかと
疑った方がいいのやろうか?

>>242は正常に検索できているのに、「APIsでは、日本語の検索は、まだ完全には対応されていない(>>246)」
で片付けるのはなんかしゃくだな・・

どこか私の設定等が悪いのだろうか?

自分でさらに調べるとすると、流れてるパケットの>>242内容の違いを調べて見たい。。
(それが近道だと思ったりする)(ただ、>>242さんが協力してくれれば)
0250225垢版04/08/22 01:15ID:???
>>246
ところで思ったんだけど
商用のgoogle web apisって存在するの?

少なくともyahooと連携しているのは、SOAPは使ってないと思う。
(何か別のプロトコルを使ってるんじゃないかと思った)

理由:SOAPは遅いから
(一度httpを通さないと行けないし、
わざわざhttp以外を使ってまでSOAPを使うのだろうかと、疑問に思った)
0251242垢版04/08/22 13:44ID:+ndPVteA
>>249
Debugするなら Net::Google->new( key => "...", debug => 1 ) で
HTTPのメッセージが出力されますよ。

utf-8 -> euc で化ける件は、
utf-8の文字列がそもそも日本語でない(EUC-JPの範囲外)場合に起こりそう
一度、hex dumpしてみては?

>>250
http://www.google.co.jp/intl/ja/terms.html
商用利用したい場合は、あらかじめ Google と契約を結ぶ必要があるそうです。

SOAPの通信レイヤの実装はHTTPだけとは限らないので、
また、HTTPでもチューニング次第で多少のパフォーマンス改善は出来る。(keep-aliveにして接続をプールする、等)
逆に保守とか普及コストの面からSOAPを選択。って主張もあり得るんだし、
非公開部分の実装までは、ちょっと部外者にはわからないんじゃないかな...
# APIsが異なるデータベースを持っているというのも、調べた限りでは殆んど噂レベルの推測

さすがに、通常のhttp(1queryで1接続)ではないと思うけどさ。
0252242垢版04/08/22 13:46ID:+ndPVteA
参考までに、うちのperl環境です。(consoleで入力/表示 共に EUC-JP)

% perl -v
This is perl, v5.8.2 built for i686-linux
...

% cat chkvers.pl
#!/usr/bin/env perl
for (@ARGV) {
my $file = $_; $file =~ s|::|/|g;
if (require "$file.pm") {
import $_; printf("%-20s\t%s\n", $_, (VERSION $_));
}
}

% ./chkvers.pl Net::Google Net::Google::Service Net::Google::Search SOAP::Lite XML::Parser Encode
Net::Google 0.61
Net::Google::Service 0.4
Net::Google::Search 0.5
SOAP::Lite 0.60
XML::Parser 2.34
Encode 1.9801
0253225垢版04/08/29 00:08ID:???
>>251
最近多忙につき、今度試してみます
0255253垢版04/10/03 13:22:55ID:???
>>254
ごめん
しばらく多忙です。。
0257nobodyさん垢版2005/05/07(土) 22:13:08ID:???
ねえねえ、GoogleAPIってどうよ?
0258nobodyさん垢版2005/06/09(木) 01:14:47ID:0KvqtzJc
日本語とおらねーーー
UTF8に変換してdoGoogleSearchに投げてるのに結果がぬるぽすぎ。
日本語は表示はできるのに・・・・

0259nobodyさん垢版2005/08/15(月) 10:51:48ID:???
ここ数日、日本語の検索キーが通らなくなってるみたいだけど、
なぜ?
0260nobodyさん垢版2005/08/15(月) 12:43:06ID:???
>>259
うちも一昨日くらいまでは動いてたんだが。
0261nobodyさん垢版2005/08/16(火) 00:27:45ID:xBOEkY6h
あら、やっぱりGoogle側の問題?
プログラム弄った記憶ないのに変な検索結果出てたからもしやと思ったんだけど・・
0262nobodyさん垢版2005/09/06(火) 17:05:56ID:???
http://www.google.com/apis/api_faq.html

> 26. How do I make queries in languages other than English?
>
> The Google Web APIs support requests and responses in UTF-8, allowing you to make requests in all of the world's languages. The
> original release included parameters <ie> and <oe> for inputEncoding and outputEncoding. These parameters are no longer used and
> will be removed in a future release. The APIs still do not always return complete results for Chinese, Japanese, and Korean; we are
> working to remedy this issue.
0263nobodyさん垢版2005/09/13(火) 15:11:15ID:???
結局、Google側の対応を待つしかないのかな?
0264nobodyさん垢版2005/09/16(金) 12:33:54ID:???
なにか対策知っている人いませんかー(T_T)
0265nobodyさん垢版2005/09/16(金) 15:13:06ID:???
>>263,264

>>258の問題なら、?xxxxx;にすれば通りますよ。
xxxxxはUCS-2の10進数で。

別の問題のことを言っているのならスマソ。
0266nobodyさん垢版2005/09/20(火) 21:47:39ID:???
>>265
あ、ありがとうございます!
もし良かったら、もう少し詳しく教えていただけませんか?
調べて見ましたが、変換方法とか表記方法とかまだよく分かってなくて…
0267nobodyさん垢版2005/09/21(水) 13:29:50ID:???
>>266
失礼、文字が化けてました…。orz
>>265の?の箇所は半角の&#です。

例えば、FirefoxではJavaScript:escape('あいう')は%u3042%u3044%u3046となります。
3042とかがUCS-2の16進数なので、これらを10進数に換えたもの

&#12354;&#12356;&#12358;

をGoogleAPIに渡してください(&#は実際には半角です)。
SJISからUCS-2への変換とかはiconvなりを使用して下さいな。
0268nobodyさん垢版2005/09/22(木) 13:09:07ID:???
>>267
すみません、このようにやってもダメ…です。
ものすごく単純に考えてしまったのですけど。こういうことではなかったんでしょうか…?

my $gsrch = SOAP::Lite->service("file:$google_wsdl");
my $googlequery = "&#12354;&#12356;&#12358;"; #&#は実際には半角
my $result = $gsrch->doGoogleSearch($google_key, $googlequery, 0, 10, "false", "", "false", "lang_ja", "utf8", "utf8");



…と思ったら、以前書いたGoogle Web APIsを使ったプログラムが普通に動きました。
Google Web APIsの挙動が以前と同様に戻ったらしいです。
参考にしたところ: ttp://www.antun.net/tips/soap/google.html

>>265さん、せっかく教えていただいたのにうまく活用できる能力がなくてスミマセン…
でも勉強になりました。教えて君だったのに、丁寧に答えてくださって感動しました。
ありがとうございました。
0269265垢版2005/09/22(木) 15:25:48ID:???
>>268
あ、元に戻ったのか。めでたい。

そのコードは参考URLとほとんど同じだけど何が違うんだろう?
ライブラリのバージョンが古かったりするのかな。
0270nobodyさん垢版2006/02/14(火) 22:44:24ID:yRwFk5BE
いやまあ、知ってる人は知ってることなんだけど、googleの検索では、
デフォルトでSafeSearchという機能がOnになっていて、
sexとかセックスとかfuckとか入れても、きわどい画像はブロックされて出てこないようになっている。
この設定はなぜか日本語設定では変更できない、
というか、そういうオプションがあること自体見えないようになっている。

Googleでエロ画像検索する際の裏ワザ  
http://plaza.rakuten.co.jp/erokabu/diary/200602040003/
0271nobodyさん垢版2006/04/19(水) 17:40:40ID:269rMMFs
最近、doGoogleSearchで
「502 Bad Gateway」が頻発するんだけど、
サーバーの調子悪いのかな?
0272nobodyさん垢版2006/04/20(木) 17:50:05ID:wQ0+Sz3i
誰も使ってないのか?
おとといあたりから
「502 Bad Gateway」連発で使い物にならんぞ
0274nobodyさん垢版2006/04/22(土) 21:43:19ID:???
googlemapのドラッグ中にブラウザの下側に表示されているIPアドレスを
URLとして参照してみても、画像を閲覧することができません。
しかし、↓ のものは閲覧できるみたいです。

http://mt2.google.com/mt?v=w2.6&x=3620&y=1600&zoom=5

なんでだろう? 理由が分かる人いらっしゃいますか?
mt2ってgoogleのサーバではないんですかね?
レスを投稿する


ニューススポーツなんでも実況