tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトルjavascript 内のソース取得
記事No15477
投稿日: 2012/06/01(Fri) 11:31
投稿者nobu
何時も拝見しています。
VB6 SP6、WinXpです。

投稿制限により http: と一部を全角で書いています。

WebBrowser1.Navigate "hhttp://www.clublog.org/expeditions/3B7C"
にての表示完了を待ってから
        WebBrowser1.Navigate "javascript:sendRequest2('JA1')"

Open strPath & "allexpeditions\sot_JA_3B7C.txt" For Output As #f_o2

  Dim tbl As Object, row As Object, cell As Object
    Set tbl = WebBrowser1.Document.getElementById("thegrid")
       Print #f_o2, Left$("3B7C" & Space(10), 10) & " : "
        For Each row In tbl.rows
            For Each cell In row.cells
                Print #f_o2, Tab(cell.cellIndex * 8);
                If cell.tagName = "TH" Then
                    Print #f_o2, cell.innerText;
                Else
                    Print #f_o2, cell.currentStyle.backgroundColor;
                End If
            Next
                Print #f_o2, ""
        Next
   Close #f_o2
...にて表示された内容の保存は出来ました。

次に
WebBrowser1.Navigate "hhttp://www.clublog.org/expeditions/3B7C"
にて表示完了を待ってから
    WebBrowser1.Navigate "javascript:getPropagation('dxcc','JA1')"
にては一部を下記に変更して試していますが
10m 809QSOs などや棒グラフの値の取得が出来ないでいます。

    Set tbl = WebBrowser1.Document.getElementById("propagationChart")

表示されている内容のテーブルの値やソースは
どうように書けば取得出来るかご指導をしていただけると幸いです。

なお、表示されたグラフのソース内容の確認は
[Google Chrome] にて Propagation を表示し、
表示が完了したらマウスの右クリック、[要素を検証]をクリックして、
左側の [Elements] に表示されているものを見ています。

[ツリー表示へ]
タイトルRe: javascript 内のソース取得
記事No15485
投稿日: 2012/06/02(Sat) 06:46
投稿者VBレスキュー(花ちゃん)
回答では、ありません。

> 投稿制限により http: と一部を全角で書いています。

注意事項には、そのようには書いていませんが?
>
> WebBrowser1.Navigate "hhttp://www.clublog.org/expeditions/3B7C"

そもそも上記(下記)のリンク先は正しいのでしょうか?
 http://www.clublog.org/expeditions/3B7C

>[10m 809QSOs] などや[棒グラフの値]の取得が出来ないでいます。
さて、どの部分の事を指しているのでしょうか?

[ツリー表示へ]
タイトルRe^2: javascript 内のソース取得
記事No15486
投稿日: 2012/06/02(Sat) 09:12
投稿者nobu
ありがとうございます。

> そもそも上記(下記)のリンク先は正しいのでしょうか?
>  http://www.clublog.org/expeditions/3B7C

http://www.clublog.org/expeditions/3B7C は最初の画面です。
ですので、このURLだけでは棒グラフの画面はまだ表示されません。
http://www.clublog.org/charts/?c=3B7C でも同じ画面になります。

手動で行う場合には、上記URLを表示させてから
ここのテキストボックスに JA1 と入力後に[Find QSOs]ボタンをクリック。
表示されたら
[Propagation suggestions for 3B7C from JAPAN or from CQ zone 25 ]の
[JAPAN](リンク先)の部分をクリックすると棒グラフが表示されます。
最初の質問では、ここまでの操作をVB6で行うコードを書きました。
この棒グラフが表示されているソースをVB6で取得したいのです。
Table が取得出来ると楽ですがhtmlでも後は必要部分の抜き出しをします。

> >[10m 809QSOs] などや[棒グラフの値]の取得が出来ないでいます。
> さて、どの部分の事を指しているのでしょうか?

[Google Chrome] にて棒グラフの画面の表示が完了したらマウスの右クリック、
[名前を付けて保存]で保存されたファイルの内容を見ると
下記の様な部分があります。
[Google Chrome] にての[ページのソースを表示]では該当部分が含まれていません。
(IEで保存したファイルでは該当部分が含まれていませんでした)


そこから
[10 m: 809 QSOs] や [width="10px" height="3px"] の中の
[height="3px"]が棒グラフの高さなので、これらを取得したいです。
[160 m: 146 QSOs]まであります。
0 1 2 3 4 ...23     は時間軸でGMT(日本時間ー9)です。

一部分を抜き出し....
<div id="results" align="center" style="display: block; "><div id="propagation"><center><h3>Propagation to 3B7C from <b>JAPAN</b></h3><b>10 m: 809 QSOs</b>
<table class="propagationChart" cellspacing="0"><tbody><tr><td></td><td></td><td></td><td></td><td><img src="./Club Log  Expedition Charts - 3B7C__files/g.gif" width="10px" height="3px"></td><td><img src="./Club Log  Expedition Charts - 3B7C__files/g.gif" width="10px" height="24px"></td><td><img src="./Club Log  Expedition Charts - 3B7C__files/g.gif" width="10px" height="88px"></td><td>
...まだ続きあり....

[ツリー表示へ]