Re[7]: Как распарсить СМИ2?
От: Passerby  
Дата: 05.11.24 08:27
Оценка:
Здравствуйте, Passerby, Вы писали:

P>Здравствуйте, Sinclair, Вы писали:

S>>Что именно вызывает затруднения?
P>Всем спасибо. Вызывало затруднение незнание PHP. Сделал так:
P>
P>using var result = await client.PostAsync("https://smi2.ru/newdata/jsapi?action=articles", new StringContent("{ \"block_id\":84683, \"count\":50, \"fields\":4194303 }", Encoding.UTF8, "application/json")).ConfigureAwait(false);
P>if (result.IsSuccessStatusCode)
P>{
P>    var message = result.Content.ReadAsStringAsync().Result;
P>    try
P>    {
P>        if (countError != 0) WriteLine(DateTime.Now + " Возобновление");
P>        countError = 0;

P>        List<string> listTitlesNew = new(4);
P>        string substringStart = "\"title\":\"";
P>        string substringEnd = "\",\"topic_id\"";
P>        int index = message.IndexOf(substringStart, 0);
P>        int l = substringStart.Length;
P>        while (index > -1)
P>        {
P>            int indexEnd = message.IndexOf(substringEnd, index + l);
P>            listTitlesNew.Add(message.Substring(index + l, indexEnd - index - l));
P>            index = message.IndexOf(substringStart, indexEnd + 2);
P>        }

P>        foreach (var v in listTitlesNew)
P>            if (listTitles != null && !listTitles.Contains(v) || listTitles == null)
P>            {
P>                WriteLine(DateTime.Now + "  " + v + " https://smi2.ru/");
P>                string sLow = v.ToLower();              
                
P>                bool china = sLow.Contains("китай") && sLow.Contains("тайвань");

P>                if (china)//if (DateTime.Now.Hour > 9 && DateTime.Now.Hour < 23)
P>                {
P>                    WhileSpeek("СМИ 2 " + v);
P>                }
P>            }
P>        listTitles = listTitlesNew;
P>    }
P>    catch (Exception e) { if (countError > 10) speek.Speak(DateTime.Now + " Нет ответа от сервера"); Thread.Sleep(15000); }
P>    Thread.Sleep(5000);
P>}
P>

P>Конечно красивее https://rsdn.org/forum/dotnet/8845783?tree=tree
Автор: kov_serg
Дата: 03.11 01:12
Но чтобы разделы печатать, нужно теги считат, что лень.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.