[リストへもどる]
一括表示

投稿時間:2003/02/04(Tue) 17:56
投稿者名:ハイライト
URL :
タイトル:
HTMLの取得
はじめまして。いつもこのHPを使わせていただいております。
質問させていただきたいのですが、HTMLから文字列を取得する方法がなかなかわかりません。
<HTML>
<BODY>
ハイライト
</BODY>
</HTML>
とあったら、「ハイライト」を取得してテキストボックスなどに表示する形です。
宜しくお願いします。

投稿時間:2003/02/04(Tue) 18:30
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: HTMLの取得
HTMLファイルのソースコードをテキストとして取得する事はできるのですね
でしたら後は Instr  Mid  をヘルプで調べて下さい。

投稿時間:2003/02/04(Tue) 21:09
投稿者名:ハイライト
URL :
タイトル:
Re^2: HTMLの取得
> HTMLファイルのソースコードをテキストとして取得する事はできるのですね
> でしたら後は Instr  Mid  をヘルプで調べて下さい。

さっそくのご返答ありがとうございます。早速教えていただいたものでやってみます。またわからなくなってしまったらお聞きすることと思いますが、宜しくお願いします。

投稿時間:2003/02/05(Wed) 06:54
投稿者名:ハイライト
URL :
タイトル:
Re^2: HTMLの取得
つまるところ、GoogleやYahoo!などにログインして、「検索」ボタンを押すなどの処理をし、ログイン先からの文字列の取得を考えております。どのようにしたらいいのでしょうか?
いろいろなページを検索したのですが、なかなかヒットせず、困っています。
お手数ですがよろしくお願いします。

投稿時間:2003/02/05(Wed) 07:57
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re^3: HTMLの取得
> つまるところ、GoogleやYahoo!などにログインして、「検索」ボタンを押すなどの処理をし、ログイン先からの文字列の取得を考えております。どのようにしたらいいのでしょうか?

いろいろなやり方があります。

googleならば、専用の google Web APIが用意されていますので、それを利用するのも良いでしょう。
JavaやVB.NETならば、サンプルコードも付属しています。
http://www.google.co.jp/apis/

VB6からの利用は試した事がありませんが、SOAP Toolkitを使えば呼び出せるかもしれません。
http://www.microsoft.com/japan/msdn/vstudio/downloads/soaptoolkit/


そうした専用APIに頼らないのであれば、WebBrowserコントロールもしくは
InternetExplorerオブジェクトを使うのが便利かと思います。
http://msdn.microsoft.com/workshop/browser/webbrowser/reference/objects/internetexplorer.asp
Documentプロパティ経由で、(DHTMLの)documentオブジェクトにアクセスできるので、
HTML内の文字列を検索したり、テキストボックスに文字列を設定/取得する事もできます。

投稿時間:2003/02/05(Wed) 10:54
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^3: HTMLの取得
魔界の仮面弁士 さんの方法の他下記の方法でも検索表示できます。
こんなバカな事試すのは私位しかいないのかあまり知られてはいないようですが

Private Declare Function ShellExecute Lib "shell32.dll" _
    Alias "ShellExecuteA" (ByVal hwnd As Long, _
    ByVal lpOperation As String, ByVal lpFile As String, _
    ByVal lpParameters As String, ByVal lpDirectory As String, _
    ByVal nShowCmd As Long) As Long
Private Const SW_SHOWNORMAL = 1

Private Sub Command1_Click()
    Dim Ret     As Long
    Dim KeyWord As String
    Dim Url     As String
    KeyWord = "VBレスキュー(花ちゃん)"
    Url = "http://www.google.co.jp/search?q=" & KeyWord & "&type=0"
    Ret = ShellExecute(Me.hwnd, "open", Url, vbNullString, vbNullString, SW_SHOWNORMAL)
End Sub

'検索の他こんな事もできます。
Private Sub Command2_Click()
    Dim Ret     As Long
    Dim KeyWord As String
    Dim Url     As String
    KeyWord = "東京都港区赤坂1ー4ー1"
    Url = "http://www.nifty.com/cgi-bin/mapsearch.cgi?keyword=" & KeyWord & "&type=0"
    Ret = ShellExecute(Me.hwnd, "open", Url, vbNullString, vbNullString, SW_SHOWNORMAL)
End Sub

投稿時間:2003/02/05(Wed) 12:01
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re^4: HTMLの取得
>     KeyWord = "VBレスキュー(花ちゃん)"
>     Url = "http://www.google.co.jp/search?q=" & KeyWord & "&type=0"

IDTFが日本語ドメインを認めた事もあり、URLに漢字等を含める事は一応できますが……
どうせならば、きちんとURLEncodeを行った方が良いと思いますよ。


ちなみにgoogleの場合は、GET要求時にieパラメータを含める事により、
エンコードした文字コードを指定する事ができます。

http://www.google.co.jp/search?ie=Shift_JIS&q=%89%D4%82%BF%82%E1%82%F1
http://www.google.co.jp/search?ie=EUC-JP&q=%B2%D6%A4%C1%A4%E3%A4%F3
http://www.google.co.jp/search?ie=UTF-8&q=%E8%8A%B1%E3%81%A1%E3%82%83%E3%82%93

投稿時間:2003/02/05(Wed) 16:02
投稿者名:ハイライト
URL :
タイトル:
Re^5: HTMLの取得
お二人とも本当にありがとうございます。魔界の仮面弁士さん、花ちゃんさん、ありがとうございます。理解してなんとかやってみます!お返事遅くなりまして申し訳ありません。

投稿時間:2003/02/05(Wed) 18:26
投稿者名:ハイライト
URL :
タイトル:
Re^2: HTMLの取得
> HTMLファイルのソースコードをテキストとして取得する事はできるのですね
> でしたら後は Instr  Mid  をヘルプで調べて下さい。
>  
最初におっしゃっていた、文字列関数の使い方を教えていただけますでしょうか?
力不足で申し訳ありません。

投稿時間:2003/02/05(Wed) 20:18
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^3: HTMLの取得
このような検索をしたいのかどうかは解りませんがヒントという事で
後は自分やりたいように工夫して下さい。

Private Sub Command1_Click()
    Dim HtmlText As String
    Dim Sn       As Long
    Dim En       As Long
    Dim MyText   As String
    Dim n        As Long
    n = 1
    HtmlText = "<HTML><BODY>ハイライト</BODY></HTML><HTML><BODY>ハイライト</BODY></HTML>"
    While InStr(n, HtmlText, "<BODY>") > 1
        Sn = InStr(n, HtmlText, "<BODY>")
        En = InStr(n, HtmlText, "</BODY>")
        MyText = Mid$(HtmlText, Sn + 6, En - Sn - 6)
        Debug.Print MyText
        n = En + 6
    Wend
End Sub

投稿時間:2003/02/08(Sat) 01:29
投稿者名:ハイライト
URL :
タイトル:
Re^4: HTMLの取得
返事が遅れて申し訳ありません。風邪で倒れていました。
花ちゃんさん、ありがとうございます。
これは「Inetコントロール」で可能ですよね?やってみます!