Leaf.xNet - Библиотека для работы с запросами: Get, Post, Put, Path, Delete, Option.

Oleg1987

Client
Регистрация
11.08.2014
Сообщения
1 161
Благодарностей
743
Баллы
113
А можете показать пример как добавить в request куки из zenno профиля?
 

RoyalBank

Client
Регистрация
07.09.2015
Сообщения
557
Благодарностей
547
Баллы
93
А можете показать пример как добавить в request куки из zenno профиля?
Можно попробовать получить массив байт, через export и уже его добавить в контейнер для request.

C#:
HttpRequest request = new HttpRequest();

// Получаем массив байт из CookieContainer профиля проекта.
byte[] decByte = project.Profile.CookieContainer.Export();

// Загрузка CookieStorage массива байт - byte[].
request.Cookies = CookieStorage.FromBytes(decByte);
 

xASZx

Client
Регистрация
24.11.2017
Сообщения
70
Благодарностей
15
Баллы
8
Отличная статья, давно хотел с этой библиотекой поработать) Но не находил норм примеров)
 
  • Спасибо
Реакции: RoyalBank

xASZx

Client
Регистрация
24.11.2017
Сообщения
70
Благодарностей
15
Баллы
8
Можно попробовать получить массив байт, через export и уже его добавить в контейнер для request.

C#:
HttpRequest request = new HttpRequest();

// Получаем массив байт из CookieContainer профиля проекта.
byte[] decByte = project.Profile.CookieContainer.Export();

// Загрузка CookieStorage массива байт - byte[].
request.Cookies = CookieStorage.FromBytes(decByte);
Такая ошибка получается
Выполнение действия CSharp OwnCode. Недопустимый двоичный формат входного потока. Начало содержимого (в байтах): 2E-6E-69-6B-65-2E-63-6F-6D-09-54-52-55-45-09-2F-09 ...
 

RoyalBank

Client
Регистрация
07.09.2015
Сообщения
557
Благодарностей
547
Баллы
93
Регистрация
13.04.2016
Сообщения
650
Благодарностей
52
Баллы
28
Возможно хорошая статья, но походу от профессионала для профессионалов...
т.е. пару строк про библиотеку и пол-тонны кода...
вопрос: зачем она нужна? зенка работает с пост-гет запросами, т.е. много кода есть, но зачем весь этот код просто упущено из контекста, вступления не хватает и как применять на практике.
 

RoyalBank

Client
Регистрация
07.09.2015
Сообщения
557
Благодарностей
547
Баллы
93
зачем она нужна?
Если вы делаете шаблоны на кубиках и этот функционал закрывает все потребности, то переходить на код или сторонние библиотеки нет необходимости. Но если если ваша ситуация выходит за рамки базового функционала, то нужно писать в коде. В этом случае, можно воспользоваться методами от разработчиков, либо взять стороннее решение, как эта библиотека.
 
Регистрация
13.04.2016
Сообщения
650
Благодарностей
52
Баллы
28
Если вы делаете шаблоны на кубиках и этот функционал закрывает все потребности, то переходить на код или сторонние библиотеки нет необходимости. Но если если ваша ситуация выходит за рамки базового функционала, то нужно писать в коде. В этом случае, можно воспользоваться методами от разработчиков, либо взять стороннее решение, как эта библиотека.
вот этой вот ремарки и не хватило в начале статьи, т.к. профи живущий зенкой итак найдёт нужную библиотеку от разработчика на стороннем сайте, прочтёт её описание с примерами и применит её у себя, но мне "дубовому" эта статья так и не объяснила как применить эту библиотеку на практике...
 

RoyalBank

Client
Регистрация
07.09.2015
Сообщения
557
Благодарностей
547
Баллы
93
но мне "дубовому" эта статья так и не объяснила как применить эту библиотеку на практике...
Для этого и существует обсуждение, спрашивайте, какие возникли вопросы в применении на практике...
 

OlegR

Client
Регистрация
11.06.2015
Сообщения
236
Благодарностей
250
Баллы
63
интересная библиотека) спасибо
 
  • Спасибо
Реакции: RoyalBank

Gannicus

Client
Регистрация
21.05.2014
Сообщения
30
Благодарностей
4
Баллы
8
Как задать кодировку для запроса? Сайт с кодировкой windows-1251.
 

RoyalBank

Client
Регистрация
07.09.2015
Сообщения
557
Благодарностей
547
Баллы
93

xASZx

Client
Регистрация
24.11.2017
Сообщения
70
Благодарностей
15
Баллы
8

RoyalBank

Client
Регистрация
07.09.2015
Сообщения
557
Благодарностей
547
Баллы
93

p-sergei

Client
Регистрация
20.12.2016
Сообщения
523
Благодарностей
255
Баллы
63
RoyalBank подскажи пожалуйста, можно ли библиотекой отправлять запросы без открытия каждый раз соединения перед запросом? Xnet-ом я что-то так и не смог этого добиться, она каждый раз перед каждым запросом устанавливает соединение с сервером, потом посылает запрос.

P.S разобрался, методом тыка выяснил, что нельзя некоторые параметры для HttpRequest такие как например проксиклиент назначать в процессе работы, тогда будет выбивать на новое соединение. Может еще какие-то нельзя. Их надо выносить в участок кода где назначение происходит один раз, тогда будет работать!

1611591482469.png
 
Последнее редактирование:
  • Спасибо
Реакции: Alexmd и RoyalBank

ZSharp

