三流君 ken3のmemo置き場

三流プログラマーのメモ書きです。主にVBAやWindowsの話題が多いです

挨拶・自己紹介:
失敗続きのAB型の変わり者 :三流プログラマー Ken3です
フリーのエンジニア・個人事業主です・・と書くと聞こえはイイが(それとなくカッコよく聞こえるが)、 現在は小さな案件の受注請負 と 短期派遣 で 日々つつましく?ほそぼそと暮らしてます。
Ken3三流君の連絡先:
[google formsで連絡する]
上記の問い合わせフォームに質問・感想など気軽に書き込んでください

よく検索されるキーワード: [質問回答XXXXさんへ] [CreateObject] [VBA] [JRA競馬オッズ]

未解決 JRA3連単の質問について (25/11/29) 未解決です 返信用のメモ

JRA3連単の質問について (25/11/29)

質問

3連単の取得方法がわかりません。 馬連などのソースは、以下のような形式になっています。

<a href="#" onclick="return doAction('/JRADB/accessO.html', 'pw154ou1005202504030320251011Z/D5');"

しかし、3連単の場合は以下のようになっています。

<a href="#" onclick="return doAction('/JRADB/accessO.html', 'pw158op1008202504051120251122Z/45', '2/3D', '00/1E', '1/0E');">

この場合、strPARA = の部分はどのような書式で記述すればよいでしょうか。(あるいは ソース = のところをいじるのでしょうか)


回答

ご提示いただいた doAction の部分は判断が難しかったのですが、3連単のHTMLソースを確認し、「軸馬1着」で検索して調査しました。

該当箇所と思われるボタンのソースは以下の通りです。

<div class="btn"><a href="#" onclick="jump_pw158ou(); return false;" class="btn-def blue">表示</a></div>

ここで onclick="jump_pw158ou() をコールしているため、次に jump_pw158ou 関数を探しました。

3連単のパラメーターについて

調査の結果、以下のあたりが怪しいと思われます。

//パラメータ設定
document.getElementById("commFormMulti").innerHTML += '<input type="hidden" name="cname"  value="' + strxW15 + '">';
document.getElementById("commFormMulti").innerHTML += '<input type="hidden" name="juma1"  value="' + strJuma1 + '">';
document.getElementById("commFormMulti").innerHTML += '<input type="hidden" name="juma2"  value="' + strJuma2 + '">';
document.getElementById("commFormMulti").innerHTML += '<input type="hidden" name="juma3"  value="' + strJuma3 + '">';

document.getElementById("commFormMulti").action = strUrl;
document.getElementById("commFormMulti").submit();

マルチのフォーム(commFormMulti)に対して、cname と軸馬3つ(juma1, juma2, juma3)を設定して送っているようです。

また、セレクトボックスの値(例: "01/3F""02/60")の意味も解析が必要そうです。

<option value="99/EE" selected>すべて</option>
<option value="01/3F">1.&nbsp;ジャスティンパレス</option>
<option value="02/60">2.&nbsp;クロワデュノール</option>

以上、ズバリの解決ではありませんが、軽めの調査結果でした。解決のヒントとなれば幸いです。

とりあえず、返信する


調査参照用ソースコード

3連単のHTMLソース(抜粋)

