URL取り込みができません。 †
ページ | OpenOffice.org FAQの登録ページ |
---|---|
投稿者 | よっちゃん |
分類 | |
優先順位 | |
状態 | |
カテゴリー | |
投稿日 | 2010-06-16 15:28:26 (水) |
OS | XP |
依存するページ | |
バージョン |
メッセージ †
回答ページでは行末に「~」を付加する必要はありません |
サイトで紹介のあった方法で、インターネットのから情報を取り込むこと(例えば株価などです)を考えているのですが、URLの情報を取ってきません。 どこに問題があるのかご教示頂ければ幸いです。 宜しくお願い申し上げます。
Sub FileAcc Dim oFileAcc As Object Dim sURL As String Dim oInputStream As Object Dim vData As Variant Dim sLine As String, sDataLine As String sURL = "http://hermione.s41.xrea.com/pukiwiki/pukiwiki.php?OOobbs2%2F35" oFileAcc = createUnoService( _ "com.sun.star.ucb.SimpleFileAccess" ) oInputStream = CreateUnoService("com.sun.star.io.TextInputStream") oInputStream.setEncoding( "EUC-JP" ) If oFileAcc.exists(sUrl) Then vData = oFileAcc.openFileRead(sUrl) oInputStream.setInputStream(vData) While NOT oInputStream.isEOF() sLine = oInputStream.readLine() sDataLine = sDataLine & sLine & Chr(10) WEnd oInputStream.closeInput() End if 'ここでテキストファイルに保存します。 End Sub
参考ページのサンプル †
M.Kamataki (2010-06-16 20:31:50 (水))
ご参考にされたのは、以下のページだと思います。
ブラウザを起動、URLのソースを取込みたい
http://hermione.s41.xrea.com/pukiwiki/pukiwiki.php?OOobbs2%2F35
上記参考ページのコードは、当ページのメッセージ欄のコードとほぼ同じです。WebサイトのHTMLソースを取り込む部分だと思います。さらに上記参考ページではサンプルファイルが公開されています。取り込んだソースをダイアログに表示するサンプルが、OOobbs2-35.ods です。また、HTMLソースから株価データをCalcの表に流し込む部分を追加したサンプルが stock_get.ods です。これらのサンプルは試してみましたか?
すみませんでした。 †
よっちゃん (2010-06-16 22:16:12 (水))
参考にさせて頂きサンプルをためしましたところ、株価データについては、できました。有難うございます。
ただ、株価は上手く取得できたのですが、URLを変えただけの競馬のデータ("http://db.netkeiba.com/horse/2006101371/")は何故か取得できずに、ファイルがクラッシュする表示が出て止まってしまいます。このような事はあるのでしょうか?
素人で申し訳ありませんが、ご教示頂ければ幸いです。
表の切り出し方 †
M.Kamataki (2010-06-16 23:30:45 (水))
Webページによって、表の位置も違いますし、表の大きさも違いますから、URLを変えただけではマクロは動きません。表の位置の検出方法、表の大きさに合わせてマクロを修正しないとうまく表は切り出せないでしょう。stock_get.ods のサンプルのソースを読んで、どこを修正するかわかりますか? まずは、そのような知識を頭に入れないといけないのではないですか。
なお、マクロを使わずWebページの表をCalcに挿入する方法があります。まずはその方法を覚えた方が良いと思います。こちらはマクロは使わないので簡単だと思います。タイトルを変えて説明します。
外部データの取り込み †
M.Kamataki (2010-06-17 00:00:13 (木))
Calcには外部データを取り込む機能があるので、この機能を使えばWebページの表を取得するのは比較的簡単です。
Calcのメニューから「挿入」-「外部データへのリンク」を選ぶと下図のようなダイアログが表示されます。
「外部データソースのURL」欄に取得するWebページのURLを入力し、Enterキーを押します。すると、「使用できる表と範囲」欄に表の一覧が表示されます。その中から目的の表を選びます。図の場合は、35番目の「HTML_35」が該当していました。選んだら、「OK」ボタンをクリックすれば、Calcに表が挿入されます。
この方法の利点はいくつかあります。表の大きさが変わったりしても対応できますし、ファイルの読み込み時に表のリンクを更新すれば、最新の情報を得ることができます。
ただ、挿入された表を見ていただければわかりますが、表の上部2、3行の取得に失敗するところがあるようです。これはWebページの内容にもよると思いますが。
有難うございます。 †
よっちゃん (2010-06-17 17:25:13 (木))
外部データ取り込み方法をお教え頂き、有難うございます。
もう少し勉強します。