Как получить значение переменной java-скрипта с сайта в C# .net

Я хочу получить значение переменной JavaScript с веб-сайта в C# Net . В настоящее время я использую этот код:

System.Net.WebClient wc = new System.Net.WebClient();

string webData = wc.DownloadString("://87.126.167.13/");

textBox1.Text = Convert.ToString(webData);

Возвращает HTML. Но я хочу значение температуры по этой ссылке:://87.126.167.13/ но это возвращает:

<td>Temperature:</td><td><script>document.write(MNS,TW1,TW2,'.',TF,TF1)</script> C</td>

1 ответ

Формат страницы CSV (http://87.126.167.13/x) этот сайт, вероятно, будет более полезным для вас. Это выглядит как:

Date,AirTemp,SoilTemp,Humidity
2013-08-22 14:46:00,+31.20,+21.6,32
2013-08-22 15:13:55,+32.22,+21.5,31
** more values **
2013-08-22 13:50:26,+30.39,+21.6,34
2013-08-22 14:18:19,+31.40,+21.6,33
1004+2200

Вы можете проанализировать эти значения с помощью простого кода, например

var lines = webData.Split('\n');
var allData = lines.Skip(1).Take(lines.Length - 2).Select(x => new WeatherData(x));
var latestDate = allData.Max(x => x.DateTime);
var latestAirTemp = allData.First(x => x.DateTime == latestDate).AirTemp;

public class WeatherData
{
    public DateTime DateTime { get; set; }
    public decimal AirTemp { get; set; }
    public decimal SoilTemp { get; set; }
    public int Humidity { get; set; }
    public WeatherData(string rawData)
    {
        // implement
    }
}

Это или файл скрипта http://87.126.167.13/sчто и определяет MNS,TW1,... что вы упоминаете. Исходя из этого, вы можете разобрать, какие значения вы хотите. Это выглядит как:

var AN3=   10;var MNS="+";var TW1=    1;var TW2=    9;var TF=    7;var TF1=    0;var HR=   22;var MN=   23;var SC=   39;var DY=   22;var MH=    8;var YR=    3;var RH="   53";var WD="South-East";var WS="00";var MNS2="+";var ST="21.5";var BP="8261";var RAD2="1.11";
Другие вопросы по тегам