RE:「WEB上のファイル読出」 唐瀬人さんへ 山中和義 2006/11/22 19:34:27 ├サンプルプログラム 山中和義 2006/11/22 19:35:57 └山中様 唐瀬人 2006/11/28 14:29:28
RE:「WEB上のファイル読出」 唐瀬人さんへ 山中和義 2006/11/22 19:34:27 ツリーへ
RE:「WEB上のファイル読出」 唐瀬人さんへ |
返事を書く |
山中和義 2006/11/22 19:34:27 | |
OLEオートメーションを使って、インターネット・エクスプローラを制御すると
表示中のページの内容を得ることができます。 ●説明 サーバにあるテキスト文書のファイル名をtest.txtとして内容を 引数1=あいうえお,abc,1234 引数2=ABCXYZ 引数3=12345 とすると、Txt.GetValue$で 引数1=あいうえお,abc,1234[CR][LF]引数2=ABCXYZ[CR][LF]引数3=12345[CR][LF] が得られます。 最後に CALL ieApp.Visible(0) !起動して非表示する とするといいかもしれません。 |
├サンプルプログラム 山中和義 2006/11/22 19:35:57 ツリーへ
Re: RE:「WEB上のファイル読出」 唐瀬人さんへ |
返事を書く |
山中和義 2006/11/22 19:35:57 | |
サンプルプログラム
!OLEでInternet Explorerを使う CALL ieApp.Visible(-1) !起動して表示する CALL ieApp.Navigate("C:\My Documents\test.txt") !テキストを表示する !!CALL ieApp.Navigate("http://www.google.co.jp/") !URLを指定してページを表示する !!CALL ieApp.GoHome !ホームページを表示する !!CALL ieApp.Navigate("about:blank") !空白のページ DO WHILE ieApp.Busy$="True" !表示完了を待つ WAIT DELAY 0.5 LOOP CALL Document.New(ieApp.Document) !HTMLドキュメント !!PRINT Document.GetTitle$ !!PRINT Document.GetURL$ CALL Txt.New(Document.getBody) !BODYタグ LET p$=Txt.GetValue$ !文書全体を得る PRINT p$ PRINT Param$(p$,"引数1=",CHR$(13)) PRINT Param$(p$,"引数2=",CHR$(13)) PRINT Param$(p$,"引数3=",CHR$(13)) CALL ieApp.Quit !終了させる END EXTERNAL FUNCTION Param$(s$,a$,EOF$) !切り出し LET t=POS(s$,a$) LET Param$=s$(t:POS(s$,EOF$,t)) END FUNCTION MODULE ieApp !OLE連携オブジェクト OLE CREATEOBJECT "InternetExplorer.Application" !ProgID !メソッド、メンバ変数、プロパティ EXTERNAL SUB Quit !終了 OLE METHOD "Quit" END SUB EXTERNAL SUB Visible(n) !表示・非表示 OLE PropertyPut "Visible" END SUB EXTERNAL SUB Navigate(url$) !URLを指定してページを表示する OLE METHOD "Navigate" END SUB EXTERNAL FUNCTION Busy$ !True=作業中、False= OLE PropertyGet "Busy" END FUNCTION EXTERNAL SUB GoHome !ホームページを表示する OLE METHOD "GoHome" END SUB EXTERNAL SUB GoBack !戻る OLE METHOD "GoBack" END SUB EXTERNAL SUB Stop !中止 OLE METHOD "Stop" END SUB EXTERNAL SUB Refresh !更新 OLE METHOD "Refresh" END SUB EXTERNAL FUNCTION Document OLE PropertyGet "Document" !ドキュメントへのハンドルを得る END FUNCTION END MODULE MODULE Document !HTMLDocumentクラス EXTERNAL SUB New(n) OLE ASSIGN n !InternetExplorer.Application.HTMLDocument END SUB EXTERNAL FUNCTION getBody !BODYタグへのハンドルを得る OLE PropertyGet "Body" END FUNCTION EXTERNAL FUNCTION GetTitle$ !タイトルを得る OLE PropertyGet "Title" END FUNCTION EXTERNAL FUNCTION GetURL$ !URLを得る OLE PropertyGet "URL" END FUNCTION END MODULE MODULE Txt EXTERNAL SUB New(n) OLE ASSIGN n !InternetExplorer.Application.Document.Element END SUB EXTERNAL FUNCTION GetValue$ !値を得る OLE PropertyGet "innerText" END FUNCTION END MODULE |
└山中様 唐瀬人 2006/11/28 14:29:28 ツリーへ
Re: RE:「WEB上のファイル読出」 唐瀬人さんへ |
返事を書く |
唐瀬人 2006/11/28 14:29:28 | |
山中様
古い投稿にもかかわらず、アイデア投稿いただきまして有難うございます。しばらく出張に出ておりましたのでレスポンスが遅くなり申し訳ありません。 早速サンプルプログラムを試して見ました。こちらの環境では問題なくスムーズにWEB上のテキストファイルの読出ができました。 実は過去の投稿後、十進BASICとコマンドプロンプト(DOSプロンプト)及び他のプログラムの組み合わせにより、WEB上のテキストファイル内容を反映させ所定処理を行うプログラムを一応完成させているのですが、今回の山中様のアイデアを用いることでよりシンプル化できないか今後じっくりと検討していきたいと思います。また「OLEオートメーション」に関して私は無知なのですが、この技術が幅広いWINDOWS環境で利用できるかどうかということも確認したいと思います。 (参考) <a href="http://www.vector.co.jp/soft/win95/hardware/se408601.html">http://www.vector.co.jp/soft/win95/hardware/se408601.html</a> <a href="http://www.vector.co.jp/soft/win95/util/se409190.html">http://www.vector.co.jp/soft/win95/util/se409190.html</a> |