食個xml咁簡單...

TOP

你識邊樣 咩用果樣 因為全部programming language 都得

TOP

簡單D 用EXCEL 咪得囉
小花猫 發表於 2016-11-22 12:15 PM


師兄, 可否詳細一點嗎?

TOP

食個xml咁簡單...
yjfoeg 發表於 2016-11-22 04:12 PM



    師兄, 有無多D資料? Thanks

TOP

師兄, 可否詳細一點嗎?
Ponya 發表於 2016-11-23 09:58 PM


你才應該是被問的那個
說了好大半天,你到底要下載甚麼數據,同點用法,可以講了嗎?

TOP

師兄, 有無多D資料? Thanks
Ponya 發表於 2016-11-23 21:58

最簡單
馬會本身有提供以httpget, return個xml畀你
例如: http://bet.hkjc.com/racing/getXML.aspx?type=win&RaceNo=1
  1. <ROOT>
  2. <WIN DATE="23-11-2016" VENUE="HV" updateDate="23-11-2016" updateTime="19:16:03">
  3. <RACE NUM="1" TIME="191603" FINAL_COLLATE="1" ID="19857" PID="19949">
  4. <OUT TYPE="O" NUM="1" WILLPAY="3500" HF="1" BIG_DROP="0" ODDSDROP="12.50">3.5</OUT>
  5. <OUT TYPE="O" NUM="2" WILLPAY="4200" HF="2" BIG_DROP="0" ODDSDROP="16.00">4.2</OUT>
  6. <OUT TYPE="O" NUM="3" WILLPAY="9900" HF="0" BIG_DROP="0" ODDSDROP="0.00">9.9</OUT>
  7. <OUT TYPE="O" NUM="4" WILLPAY="35100" HF="0" BIG_DROP="0" ODDSDROP="0.00">35</OUT>
  8. <OUT TYPE="O" NUM="5" WILLPAY="15300" HF="0" BIG_DROP="0" ODDSDROP="0.00">15</OUT>
  9. <OUT TYPE="O" NUM="6" WILLPAY="9800" HF="0" BIG_DROP="0" ODDSDROP="0.00">9.8</OUT>
  10. <OUT TYPE="O" NUM="7" WILLPAY="20300" HF="0" BIG_DROP="0" ODDSDROP="0.00">20</OUT>
  11. <OUT TYPE="O" NUM="8" WILLPAY="25350" HF="0" BIG_DROP="0" ODDSDROP="7.41">25</OUT>
  12. <OUT TYPE="O" NUM="9" WILLPAY="41700" HF="0" BIG_DROP="0" ODDSDROP="0.00">41</OUT>
  13. <OUT TYPE="O" NUM="10" WILLPAY="5200" HF="3" BIG_DROP="0" ODDSDROP="10.34">5.2</OUT>
  14. <OUT TYPE="O" NUM="11" WILLPAY="38400" HF="0" BIG_DROP="0" ODDSDROP="0.00">38</OUT>
  15. <OUT TYPE="O" NUM="12" WILLPAY="16600" HF="0" BIG_DROP="0" ODDSDROP="0.00">16</OUT>
  16. </RACE>
  17. </WIN>
  18. </ROOT>
複製代碼
入面已經包括日期、場次、時間、賠率等資料
你request, 砌返個xml reader、砌返model, 就可以read到
之後用黎做乜, 我就唔知你啦

TOP

For me php/js

TOP

寫左15分鐘...
  1. using System;
  2. using System.ComponentModel;
  3. using System.Data;
  4. using System.IO;
  5. using System.Linq;
  6. using System.Net;
  7. using System.Xml.Linq;

  8. namespace HKJC
  9. {
  10.     public partial class ApplicationMain : DevExpress.XtraEditors.XtraForm
  11.     {
  12.    
  13.         BindingList<DataModel.ResultModel> bind = new BindingList<DataModel.ResultModel>();

  14.         public ApplicationMain()
  15.         {

  16.             InitializeComponent();
  17.             oddsGridControl.DataSource = bind;
  18.         }

  19.         private void ApplicationMain_Shown(object sender, EventArgs e)
  20.         {
  21.             string result = "";
  22.             var request = (HttpWebRequest)HttpWebRequest.Create(new Uri("http://bet.hkjc.com/racing/getXML.aspx?type=win&RaceNo=2"));
  23.             request.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
  24.             request.Method = "GET";
  25.             request.ContentType = "text/xml; encoding='utf-8'";
  26.             using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
  27.             {
  28.                 using (StreamReader sr = new StreamReader(response.GetResponseStream()))
  29.                 {
  30.                     result = sr.ReadToEnd();
  31.                 }
  32.             }

  33.             XDocument doc = XDocument.Parse(result);
  34.             var rows = doc.Descendants("OUT").Select(sl => new
  35.             {
  36.                 NUM = (int)sl.Attribute("NUM"),
  37.                 ODDS = sl.Value,
  38.                 WILLPAY = sl.Attribute("WILLPAY").Value,
  39.                 HF = sl.Attribute("HF").Value,
  40.                 BIG_DROP = sl.Attribute("BIG_DROP").Value,
  41.                 ODDSDROP = sl.Attribute("ODDSDROP").Value,

  42.             });

  43.             foreach (var t in rows)
  44.             {
  45.                 //System.Diagnostics.Debug.WriteLine(t.NUM);
  46.                 bind.Add(new DataModel.ResultModel(t.NUM, t.ODDS, t.WILLPAY, t.HF, t.BIG_DROP, t.ODDSDROP));
  47.             }
  48.             System.Diagnostics.Debug.WriteLine("Well Done");
  49.         }
  50.     }
  51. }
複製代碼
  1. using System;

  2. namespace HKJC.DataModel
  3. {
  4.     [Serializable]
  5.     public class ResultModel
  6.     {
  7.         public int NUM { get; set; }
  8.         public string ODDS { get; set; }
  9.         public string WILLPAY { get; set; }
  10.         public string HF { get; set; }
  11.         public string BIG_DROP { get; set;}
  12.         public string ODDSDROP { get; set; }

  13.         public ResultModel(int _num, string _odds, string _willpay, string _hf, string _big_drop, string _oddsdrop) {
  14.             NUM = _num;
  15.             ODDS = _odds;
  16.             WILLPAY = _willpay;
  17.             HF = _hf;
  18.             BIG_DROP = _big_drop;
  19.             ODDSDROP = _oddsdrop;
  20.         }
  21.     }
  22. }
複製代碼
附件: 您需要登錄才可以下載或查看附件。沒有帳號?註冊

TOP

寫左15分鐘...
7h1r733n 發表於 2016-11-27 05:52 AM



    師兄, 你呢個係咪用C寫?

TOP

最簡單
馬會本身有提供以httpget, return個xml畀你
例如: 入面已經包括日期、場次、時間、賠率等資料
你re ...
yjfoeg 發表於 2016-11-23 10:10 PM



    師兄, 你呢個係邊個LANGUAGE?

TOP