以下の図書館サイトにおいて「English」で検索した結果をGETもしくはPOSTアクションで取得できる検索式URLを教えてください(図書館サイトの中にはセッションを使用しているサイトにおいてもGETアクションで静的に取得できるものがありますが、その糸口でもつかめたら教えてください)


http://opac.cc.kochi-wu.ac.jp/jhkweb_JPN/service/freeref.asp

回答の条件
  • 1人2回まで
  • 登録:2008/08/31 17:33:07
  • 終了:2008/09/01 01:51:13

回答(2件)

id:Mook No.1

Mook回答回数1312ベストアンサー獲得回数3912008/08/31 17:58:33

ポイント35pt

質問の内容は矛盾を含んでいるように思えます。

機能の仕様により URL で記述するのは GET です。POST は URL では指定できません。


今回提示されたサイトは、FORM で POST を指定していますので、URL で検索語を

渡すことはできません。


ただ、方法が全くないわけではなく、下記のようにブラウザの拡張機能を利用して

http://keijisaito.info/arc/search/cs_set_firefox.htm

POST 検索を利用することは可能です。


もしご存じであれば余計な回答ですが、POST か GET を知るのは下記の手順です。

画面上で右クリックからソースを表示(メニュー名はブラウザによって異なります)し、

その中から <form> タグを検索すれば、そこに method= として指定されています。

id:leva

なるほど、それはそうですね。POSTアクションの場合、クエリを投げるURLと幾つかのクエリから構成されますね。その場合、その組み合わせでご回答いただけると助かります。

提示したフォームがPOSTアクションであることが理解しています。しかし、POSTアクションを設定しているフォームでも、GETアクションで検索式URLを静的に取得できる場合もかなりありますので、もし今回のケースでそれが通用するようなら教えていただきたいという質問です。

2008/08/31 18:06:07
id:tomopo No.2

matsuoki回答回数15ベストアンサー獲得回数32008/08/31 19:48:20

ポイント35pt

検索結果のページをブックマークに保存出来ない、とかという事でしょうか。

検索結果をブックマークする方法を知らないので、私は下記のような更新チェックスクリプトを作って、更新の有無を自動で確認→更新が有った場合手動で見に行く ということをやってます。

Linux/Unixで動く(Windows版も有ったはず)wgetというツールと、Wiresharkなどのスニッファを使っています。


(1)そのwebにデータをPOSTするときのパケットダンプを取っておき、POSTデータとして保存します。

(2)wgetで(1)のデータをPOSTしつつ、目的のページをダウンロードします。

(3)前回取得したデータと差違が有れば、「更新有り」と判断して、自分にメールでお知らせします。


(1)のポストされるデータは、元のページ<form>や<imput>を見れば自分で組み立て可能ですが、私の場合はスニッファを使い慣れているので、スニッファで行っています。

上記以外に、wwwcという更新チェックソフトがありますが、それの拡張DLLで、POSTデータを指定出来るようにするものが有りました。

私の用途ではPOSTできる文字数が少なすぎて使えなかったのですが、ページによっては使えるかもしれません。

簡単にPOSTデータも含めたブックマーク出来る仕組みがあれば良いんですけどね。

ちなみにPOSTとGETを併用するページも有ります。(どちらの形式でもパラメータを受け取る場合もあれば、別々の場合も有り)

id:leva

えーと、まず別サイトからシームレスに検索結果に移るリンクを作りたいというのと、できるならその結果をプログラムで見てみたいというものですね。

やっているうちに方法がわかったのでこの辺で閉じますね。

2008/09/01 01:48:49
  • id:Mook
    回答後に過去の質問を参照させていただきましたが、
    WEB に関してはかなり知識を持った方のようですね。

    釈迦に説法のようで、失礼しました。


    たしかに、サーバ側の内部処理で POST と GETの両方に対応している場合もありますが、
    名前を共通にしていることが多いように感じます。

    今回のケースで名前を指定して GET で送信してみましたが、機能しないようです。
  • id:leva
    いえ、こちらも紛らわしい質問ですみません。

    一応、強制的にGETでというのは試してみているのですが、検索結果にすぐにとぶような通常のタイプのフォームではない特殊なものなので、対処方法について何か知っている人がいないかお伺いしてみた次第です。
  • id:leva
    閉じるついでに「正解」も書いておきます。
    単にフォームを抜き出せば良かっただけですね…

    <FORM METHOD="POST" ACTION="http://opac.cc.kochi-wu.ac.jp/jhkweb_JPN/service/gofreeword.asp">
    <p>
    <INPUT type="hidden" name="FREEISFUZZY" value="1">
    <INPUT type="hidden" name="FREEWORDOPE" value="2">
    <INPUT type="hidden" name="FREEMETHOD" value="2">
    <INPUT type="hidden" name="MATERIAL1" value="1">
    <INPUT type="hidden" name="MATERIAL2" value="2">
    <INPUT type="hidden" name="MATERIAL3" value="3">
    <INPUT type="hidden" name="HITLIMIT" value="500">
    <INPUT type="text" name="FREEKEYWORD_1" value="English">
    <INPUT type="submit" value="この条件で検索する">
    </p>
    </FORM>

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません