Как поменять часовой пояс Без прокси

Vasilii

Новичок
Регистрация
31.07.2018
Сообщения
18
Благодарностей
0
Баллы
1
Подключаюсь через впн, соответственно айпи один, системное время другое.
Нужно чтобы в браузере зенки указывалось правильное.

Прочел тему: https://zennolab.com/discussion/threads/profili-osobennosti-generacii-proverki-zagruzki.59820/ Но тут указано просто поставить галку у проксей, у меня нет прокси.
Прочел тему: https://zennolab.com/discussion/threads/anonimnost-v-kazhdyj-zennoposter-ot-useragenta-do-shriftov-chast-1.37703/

Там под спойлером вариант 3 более-менее подходит, но после того как делаю как написано время в зенке меняется, но все равно подставляется не то, что нужно.

Получаем таймзону от стороннего сервиса (на примере бесплатного api.sypexgeo.net) с последующей эмуляцией через instance.SetTimezone()
Шаг 1. Добавить директивы using: Добавить действие -> Свой код -> Директивы using и общий код.
C#:

using System.Web;
Шаг 2. Добавить действие -> Свой код -> Ссылки из GAC.
  • Жмём "Добавить" далее ищем System.Web.dll последней версии и подходящей разрядности для Вашей ОС. Кликаем "ОК".
  • Жмём "Добавить" далее ищем System.Web.Extensions.dll последней версии и подходящей разрядности для Вашей ОС. Кликаем "ОК".
C#:

string response = String.Empty;
try {
string proxy = instance.GetProxy(); // или можно подставить переменную шаблона project.Variables["proxy"].Value
response = ZennoPoster.HttpGet(
@"http://api.sypexgeo.net/", // URL
proxy, // Прокси
"UTF-8", // Кодировка
ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.BodyOnly // Получаем только тело
);
} catch (Exception ex) {
return "Не загрузилось";
}
try {
var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
dynamic usr = serializer.DeserializeObject(response);

instance.TimezoneWorkMode = ZennoLab.InterfacesLibrary.Enums.Browser.TimezoneMode.Emulate;
instance.SetTimezone(usr["region"]["utc"],0);
} catch {return "Не удалось получить таймзону от sypexgeo";}

Есть ли другие способы сделать это? либо что я могу делать не так, что у меня выбирается не тот часовой пояс?
 

TwistDanceR

Активный пользователь
Регистрация
30.05.2019
Сообщения
479
Благодарностей
200
Баллы
43
Системное время на компе менять не пробовал ? На Whoer.net отображается разница, можно подобрать подходящую под впн. Я вручную под каждую проксю +-1 пояс накидываю, 100% анонимность оп Хуеру.
 

Vasilii

Новичок
Регистрация
31.07.2018
Сообщения
18
Благодарностей
0
Баллы
1
Системное время на компе менять не пробовал ? На Whoer.net отображается разница, можно подобрать подходящую под впн. Я вручную под каждую проксю +-1 пояс накидываю, 100% анонимность оп Хуеру.
Страны часто меняются, каждый раз подбирать не получится. Нужно чтобы делалось это автоматически.
 

ibred

Client
Регистрация
04.04.2015
Сообщения
3 835
Благодарностей
3 538
Баллы
113

Vasilii

Новичок
Регистрация
31.07.2018
Сообщения
18
Благодарностей
0
Баллы
1
Сайт выдаёт некорректный часовой пояс или ZP ставит другое значение?
ZP ставит другое значение.

Допустим, у меня 13:00, по айпишнику должно быть 15:00, а выставляет он 16:00
 

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 868
Благодарностей
1 114
Баллы
113
Регистрация
04.11.2019
Сообщения
178
Благодарностей
32
Баллы
28
Подключаюсь через впн, соответственно айпи один, системное время другое.
Нужно чтобы в браузере зенки указывалось правильное.

Прочел тему: https://zennolab.com/discussion/threads/profili-osobennosti-generacii-proverki-zagruzki.59820/ Но тут указано просто поставить галку у проксей, у меня нет прокси.
Прочел тему: https://zennolab.com/discussion/threads/anonimnost-v-kazhdyj-zennoposter-ot-useragenta-do-shriftov-chast-1.37703/

Там под спойлером вариант 3 более-менее подходит, но после того как делаю как написано время в зенке меняется, но все равно подставляется не то, что нужно.

Получаем таймзону от стороннего сервиса (на примере бесплатного api.sypexgeo.net) с последующей эмуляцией через instance.SetTimezone()
Шаг 1. Добавить директивы using: Добавить действие -> Свой код -> Директивы using и общий код.
C#:

using System.Web;
Шаг 2. Добавить действие -> Свой код -> Ссылки из GAC.
  • Жмём "Добавить" далее ищем System.Web.dll последней версии и подходящей разрядности для Вашей ОС. Кликаем "ОК".
  • Жмём "Добавить" далее ищем System.Web.Extensions.dll последней версии и подходящей разрядности для Вашей ОС. Кликаем "ОК".
C#:

