HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2011
1217
peeconHSPからIEコンポーネントを使い、Googleの検索結果を取得して加工したい3解決


peecon

リンク

2011/12/17(Sat) 13:17:37|NO.43810

お世話になります。peeconと申します。

HSPからIEコンポーネントを使い、Googleの検索結果をHTMLのソースで取得
したいと考えております。
ところが、以下のスクリプトを実行し、検索まではできたのですが、
Googleで検索する前のページのHTMLソースしか取得できず、検索結果は取得
できない状況です(もちろん、axobjで表示した部分には検索結果を表示で
きます)。
最終的には、検索結果はHSPのバッファに取り込んで加工を行ないたいと考
えております。

以下のスクリプトを少し改変して検索結果のHTMLソースを取得し、バッファ
に保存するすることは可能でしょうか?
ヒントだけでも結構ですので、ご教授頂ければ幸いです。
よろしくお願い申し上げます。



axobj ie, "Shell.Explorer.2", 640, 220 ; Googleにアクセス ie -> "Navigate" "http://www.google.com/intl/ja/" ; 読み込み終わるまで待つ repeat : wait 10 : if ie("Busy") = 0 { break } : loop ; フォームに入力 document.f.q.value = 'HSP' o = ie("Document") o = o("f") o = o("q") o("value") = "HSP" ; 検索キーワードを"HSP"とする ; フォーム送信 document.f.submit() o = ie("Document") o = o("f") o->"submit" ; 検索結果の<body>〜</body>を取得し表示したいが、それができない o = ie("Document") o = o("body") recv = o("innerHTML") pos 0,220 : mesbox recv,640,260,0



この記事に返信する


hexa.hemi

リンク

2011/12/17(Sat) 13:31:01|NO.43811

o -> "submit"の後に

repeat : wait 10 : if ie("Busy") = 0 { break } : loop
を入れてページが完全に読み込まれるまで待てばよいのでは?



inovia

リンク

2011/12/17(Sat) 18:01:56|NO.43815

IEコンポーネントを使わないとこうなるかな。
こちらの方が楽な気がします。


#include "hspinet.as" keyword = "古今東西" netinit if stat : dialog "ネット接続できません。" : end ; URLを指定 neturl "http://www.google.co.jp/" ; GET形式でCGIにパラメーターを渡す netrequest_get "search?q="+keyword+"&ie=Shift_JIS" *main ; 結果待ちのためのループ netexec res if res > 0 : goto *comp if res < 0 : goto *bad await 50 goto *main *bad ; エラー neterror estr mes "ERROR "+estr stop *comp ; 完了 mes "DOWNLOAD 完了" netgetv buf mesbox buf,640,400,1 stop



peecon

リンク

2011/12/20(Tue) 21:47:44|NO.43869

peeconです。

hexa.hemi様、inovia様、的確なアドバイスを頂きましてありがとうございます。
お返事が遅くなり、大変申し訳ございません。

作成中のスクリプトについては、hexa.hemi様から頂いたアドバイスで問題が解決
できました。

今回はIEコンポーネントを試してみたかったのですが、inovia様が教えてくださった
方法も大変参考になります。
両方法でいろいろと検討してみたいと思います。
hexa.hemi様、inovia様、本当にありがとうございました。



ONION software Copyright 1997-2018(c) All rights reserved.