<div class="inner mt10">
  <div class="cell left">
    <ul class="jiku">
      <li>
        <label><span>軸馬1着</span><span class="dropdown">
           <select name="juma1" id="juma1" class="dropdown-select" tabindex="0">
              <option value="99/EE" selected>すべて</option>
              <option value="01/3F">1.&nbsp;ジャスティンパレス</option>
              <option value="02/60">2.&nbsp;クロワデュノール</option>
              <option value="03/81">3.&nbsp;コスモキュランダ</option>
              <option value="04/A2">4.&nbsp;ディープモンスター</option>
              <option value="05/C3">5.&nbsp;サンライズアース</option>
              <option value="06/E4">6.&nbsp;ホウオウビスケッツ</option>
              <option value="07/05">7.&nbsp;ダノンベルーガ</option>
              <option value="08/26">8.&nbsp;カランダガン</option>
              <option value="09/47">9.&nbsp;セイウンハーデス</option>
              <option value="10/4D">10.&nbsp;シュトルーヴェ</option>
              <option value="11/6E">11.&nbsp;アドマイヤテラ</option>
              <option value="12/8F">12.&nbsp;ヨーホーレイク</option>
              <option value="13/B0">13.&nbsp;ブレイディヴェーグ</option>
              <option value="14/D1">14.&nbsp;ダノンデサイル</option>
              <option value="15/F2">15.&nbsp;マスカレードボール</option>
              <option value="16/13">16.&nbsp;シンエンペラー</option>
              <option value="17/34">17.&nbsp;ドゥレッツァ</option>
              <option value="18/55">18.&nbsp;タスティエーラ</option>
          </select>
        </span></label>
      </li>
      <li>
        <label><span>軸馬2着</span><span class="dropdown">
          <select name="juma2" id="juma2" class="dropdown-select" tabindex="0">
            <option value="99/EE" selected>すべて</option>
            <option value="01/3F">1.&nbsp;ジャスティンパレス</option>
            <option value="02/60">2.&nbsp;クロワデュノール</option>
            <option value="17/34">17.&nbsp;ドゥレッツァ</option>
            <option value="18/55">18.&nbsp;タスティエーラ</option>
          </select>
        </span></label>
      </li>
      <li>
        <label><span>軸馬3着</span><span class="dropdown">
          <select name="juma3" id="juma3" class="dropdown-select" tabindex="0">
            <option value="99/EE" selected>すべて</option>
            <option value="15/F2">15.&nbsp;マスカレードボール</option>
            <option value="16/13">16.&nbsp;シンエンペラー</option>
            <option value="17/34">17.&nbsp;ドゥレッツァ</option>
            <option value="18/55">18.&nbsp;タスティエーラ</option>
          </select>
        </span></label>
      </li>
    </ul>
  </div>
  <div class="cell right">
    <div class="btn"><a href="#" onclick="jump_pw158ou(); return false;" class="btn-def blue">表示</a></div>
  </div>
</div>

JavaScript(抜粋)

function jump_pw158ou() {
  var para1 = document.getElementById('juma1').value;
  var para2 = document.getElementById('juma2').value; 
  var para3 = document.getElementById('juma3').value; 
  var para4 = document.getElementById('xW15').value;
  var paraChk = 1;
  var para1wk = para1.substring(0, 2)
  var para2wk = para2.substring(0, 2)
  var para3wk = para3.substring(0, 2)
  
  if ((para1wk==99) && (para2wk==99) && (para3wk==99)) {
    paraChk = 0;
  } else {
    if ((para1wk == para2wk) && !((para1wk == "99") && (para2wk == "99"))) {
        paraChk = 1;
    } else {
        if ((para2wk == para3wk) && !((para2wk == "99") && (para3wk == "99"))) {
            paraChk = 1;
        } else {
            if ((para1wk == para3wk) && !((para1wk == "99") && (para3wk == "99"))) {
                paraChk = 1;
            } else {
                paraChk = 0;
            }
        }
    }
  }

  if (paraChk==1) {
    alert("軸馬はそれぞれ違う馬番を選択してください。");
  } else {
    calldoAction(para4, para1, para2, para3, '');
  }
  return false;
}
  
function reload_pw158ou(paraUrl,para15,para1,para2,para3) {
  calldoAction(para15, para1, para2, para3, paraUrl);
  return false;
}

function calldoAction (str1, str2, str3, str4, str5) {
  var strxW15 = str1;
  var strJuma1 = str2;
  var strJuma2 = str3;
  var strJuma3 = str4;
  var strUrl;
  
  if (str5 == "") {
      strUrl = '/JRADB/accessO.html';
  } else {
      strUrl = str5;
  }
  
  //パラメータ設定
  document.getElementById("commFormMulti").innerHTML += '<input type="hidden" name="cname"  value="' + strxW15 + '">';
  document.getElementById("commFormMulti").innerHTML += '<input type="hidden" name="juma1"  value="' + strJuma1 + '">';
  document.getElementById("commFormMulti").innerHTML += '<input type="hidden" name="juma2"  value="' + strJuma2 + '">';
  document.getElementById("commFormMulti").innerHTML += '<input type="hidden" name="juma3"  value="' + strJuma3 + '">';

  document.getElementById("commFormMulti").action = strUrl;
  document.getElementById("commFormMulti").submit();
  return false;
}

質問・感想・クレームなど、
気軽にコメント欄に書いてもらえるとうれしいです。

[Googleフォームにコメントを残す]
↑質問・コメントの入力フォームです、気軽に書いてください


フッター:最後にKen3Videoの動画一覧を紹介します

YouTubeにアップした動画です。他の動画を一瞬でも見てもらえるとさらに嬉しいです。
再生リスト:[三流君Ken3の最新動画]←リストの一覧形式で表示する


また、ブログを見に来てくださいね。ではまたぁ~