Задача: Есть много ссылок на сайте в определенное время обновляется таймер необходимо узнать время обновления. Для этого пытаюсь Get/Post запросом спарсить Fetch/xhr. Чтобы получить данные сайта нужно авторизоваться через bearer token
Сложности: при попытке спарсить данные постоянно выдает пустую дату, раньше была ошибка 444 видимо был неккоректно указан токен входа. Сейчас просто пустая дата, перерыл 100500 тем на форуме, пробовал и гет и пост запросом и стандартными методами и через C# результат один и тот же.
Ниже прилагаю скрины (какие данные необходимо спарсить, гет запрос, пост запрос такой же, тип выводимых данных менял не помогает)
Код C#
и результат один и тот же {"status":1,"data":{}} - пустая дата не json. При переходе по ссылке тоже самое выводит а в Fetch совсем другие данные.
Код который работает на питоне
Можно сказать что это обычная браузерная игра. Ладу дать не могу. Помощи буду очень рад
Сложности: при попытке спарсить данные постоянно выдает пустую дату, раньше была ошибка 444 видимо был неккоректно указан токен входа. Сейчас просто пустая дата, перерыл 100500 тем на форуме, пробовал и гет и пост запросом и стандартными методами и через C# результат один и тот же.
Ниже прилагаю скрины (какие данные необходимо спарсить, гет запрос, пост запрос такой же, тип выводимых данных менял не помогает)
Код C#
Код C#:
string userAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0";
string url = "https://backend-farm.plantvsundead.com/farms/61165735d3e71b001b34f632";
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Ssl3 | System.Net.SecurityProtocolType.Tls | System.Net.SecurityProtocolType.Tls11 | System.Net.SecurityProtocolType.Tls12;
// GET запрос
System.Net.HttpWebRequest request = (System.Net.HttpWebRequest) System.Net.WebRequest.Create(url);
request.Method = "GET";
request.UserAgent = userAgent;
request.Headers.Add("Accept-Language", "en-US,en;q=0.5");
request.Headers.Add("Bearer Token", "тут токен ");
System.Net.HttpWebResponse response = (System.Net.HttpWebResponse) request.GetResponse();
using (var read = new StreamReader(response.GetResponseStream())){
string data = read.ReadToEnd();
return data;
}
и результат один и тот же {"status":1,"data":{}} - пустая дата не json. При переходе по ссылке тоже самое выводит а в Fetch совсем другие данные.
Код который работает на питоне
Код на питоне:
import requests
url = 'https://backend-farm.plantvsundead.com/farms/other/0xee5de8fe961b9d2599a1eea298db87be8768889d?limit=10&offset=30'
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:70.0) Gecko/20100101 Firefox/70.0",
"Accept": "*/*",
"Accept-Language": "en-US,en;q=0.5",
"Connection": "keep-alive",
"Authorization": "Bearer Token: ТОКЕН
response = requests.get(url, headers=headers)
print(response.text)
Можно сказать что это обычная браузерная игра. Ладу дать не могу. Помощи буду очень рад
Вложения
-
32,8 КБ Просмотры: 113
-
29,5 КБ Просмотры: 118