Client
Регистрация
29.09.2013
Сообщения
387
Благодарностей
121
Баллы
43
C#:
var multipartContent = new MultipartContent()
{
    {new StringContent("Harry Potter"), "login"},
    {new StringContent("Crucio"), "password"},
    {new FileContent(@"C:\hp.rar"), "file1", "hp.rar"}
};
var httpResponse = request.Post("https://zennolab.com", multipartContent);
А смог кто-то победить этот miltipart с русским названием файла?
C#:
{new FileContent(@"C:\hp.rar"), "file1", "Название-Файла.rar"}
Если в параметр filename задать русский текст, имя файла превратится в ?????.

upd:
при чём путь к файлу с русскими символами он хавает, а имя файла нет.
 

deeqz1

Новичок
Регистрация
08.05.2021
Сообщения
16
Благодарностей
2
Баллы
3
Есть сайт раньше работал с ним на гет\пост всё норм было
С недавних пор владелец поставил на него клауд файр защиту и теперь любой Гет\Пост запрос даже полностью скопированный с браузера со всеми куками и даже самый первый в котором в принципе кук и не должно быть возвращает это
76832

Поспрашивал на разных форумах сказали проверяют поддержку js либо запросы curl на уровне nginx отсекают или куки на каждый запрос меняет, либо проверяет ssl шифры на соответствие UА
Я в этом полный нуб, поэтому такой вопрос если сделать запросы через эту библиотеку а не стандартные http кубики поможет ли обойти данную проблему
 

p-sergei

Client
Регистрация
20.12.2016
Сообщения
523
Благодарностей
255
Баллы
63
Я в этом полный нуб, поэтому такой вопрос если сделать запросы через эту библиотеку а не стандартные http кубики поможет ли обойти данную проблему
нет, заходи на страницу с браузером, получай куки и по идее дальше снова можешь на пост гет уйти
 

deeqz1

Новичок
Регистрация
08.05.2021
Сообщения
16
Благодарностей
2
Баллы
3
нет, заходи на страницу с браузером, получай куки и по идее дальше снова можешь на пост гет уйти
К сожалению не всё так просто. Я раньше так и делал парсил куки с браузерной версии и потом уже на запросах работал. Теперь тут при любом запросе от http сразу клауд фаер посылает нахрен нужен какой-то другой обход
 

ArmMonster

Client
Регистрация
10.08.2018
Сообщения
70
Благодарностей
10
Баллы
8
подскажите пожалуйста как получить заголовки запроса, не получаеться что то
 

IH4w6UuEMt

Client
Регистрация
01.09.2010
Сообщения
34
Благодарностей
1
Баллы
8
@RoyalBank Добрый день! Не могли бы вы описать парсинг с авторизацией в общих чертах, я обучаюсь и это пока темный лес для меня. Или указать на наглядный пример. Спасибо
 

RoyalBank

Client
Регистрация
07.09.2015
Сообщения
557
Благодарностей
547
Баллы
93
@RoyalBank Добрый день! Не могли бы вы описать парсинг с авторизацией в общих чертах, я обучаюсь и это пока темный лес для меня. Или указать на наглядный пример. Спасибо
Авторизация рассматривается индивидуально для каждого сайта. Как правило, простые решения сводятся к монитору траффика и кукам. Сложные решения требуют наличия поэтапного алгоритма шифрования пароля и прочие радости в виде двух факторной аутентификации и т.д.

Могу рекомендовать пытаться повторить авторизацию сначала кубиками, а затем переносить в код. Если будет загвоздка, то создавайте тему, прикрепляйте шаблон, описывайте суть проблемы, в этом случае у других участников будет возможность помочь.
 
  • Спасибо
Реакции: IH4w6UuEMt

radv

Client
Регистрация
11.05.2015
Сообщения
3 673
Благодарностей
1 855
Баллы
113
Или указать на наглядный пример. Спасибо
Посмотрите с разделе с готовыми бесплатными шаблонами, может найдете подходящий пример, а потом переводите уже в код.
 
  • Спасибо
Реакции: IH4w6UuEMt

imrum

Client
Регистрация
24.03.2020
Сообщения
6
Благодарностей
1
Баллы
3
Подскажите, а есть ли возможность поменять порядок заголовков?
 

SOPQ

Client
Регистрация
26.08.2019
Сообщения
14
Благодарностей
7
Баллы
3
Здравствуйте , подскажите по ошибке .
Выполнение действия CSharp OwnCode. Unable to establish SSL-connection with HTTP-server 'тут ссылка хоста сайта'.
 

RoyalBank

Client
Регистрация
07.09.2015
Сообщения
557
Благодарностей
547
Баллы
93
Unable to establish SSL-connection with HTTP-server
Как вариант, прокси забанен хостом, либо ошибка со стороны прокси, пробуйте отладку запроса в цикле, при подобной ошибке пробовать повторно отправлять.
 

SOPQ

Client
Регистрация
26.08.2019
Сообщения
14
Благодарностей
7
Баллы
3
Как вариант, прокси забанен хостом, либо ошибка со стороны прокси, пробуйте отладку запроса в цикле, при подобной ошибке пробовать повторно отправлять.
Нашёл проблему, http analyzer мешал запросу. Выключил его, запрос сработал
 

Porosenok

Client
Регистрация
26.09.2010
Сообщения
1 278
Благодарностей
96
Баллы
48
Подскажите, почему сделал как в статье
req.Cookies.Set("cookie", cookie, "zennolab.com", "/");
но крашится кубик на этом шаге с ошибкой Необратимое исключением System.NullReferenceException: Ссылка на объект не указывает на экземляр объекта..


Добавил вначале
req.Cookies = new CookieStorage();
и using прописал как в теме, теперь ошибка The type or namespace name CookieStorage could not be found

оказывается нужно полный путь писать req.Cookies = new Leaf.xNet.CookieStorage();
 
Последнее редактирование:

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