using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.IO;
namespace cagy_okex
{
public class WebHelper
{
public string GetUrlJson(string url)
{
try
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "get";
request.Headers["x-auth-token"] = "123459"; //添加头
request.ContentType = "application/json;charset=UTF-8";
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
string json = GetResponseString(response);
return json;
}
catch (Exception e)
{
Console.Write("WebHelper:" + e.Message);
return "";
}
}
public string GetResponseString(HttpWebResponse response)
{
string json = null;
using (StreamReader reader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.GetEncoding("UTF-8")))
{
json = reader.ReadToEnd();
}
return json;
}
public string GetJsonFile(string path)
{
StreamReader sr = new StreamReader(path);
string a = sr.ReadToEnd();
sr.Close();
return a;
}
}
}
public void Start()
{
while (true)
{
try
{
//获取JSON串GetJsonFile
WebHelper wh = new WebHelper();
string json = wh.GetUrlJson("http://www.okexcn.com/api/swap/v3/instruments/BTC-USDT-SWAP/candles?start=2021-01-15T02:31:00.000Z&end=2021-01-25T02:55:00.000Z&granularity=3600");
//if (json.Contains("数据不存在")) continue;
Console.WriteLine(json);
GetToJsonList(json);
//将JSON串处理
Thread.Sleep(200);//500毫秒获取一次
}
catch (Exception ex)
{
Console.WriteLine("有错:" + ex.Message);
Thread.Sleep(1000);
continue;
}
}
}
public void GetToJsonList(string json)
{
JArray jsonArr = (JArray)JsonConvert.DeserializeObject(json);
for (int i = 0; i < jsonArr.Count; i++)
{
DataItem di = new DataItem();
var it = jsonArr[i].ToString().Replace("[", "").Replace("]", "").Replace("\r\n", "").Replace("\\","").Replace(" ","").Replace(@"""","'");
string sql = "insert into bh(tm,kai,gao,di,shou,vm,vmb) values(" + it + ");";
Console.WriteLine(sql);
}
}