トップページunix
987コメント301KB

全文検索エンジンEstraier

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。NGNG
個人用途向けの全文検索エンジンEstraierに関する話題を扱う
スレッドです。

http://estraier.sourceforge.net/
0261名無しさん@お腹いっぱい。2005/05/31(火) 23:04:02
OpenSearch対応してくんないかな
0262名無しさん@お腹いっぱい。2005/06/01(水) 11:26:51
今日から金曜まで東京ビッグサイトで開催中の LinuxConference では、

6/2 13:00〜 「全文検索システム Rast の設計と実装」
6/3 10:00〜 「全文検索 BOF」

などという企画をやってる。
0263名無しさん@お腹いっぱい。2005/06/04(土) 22:50:24
げ、昨日か… (;´Д`)ハァ
0264名無しさん@お腹いっぱい。2005/06/04(土) 23:10:40
Googleの文字が全部四角になってしまいました。
(□←ばかり)どうしてか教えてください。
0265名無しさん@お腹いっぱい。2005/06/05(日) 00:05:25
坊やだからさ。
0266名無しさん@お腹いっぱい。2005/06/05(日) 00:20:49
どうすれば大人になれますか?
0267名無しさん@お腹いっぱい。2005/06/05(日) 00:54:33
>>266
「電車男」という映画を見に行くとなにかヒントが得られるかもしれません。
0268名無しさん@お腹いっぱい。2005/06/05(日) 18:28:53
噂通り、インデックス作成がやたら速いね。
並列化できればGoogleとかに匹敵するんじゃないか?
0269名無しさん@お腹いっぱい。2005/06/06(月) 10:22:14
>262
全文検索BOFでは、NAMAZU開発者とRast開発者とHyper Estraierの開発者が
一堂に会して、開発思想とかを語ってくれた。
ただ、2時間もあった割には突っ込んだ話ができず、薄かった感じがする。
0270名無しさん@お腹いっぱい。2005/06/10(金) 22:35:21
Python&Perl&Rubyバインディングキターーーー
http://tokuhirom.dnsalias.org/~tokuhirom/tokulog/1193.html
0271名無しさん@お腹いっぱい。2005/06/10(金) 23:07:46
コアAPIのバインディングかぁ...
Rastと違ってAPIがリモートとローカルで違うらしいから、
やっぱノードAPIを待った方がいいんじゃないかと思う。
0272名無しさん@お腹いっぱい。2005/06/10(金) 23:27:57
パフォーマンスを考えるとコアAPI使って自分でサーバ書いた方がよかないか。
RubyとかだとHTTPサーバのツールキットもあるわけだし。
0273名無しさん@お腹いっぱい。2005/06/11(土) 10:40:11
HTTPd を自前で実装する、というときにパフォーマンスを考えるならスクリプト言語の
バインディングをわざわざ選ぶかなぁ?

むしろスクリプトで書いたプログラムにいちいちサーバ立てるのやってらんないという
面倒くさがり向きなんじゃないの。
0274名無しさん@お腹いっぱい。2005/06/11(土) 16:42:53
いや、HTTPdを実装すること自体にスクリプト言語が向いていると思う。
Cでなんてやってられない。
0275名無しさん@お腹いっぱい。2005/06/12(日) 03:31:38
そうかなぁ... libapr とか使ってみれば?
ちょうどいいから rast のソースでも読んでみなよ。

といいながらも ruby が楽しくなりつつある今日この頃です。
0276名無しさん@お腹いっぱい。2005/06/12(日) 09:49:52
APRはやばいでしょ。
WEBrick+HyperEstraierとかWEBrick+Rastってのが強力かつ簡単でよさげ。
0277名無しさん@お腹いっぱい。2005/06/12(日) 15:35:53
>>276
ライセンス問題?
0278名無しさん@お腹いっぱい。2005/06/12(日) 23:07:12
これってCygwinでも動きますか?
0279名無しさん@お腹いっぱい。2005/06/24(金) 07:37:52
デスクトップサーチっぽいのが出たね。
まだ作りこみが甘い感じだけど、今後に期待age。
http://www.mitsuki.no-ip.com/~seagull/software-archives/hyperestraier/gdestraier.html
0280名無しさん@お腹いっぱい。2005/06/24(金) 09:56:05
もうでさぽ
0281名無しさん@お腹いっぱい。2005/07/04(月) 01:40:52
>.279
open/closeシステムコールをを監視してスポットライト風にインクリメンタルアップデートが
できると面白そう。ガンガレ。
まずは更新があったファイルを指定するとその情報のみをアップデートする機能が
必要だな。既存のものだと全部を指定してアップデートする方法しか用意されてないからな。
0282名無しさん@お腹いっぱい。2005/07/04(月) 18:08:11
>> 281
いちお、estcmdに-sd -cm 付けてるです。
だから全更新してもタイムスタンプの新しいやつ以外はスキップされるですよ。
0283名無しさん@お腹いっぱい。2005/07/06(水) 00:48:17
>>281
namazuにしろなんにしろ従来のは全更新しかなかったと思うんだよね。
だから、逆に一部更新はできるのかと。
編集した利用者ならどこを編集したかわかっているわけだから全更新して
全部のディレクトリをなめる時間待たされるよりも更新した箇所を指定して
updateできたほうがよくない?

んで、その上でシステムコールを監視してスポットライト風アップデートですよ。
0284名無しさん@お腹いっぱい。2005/07/06(水) 03:03:16
システムコールの監視はカーネルに手を入れるかアプリをVM上で動かすか
しないと難しいんじゃない? いずれにしても、オーバーヘッドがでかくなってしまう。
移植性の問題もあるし。

よく更新されるディレクトリの監視頻度を上げるのと、ユーザが明示的に更新を指示
をするのを併用すれば実用上は十分だと思うけど。メールボックスとかだったら、アプ
リケーションのプラグインかなんかで更新ロジックを組み込めるといいね。
0285名無しさん@お腹いっぱい。2005/07/06(水) 10:40:58
カーネルまで触らなくても、ファイルシステムに細工をすればできるんじゃないか。
Windowsじゃ無理だけど、UNIX系ならそのへん独立してるし。

WinFSには全文検索っぽい機能が組み込まれているというウワサも聞いたけど、
どうなんでしょ。
0286名無しさん@お腹いっぱい。2005/07/06(水) 10:49:45
>>283
Hyper Estraierは、ディレクトリでなくファイルそのものを指定して
インデックスに登録できるよ。


>>284
famを使い、特に指定されたディレクトリだけ監視。
移植性と監視コストの問題はfamに丸投げして、各プラットフォームに最適
なアルゴリズムで監視できる事を期待。


更新された時に即座に更新だと確かにオーバヘッドが大きすぎなんで、
遅延してある程度のまとめ更新するデーモンをniceしておけば実用的な
範囲に収まるっぽくね?
いくらなんでも、数分前に更新した文書くらい探さなくても判るだろ。


それより問題は、インデックスをユーザ毎に持つと重複が多すぎるって
事だな。サイズもそうだけど、オーバーヘッドも整数倍になる。
業務の書類とかmanページを探したい時なんか完全に重複だね。

インデックス中の文書データに対するパーミッションをなんとかして、
システムグローバルなインデックス&検索機能のデーモン化をしないと
現実的でないような気がしてきた。
0287名無しさん@お腹いっぱい。2005/07/06(水) 11:04:33
>>285
ファイルシステムオーバーライドするのは面白そうなんで、
LUFS使って簡単に実装しようと思ったけど、
/usr をすげかえる気にならないし、対象ディレクトリが増えた時に
fstabの構成変えるのも馬鹿らしいので廃棄処分にしますた。
0288名無しさん@お腹いっぱい。2005/07/06(水) 15:04:04
数分前に更新した文書っていうけど、自分が更新したとは限らないのが問題。
事実、どっかからダウンロードしてきた文書をすぐに全文検索したくなる
ことは多い。それを考えると、やっぱり手動更新指示の機能もほしいよね?
Hyper Estraierの更新処理は異常に速いから、検索窓の横に「更新」ボタンを
つけておいて、結構気軽に更新をかけさせても実用になると思う。

ラジカセのメタファを使って、「再生(右向きの三角)」で検索をして、
「録音(丸)」で更新をして、「停止(四角)」で検索や更新の停止をして、
負荷状態を音圧っぽく表現するというのも面白いかもね。
0289名無しさん@お腹いっぱい。2005/07/06(水) 16:25:21
>>288
...目的のファイルが判ってるなら、grepした方が早いような気がする...
でもまぁ、同時ログインしてる別ユーザもいるから、確かに遅延はかなり小さく
しないと厳しい状況がありうるだろうね。

更新ボタンを置くのはいい考えなので、Quick build機能付けるよ。
0290名無しさん@お腹いっぱい。2005/07/06(水) 19:04:30
>>286
デスクトップ検索アプリを目指すなら、マルチユーザのインデックスの共有はそれほど考え
なくてもいいんじゃね?
自分のホームディレクトリを対象にしたインデックスさえ作れればほとんどのユーザは満足
でしょ。デーモン走らせないと使えないのは初心者向けでないような気がするよ。
副次的な機能として、他人のインデックスをリードオンリーで開けるようにして、チェック
ボックスをオンにすればそこの結果もマージして表示できるといいかも。
つまり他人のインデックスを更新できる必要はないってこと。
manとかの共有物のインデックスはrootで最初に作っておいて、/var 以下においておけば
いいんじゃない? その更新もわざわざデーモンにしないで、cron実行で十分でしょ。
0291名無しさん@お腹いっぱい。2005/07/06(水) 20:47:50
>>290
基本的にはそうなんだけどさ。
manなら問題ないけど。rootで作ると、本来ユーザに読み込み権限の無いファイルも検索
できて、要約も見えちゃうわけじゃん。
かといって、権限単位にインデックス作るというのも現実的でないし。
業務用の、たとえ共有ディレクトリに入っている技術経歴書とか、仕様書とかを対象と考えた時、
細かい制限ができないと問題だと思ったわけ。

つーわけで、ホームユーザには間違いなく十分だけど、職場で活用となると問題があるわけよ。


試してないけど、
> 副次的な機能として、他人のインデックスをリードオンリーで開けるようにして、チェック
> ボックスをオンにすればそこの結果もマージして表示できるといいかも。
これは現段階でできるような気がする。
今現在、検索用にはDBをリードオンリーで開いてるし、マージもデフォルトだし。
Hyper Estraierはリードオンリーで複数プロセスがオープンしても平気だし。


ってか、みんなのところでちゃんとビルドできてる?、、、って、だれも試してませんか、そうですか。
0292名無しさん@お腹いっぱい。2005/07/07(木) 00:53:57
見せたくないファイルはインデックスに入れないようにするしかないんじゃないか?
一般ユーザの読み込み権限(S_IROTH)がついているファイルだけ読み込むように
すれば大抵は大丈夫だと思うけど。
0293名無しさん@お腹いっぱい。2005/07/07(木) 13:16:11
>>286
> Hyper Estraierは、ディレクトリでなくファイルそのものを指定して
>インデックスに登録できるよ。

 ・・・できないんですけど?
>第3引数としてファイル名を指定すると、そのファイルから処理対象のパスのリストを読み込みます。
 って書いてあるし・・・
0294名無しさん@お腹いっぱい。2005/07/07(木) 13:43:20
>> 293
そのリストにファイル名書くんだよ。

find . -name '*.txt' | estcmd gather オプション インデックス -

0295名無しさん@お腹いっぱい。2005/07/12(火) 00:26:37
howmはこっちをサポートしてくれるといいんだけどね。
Cygwinを使えるし。
0296名無しさん@お腹いっぱい。2005/07/12(火) 16:15:12
Hyperの方ってCygwinじゃなくてネイティブのWin32じゃなかったっけ?
Cygwinでも動くのかなぁ。
0297名無しさん@お腹いっぱい。2005/07/16(土) 23:16:11
> Hyper Estraierの最終目的はP2P型の分散処理に支えられた高速で高精度な検索システムを構築することですが、

そうだったのカー (AA略
0298名無しさん@お腹いっぱい。2005/07/17(日) 03:20:26
ノードAPIキターーーー(゚∀゚)ーーーー!
0299名無しさん@お腹いっぱい。2005/07/17(日) 20:23:17
namazuの改良したいんですが、キーワード毎に重み付けするような
プログラムってどうすればいいかわかりますか??
調べてもわかんないです。本でもなんでも教えてほしいです。。。
0300名無しさん@お腹いっぱい。2005/07/17(日) 21:44:47
>>299 http://pc8.2ch.net/test/read.cgi/unix/1113150661/
03012992005/07/17(日) 21:48:42
>>300
サンクス
0302名無しさん@お腹いっぱい。2005/07/19(火) 13:36:11
うーん、estmasterが動かないなぁ。 libsocketって何だろう?
0303名無しさん@お腹いっぱい。2005/07/19(火) 21:32:11
ソケットのライブラリだろ。LD_LIBRARY_PATHがおかしいんじゃない?
0304名無しさん@お腹いっぱい。2005/07/20(水) 10:11:12
>>303
アドバイスどうも。libsocketはソケットの抽象化ライブラリみたいだね。
ふつーのglibcソケットだけでも大丈夫みたいだけど。

起動はするが、ポートを叩いてもうんともすんとも言わないという状況だから、
ダイナミックロード関係じゃなさそう。ちなみにOSX(panther)の話ね。


Debianならあっさり動いたからDebianホストでestmasterを動かす事にするよ。
0305名無しさん@お腹いっぱい。2005/07/22(金) 22:32:56
gdestraier-0.1.6 リリースしたよ。
ttp://www.mitsuki.no-ip.com/~seagull/software-archives/hyperestraier/gdestraier.html

誰も気にもかけて無いらしいけど。
0306名無しさん@お腹いっぱい。2005/07/23(土) 11:27:34
こんなとこにアナウンスしてもしょーがないでしょ。
FreshMeatとかSourceForgeに登録したら?
0307名無しさん@お腹いっぱい。2005/07/24(日) 01:19:46
sargeで使ってみようとしたら必要としてるライブラリのバージョンが
新しすぎで無理だった。>gdestraier
0308名無しさん@お腹いっぱい。2005/07/25(月) 20:23:32
java版APIも出たねぇ。
デスクトップ検索もJavaで作った方がいいんじゃねの?
クライアントは多少重くても問題ない。その上でさらにアプレット
みたいなプラグインを動作させられるようにすれば、Spotlightに対抗でき
るかもよ。
0309名無しさん@お腹いっぱい。2005/07/25(月) 20:29:10
>>308
> java版APIも出たねぇ。
> デスクトップ検索もJavaで作った方がいいんじゃねの?

そんな事したら、死に体になってしまう。
0310名無しさん@お腹いっぱい。2005/07/25(月) 21:18:43
ライブラリのバージョンは、とりあえず手元のsidに入ってるやつ参照しただけなんで、
下げても大丈夫だと思う。
とりあえず、sarge準備して試してみますわ。

>>308
重いにも限度があると思う。
起動がトロかったり、フットプリントが許容できても、サクサク間がでないと。
もっとも、いま現在は単一スレッドで要約まで出してるから、サクサクとは言いがたいけど。

目標は、nautilusでディレクトリたどるより手軽に絞りこみ検索できる事。
0311名無しさん@お腹いっぱい。2005/07/26(火) 11:37:21
きょうびのPCのパワーならJavaでもサクサク動くと思うが。
つーか移植性が確保できる(LinuxでもWindowsでもMacでも動く)のが重要だろ。
sargeやら何やらのレベルで非互換がでてるようじゃ流行らないと思われ。
0312名無しさん@お腹いっぱい。2005/07/26(火) 20:29:41
>>311
実際に試せばわかると思うが「サクサク動かない」よ。
0313名無しさん@お腹いっぱい。2005/07/26(火) 21:40:39
>>311
意味不明。Javaって、必要なランタイムライブラリがインストールされてなかったり、
バージョンが適合しなくても問題無いって?
0314名無しさん@お腹いっぱい。2005/07/27(水) 03:19:30
起動はサクサクしないだろうけど、そんなに遅いわけでもないだろう。
実装テクニックの問題だったりしないか?
0315名無しさん@お腹いっぱい。2005/07/27(水) 07:41:42
テクニック云々以前にJVMの起動が遅いんでしょ。
もしかして最近は違うの?(><)
03163152005/07/27(水) 07:42:59
すまん。寝惚けてた orz
0317名無しさん@お腹いっぱい。2005/07/27(水) 09:18:23
Write once, Debug anywhere.

0318名無しさん@お腹いっぱい。2005/07/27(水) 09:47:33
JRE入れるのは.NET Frameworkを入れるのと同じようなもんで、大抵のユーザは
抵抗なくやってくれるでしょ。J2SEのコアライブラリ以外に必要なランタイムが
あったとしても、それも同梱してしまえばいい。

別にJavaマンセーと言うつもりはないけど、GNOMEやGTK+のバージョンの違いに
悩まされるのは普通のユーザには耐え難いことだよ。依存関係が連鎖している
から、作業途中で嫌になってやめてしまう人が多いと思う。かくいう俺もそれで
gdestraierの利用を断念した。
もしもDegianやVineなどのディストリビューションに標準採用されたとしたら、
そういう苦労はほとんどなくなるかもしれないが。
0319名無しさん@お腹いっぱい。2005/07/27(水) 10:20:17
gnome よりは java のほうがまだましだけど,とりあえずコマンドラインで使
えるようにしてくれないと不便だにゃぁ.cgi から叩きたい時もあるし.
0320名無しさん@お腹いっぱい。2005/07/27(水) 10:25:32
コマンドラインのツールならHyper Estraier自身に含まれてるじゃん。
0321名無しさん@お腹いっぱい。2005/07/27(水) 10:35:27
Java って Debian だと non-free 扱いじゃなかったっけ?
0322名無しさん@お腹いっぱい。2005/07/27(水) 11:11:02
kaffeとかgcjとかで動くならmainにいけるよ。
0323名無しさん@お腹いっぱい。2005/07/27(水) 16:43:19
>>318
作者がコミュニティを小さく保ちたいとは考えていないとか、
windows進出でgoogledesktopなどと張り合う事を考えている
という前提はそもそも正しいの?


ところで、>>304 の問題は0.5.1で解決した。
いまはest_free_net_env()してからest_init_net_env()するとSEGVるので
悩んでいる。
03243182005/07/27(水) 22:39:59
>>323
張り合うっつーか、公開するぐらいだから、ユーザは多い方が嬉しい
かなと思って書いただけ。本当のところは作者氏の弁を待つしか。
0325あうたん2005/07/28(木) 18:09:01

みなさまはじめまして
最近「Estraier」なるものの存在に気づき社内のデータの検索エンジンをWindows
ベースで構築できないかと考えているものでございます。

ここ最近Windowsバイナリが公開されまして早速つかってみました。検索スピード
に驚くばかりでこれはかなりイケてるなと思ったのですが、やはりn-gram検索の
スコアでは検索時にTOPに出てほしいものがでてきてくれません。
そこでインデックスを何とかして指定したもののスコアをあげたいのですが、やはり
そういうことは難しいのでしょうか?スコアをいじること自体がn-gramの検索の精神
に反していることは理解しているのですが、なんとかしてスコアを補正して特定の
ものを検索の最初にヒットさせたいのです。
これは「Estraier」の問題ではないと思いますが 特定のファイルをスコアの重みを
調整する術はないものでしょうか?(たとえばたくさんのアクセスがあったファイル
は最初の方に表示したいというものです)

皆様のお知恵をお貸しいただければ幸いです

                  WindowsXP+Apache1系+estraier-1.2.28-win32
0326名無しさん@お腹いっぱい。2005/07/28(木) 18:57:55
全てをEstraierにやらせる必要もないだろう。
文章にキーワードを設定しておいて、それと一致するものは
Estraierによる検索結果「よりも先に」表示させるとか。
0327名無しさん@お腹いっぱい。2005/07/28(木) 19:23:57
>>325
スピードが遅くなってもいいのなら、実際いろんな方法があると思うけど。
内部に手を入れてスコア計算をいじくるのもいいし、hyperのAPIで出力結果をバッファして
なんらかのヒューリスティックなソートを掛けるのもいいと思う。

特定のキーワードにだけ高く反応してほしいなら、hiddenテキストに
そのキーワードをたくさん書いておけばtf/idfスコアは当然高くなるよね.
ああ、estraierに隠しテキストはあったっけ?
0328名無しさん@お腹いっぱい。2005/07/28(木) 20:03:18
たくさんアクセスがあるものを上にするという場合、アクセスログを取る仕組みは
既にあるか、自前で作るんだよね。
ならば、アクセス数をDBでカウントして、10アクセスとか100アクセス毎にその文
書の更新をかけて、その際にアクセス数を属性としてつければいい。検索する際に
は、アクセス数をソート条件にすればいい。
0329あうたん2005/07/29(金) 17:17:49
>>328

皆様ご回答ありがとうございます。

アクセスログを取る仕組みに関してはログからなんとかいけそうな気配なんですが
理解力がなくアクセス数を属性としてつける部分がよくわかっていないのです。

ドキュメントには
estcmd gatherで特定ディレクトリのインデックスをつくるところまでは理解できたの
ですが、そこから特定なファイルにのみ属性情報をつける方法が分からないのです。
前身のEstraierではestindex registerでできるようなことが見受けられるのですが、
今回のHyperEstraierでは特定ファイルに対する属性情報(アクセスの頻度による
表示の重み)はどうやってつければいいのでしょうか?

例えば重みを数値(一番先に表示したいものは1000とかその次は999とか)で表現
できると表示順を制御しやすいのですが

またその際にソートは「属性情報(表示の重み)」・「n-gramによるスコア」という順序
でソートがかかるのでしょうか?

教えて君で申し訳ありませんが皆様のお知恵をお貸しいただければ幸いです。


0330名無しさん@お腹いっぱい。2005/07/29(金) 18:16:55
estcmd putでできるのではないでしょうか。
0331名無しさん@お腹いっぱい。2005/08/01(月) 05:30:52
>>329
0.5.3のestcmdならいちいちドラフト形式にしたりせずにできるんじゃないの。

あとn-gramはスコアの計算方法じゃないよ。
スコア計算はtf/idfで、namazuなんかと基本的にいっしょ。
0332あうたん2005/08/01(月) 10:22:43
>>331

> 0.5.3のestcmdならいちいちドラフト形式にしたりせずにできるんじゃないの。

使用しているのは0.5.1のWindowsバイナリ版でした。
そのドキュメントには

 estcmd put [-cl] db [file]

となっていて属性を指定するようなオプションがないようなのです。(T_T
0.5.3では330さんがおっしゃるようにできるのでしょうか・・・


> あとn-gramはスコアの計算方法じゃないよ。

よく読むとそうでした。よく理解しないで用語をつかっていました。(^^;

0333名無しさん@お腹いっぱい。2005/08/01(月) 12:40:01
estcmd putを使う場合はドラフト形式を作らなきゃだめだよ。
対象のファイルに対して、拡張子に応じてestcmd draftとかestxfilt.batで
テキストを抽出するとともに、先頭に「title=あいうえお」というような属性定義
をするその一部として、「myscore=10000」みたいにスコアを属性としてつければ
いいと思う。検索する時には順序の指定で「myscore NUMD」にすればmyscoreの大き
い順番で並べられると思うよ。

331の言うように、0.5.3からは、estcmd gather(-pxオプション?)を使えばドラ
フト形式を使わなくても属性の指定ができるようになったような希ガス。
0334あうたん2005/08/01(月) 14:37:43
>>333

とんちんかんな質問をしているのに、詳しくご教授いただきありがとうございます。m(_ _)m
なんとなくですがわかったような気がします。(^^;

一括登録では属性を「myscore=0」などにしておいてestcmd gather -px で一括登録
し、その後、上位に表示させたい特定ファイルのみオリジナルファイルを「@myscore=1000」
などをつけたドラフト形式に変換しestcmd putで1件づつ登録という流れになるということですね。

まだ、いまいちドラフト形式にするところがよく分かっていないのですが、ドキュメントに指定され
ているようなドラフト形式

@uri=http://www.hogehoge.jp/hogehoge.html
@title=hogetest
@cdate=2005-08-01T00:00:00+09:00
@mdate=2005-08-01T00:00:00+09:00
@myscore=1000

上記のような形式をファイルのどの部分に記載すればいいのでしょうか?
文字コードはUTF8で、ファイルの末尾にアペンドするということでいいのでしょうか?

そもそもドラフト文書への変換用としてestcmd draftがあるみたいに記載があるのですが、
WEBから取得してきたHTMLファイルなどをこのコマンドで変換した場合は、単に文字コードを
自動で判別してUTF8に変換して出力するだけ?の機能なのでしょうか
コマンドの引数では属性を指定したりはできないのでいまいち使い方がわかりません(^^;
estcmd putで属性登録に関する部分もサポートしてもらえるといいかんじになりそうなんですが・・・

いま最新のバイナリみたらWindows版も0.5.3があがってました。最近、勢力的に開発を
されているようで今後に期待です。調べてみたらおっしゃるような(-px)オプションが
追加されていました。

0335名無しさん@お腹いっぱい。2005/08/01(月) 15:11:09
メールの書式と同じような感じで、属性定義の下に空行をあけてから、普通のテキストを
書くみたいです。

@uri=http://www.hogehoge.jp/hogehoge.html
@title=hogetest
@myscore=1000

近所のラーメン屋さんを探してみませんか?
Google ローカルでお試しください

estcmd draftはHTMLのタグを外してから、タイトルなどの属性も抽出したドラフトを作って
くれます。文字コードもUTF-8にしてくれるみたいです。
estcmd putを使わなくても、estcmd gatherにファイルのリストを読み込ませれば登録できる
と思いますよ。estcmd gather abc list.txt を実行すると list.txt からファイル名と属性
のリストを読み込んでくれるはずです。
私はメーリングリストの過去記事の検索システムをHyper Estraierで作って使っているのです
が、属性をいくつかつけたいので、全部の記事の文書ドラフトをいったん作ってから読み込ま
せています。-pxオプションがあればその苦労をしないで済むようになりそうです。
0336あうたん2005/08/01(月) 15:49:31
>>335

> estcmd putを使わなくても、estcmd gatherにファイルのリストを読み込ませれば登録できる
> と思いますよ。estcmd gather abc list.txt を実行すると list.txt からファイル名と属性
> のリストを読み込んでくれるはずです。

迅速なレスありがとうございます。なるほどです。1件の登録であってもリストをつくって登録すれば
estcmd putに機能をもたせなくてもいいということですね。(^^;

ちなみにそのリストファイルの書式ってどんな感じになりますでしょうか?
ドキュメントの読み方があまいかもしれませんが、このあたりの情報はどちらにありますでしょうか?

ほんと教えて君ですいません。m(_ _L
0337名無しさん@お腹いっぱい。2005/08/01(月) 16:35:38
リストの形式はタブ区切りです。最初の項目がURLで、次の項目以降が属性です。
C:\data\000001.txtを登録する際に、@uriがfile://C|/data/000001.txtで、
@titleがABCDEで、myscoreが1000なら、

C:\data\000001.txt file://C|/data/hogehoge ABCDE 1000

というリストになると思います。空白の部分はタブ1個であけてください。
これを list.txt として保存したなら、

estcmd gather -ft -px @uri -px @title -px myscore casket list.txt

を実行すれば登録できると思います。登録対象がテキストでなくWordなどの場合は -ft のかわりに
-fx でフィルタを指定することになると思います。
0338あうたん2005/08/03(水) 08:23:43
>>337

ありがとうございます。さっそくやってみます。
この辺の情報も付属のドキュメントに記載があるのでしょうか?
ドキュメントの読みが浅くてみなさまにご迷惑をおかけしているようで(^^;
0339名無しさん@お腹いっぱい。2005/08/03(水) 11:50:56
> -pxはパスのリストから読み取る属性名を指定します。パスのリストはTSV形式
> にすることができ、第1フィールドは対象文書のパス名、第2フィールド以降は
> 属性値の定義として扱われます。-pxによって第2フィールド以降に対応する属
> 性名を定義します。このオプションは複数回指定できます。

って書いてあるよ。この説明から337の用法まで思い付くのは大変だと思うが。
Windows版のインストール方法も含めて詳しく説明した解説サイトがあればいい
のにね。

ついでに良スレage
0340名無しさん@お腹いっぱい。2005/08/03(水) 13:05:41
>>339
> Windows版のインストール方法も含めて詳しく説明した解説サイトがあればいい
> のにね。

いいだしっぺの法則 ズサー
0341あうたん2005/08/03(水) 15:05:53
>>339

ありがとうございました。このあたりを中心にもう一度熟読?(^^;
してみようと思います。

導入に関してWindows版のサイトや導入した際の備忘録ページなどががあると
訴求力が大きく違うかもしれませんね。

現在メーリングリストに入っていますがほかにもEstraierのことがやり取りされて
いるところってあるのでしょうか?

メーリングリスト
 hyperestraier-users-ja mailing list

http://sourceforge.net/mailarchive/forum.php?forum=hyperestraier-users-ja

で過去のログがみたかったんですけど、私の環境では文字化けしてしまい
どうもうまくよめませんでした。(T_T
0342名無しさん@お腹いっぱい。2005/08/03(水) 16:41:27
>>341
日本語MLの文字化けはsf.jpの仕様なので、こっちを見るといいよ。
ttp://hyperestraier.sourceforge.net/sfmltoj.cgi

まぁ、それでもUTF-8な人のヘッダは化けてる訳ですが...
0343あうたん2005/08/05(金) 11:41:58
>>342

あんがとでした^−^ なんとか読めるとです。
0344名無しさん@お腹いっぱい。2005/08/15(月) 02:07:13
hyperestraier 0.5.4 age
0345名無しさん@お腹いっぱい。2005/08/15(月) 10:55:46
0346名無しさん@お腹いっぱい。2005/08/15(月) 12:12:44
RPM作ってくれないかな。
0347名無しさん@お腹いっぱい。2005/08/15(月) 12:32:16
ports作ってくれないかな。
0348名無しさん@お腹いっぱい。2005/08/15(月) 13:43:00
>>346,367
どっかに転がってるんぢゃね?
Gentoo Portageにはある。DarwinPortsには、鹿版がある。
0349名無しさん@お腹いっぱい。2005/08/15(月) 16:24:57
ChangeLog に載ってない変更はやめてくれぇ...orz

ESTCONDUSUってUSUALのことだったのかYo!
0350名無しさん@お腹いっぱい。2005/09/22(木) 00:17:43
0.9リリースage
0351名無しさん@お腹いっぱい。2005/09/22(木) 00:20:41
あげ忘れた
0352名無しさん@お腹いっぱい。2005/09/22(木) 09:10:49
一気にヴァージョン上がったね。
でも win32 バイナリ来てないよ、(´・ω・`)ショボーン
0353名無しさん@お腹いっぱい。2005/09/26(月) 02:51:57
今は、関係ないかもね
0354名無しさん@お腹いっぱい。2005/09/26(月) 04:21:11
Hyper Estraier Win32なんで板違いっぽいけど
検索するディレクトリ書いたファイル読み込ませて
index作成ってのがどうしてもできないのヨ。
どなたか、オレはこれでできとるがな、という
コマンドラインの書式をイッパツ晒してくれませんでしょうか。
0355名無しさん@お腹いっぱい。2005/09/26(月) 07:11:36
>>354
うちは出来てるヨ(オプションはてけとー)
> estcmd.exe gather -cl -ft -ic euc-jp -il ja -sd -cm casket filelist.lst