string response = String.Empty;
try {
string proxy = instance.GetProxy(); // или можно подставить переменную шаблона project.Variables["proxy"].Value
response = ZennoPoster.HttpGet(
@"http://api.sypexgeo.net/", // URL
proxy, // Прокси
"UTF-8", // Кодировка
ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.BodyOnly // Получаем только тело
);
} catch (Exception ex) {
return "Не загрузилось";
}
try {
var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
dynamic usr = serializer.DeserializeObject(response);

instance.TimezoneWorkMode = ZennoLab.InterfacesLibrary.Enums.Browser.TimezoneMode.Emulate;
instance.SetTimezone(usr["region"]["utc"],0);
} catch {return "Не удалось получить таймзону от sypexgeo";}

Есть ли другие способы сделать это? либо что я могу делать не так, что у меня выбирается не тот часовой пояс?

Делаю также эти сниппетом, но с русской проксёй. Разница во времени получается 1 час. Время браузера неверно подставляется. Как пофиксить ?

Скрин: https://yadi.sk/d/AAEWJTlwG0Zbbw


C#:
Получаем таймзону от стороннего сервиса (на примере бесплатного api.sypexgeo.net) с последующей эмуляцией через instance.SetTimezone()
Шаг 1. Добавить директивы using: Добавить действие -> Свой код -> Директивы using и общий код.
C#:

using System.Web;
Шаг 2. Добавить действие -> Свой код -> Ссылки из GAC.
Жмём "Добавить" далее ищем System.Web.dll последней версии и подходящей разрядности для Вашей ОС. Кликаем "ОК".
Жмём "Добавить" далее ищем System.Web.Extensions.dll последней версии и подходящей разрядности для Вашей ОС. Кликаем "ОК".
C#:

string response = String.Empty;
try {
string proxy = instance.GetProxy(); // или можно подставить переменную шаблона project.Variables["proxy"].Value
response = ZennoPoster.HttpGet(
@"http://api.sypexgeo.net/", // URL
proxy, // Прокси
"UTF-8", // Кодировка
ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.BodyOnly // Получаем только тело
);
} catch (Exception ex) {
return "Не загрузилось";
}
try {
var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
dynamic usr = serializer.DeserializeObject(response);

instance.TimezoneWorkMode = ZennoLab.InterfacesLibrary.Enums.Browser.TimezoneMode.Emulate;
instance.SetTimezone(usr["region"]["utc"],0);
} catch {return "Не удалось получить таймзону от sypexgeo";}
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 683
Баллы
113
на моем прокси возвращает : "utc":3}
а этот код
var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
dynamic usr = serializer.DeserializeObject(response);
instance.TimezoneWorkMode = ZennoLab.InterfacesLibrary.Enums.Browser.TimezoneMode.Emulate;
instance.SetTimezone(usr["region"]["utc"],0);
подставляет 0. явно код кривой. потому как если выполнить instance.SetTimezone(3,0); то все норм сразу.
зачем такой сложный код при обычном парсе ? utc и по обычной регулярке вытягивается норм.
 

Vasilii

Новичок
Регистрация
31.07.2018
Сообщения
18
Благодарностей
0
Баллы
1
на моем прокси возвращает : "utc":3}
а этот код
var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
dynamic usr = serializer.DeserializeObject(response);
instance.TimezoneWorkMode = ZennoLab.InterfacesLibrary.Enums.Browser.TimezoneMode.Emulate;
instance.SetTimezone(usr["region"]["utc"],0);
подставляет 0. явно код кривой. потому как если выполнить instance.SetTimezone(3,0); то все норм сразу.
зачем такой сложный код при обычном парсе ? utc и по обычной регулярке вытягивается норм.
Буду благодарен, если подскажешь, как можно организовать проще.
 

zarufakis

Client
Регистрация
22.03.2019
Сообщения
1 511
Благодарностей
873
Баллы
113
Вместо "Europe/Moscow" подставляй свою таймзону и будет тебе счастье

C#:
// Установка timezone, формат: "Europe/Moscow"
instance.SetIanaTimezone(project.Variables["timezone"].Value);
 
  • Спасибо
Реакции: Boo

PlayerT7

Client
Регистрация
15.12.2011
Сообщения
31
Благодарностей
5
Баллы
8

Vasilii

Новичок
Регистрация
31.07.2018
Сообщения
18
Благодарностей
0
Баллы
1
Вместо "Europe/Moscow" подставляй свою таймзону и будет тебе счастье

C#:
// Установка timezone, формат: "Europe/Moscow"
instance.SetIanaTimezone(project.Variables["timezone"].Value);
Спасибо, но всё-же это немного не то. Если я буду часто менять страны, то мне придется вручную постоянно узнавать и подбирать часовые пояса, хотелось бы это автоматизировать, в этом и состоит изначальная задача.
 

zarufakis

Client
Регистрация
22.03.2019
Сообщения
1 511
Благодарностей
873
Баллы
113
Спасибо, но всё-же это немного не то. Если я буду часто менять страны, то мне придется вручную постоянно узнавать и подбирать часовые пояса, хотелось бы это автоматизировать, в этом и состоит изначальная задача.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)