「検索するディレクトリ書いた」というより「検索するファイルリスト自体」じゃないとダメなのかも
0356名無しさん@お腹いっぱい。2005/09/27(火) 11:10:16
検索結果に
htmlファイルの<TITLE></TITLE>を表示したいのですが
どのようにしたら良いでしょうか。
0357名無しさん@お腹いっぱい。2005/09/27(火) 11:29:59
>>355
さんくすこ。おいらもできたよ。
0358名無しさん@お腹いっぱい。2005/09/27(火) 16:48:16
こっちもWindowsのHyper Estraierなんですが
estcmd out ってちゃんと使えてますか?
dbの部分でどうしてもエラーが出ます。
C:\cygwin\home\ore>estcmd out casket file:///C:/cygwin/home/ore/html/2004.5.3.html
estcmd: INFO: status: name=casket dnum=74 wnum=31721 fsiz=4617468 crnum=0 csiz=0
dknum=0
estcmd: ERROR: casket: no such item
estcmd: INFO: closing: name=casket dnum=74 wnum=31721 fsiz=4617468 crnum=0 csiz=
0 dknum=0

casketが作成したindexのディレクトリ。同じ場所で
estcmd search ごにょごにょ casket "検索文字"ならちゃんと動くし
エラーメッセージ一行目では認識しときながら二行目では
no such itemになってるのがよくわからないんですが。
0359名無しさん@お腹いっぱい。2005/09/27(火) 17:12:43
>>358
out はあまりテストしてみたくないので、
> estcmd list casket
で ID 取ってみて URI の代わりに ID でやってみては?

purge とかはふつーにうごいてるけどなあ。
03603582005/09/28(水) 11:29:19
どうも。
file:///C:/cygwin/home/ore/html/..
ではだめで
"file:///C|/cygwin/home/ore/html.."
の方式でやればいいだけだったorz。
まさに板違い質問にて大変失礼。IDでもイケましたよ。
■ このスレッドは過去ログ倉庫に格納されています