Добрый день! Подскажите пожалуйста есть ли способы обхода ошибки 403 при парсинге? Есть процедура по авторизации, с помощью нее логинюсь на сайт и получаю куки (ID сессии), далее захожу на нужную страницу выгружаю данный буквально 5-8 запросов и выходит ошибка 403. Пробовал ставить задержку в 10 секунд, не помогает.
Функция ПолучитьДанные(Артикул);
// Выполняем второй запрос и переходим на нужную страницу с указанием ID сесии
HTTPСоединение = Новый HTTPСоединение(АдресРесурса,443,,,,5,Новый ЗащищенноеСоединениеOpenSSL);
HTTPЗапрос = Новый HTTPЗапрос("/catalog/product/" + ПолучитьАртикул(Артикул) + "/");//("/catalog/product/" + ПолучитьАртикул(Номенклатура));
HTTPЗапрос.Заголовки.Вставить("Content-Type", "text/html");
HTTPЗапрос.Заголовки.Вставить("cookie", ИдентификаторСессии);
Пауза(10);
Результат = HTTPСоединение.Получить(HTTPЗапрос);
КодСостояния = Результат.КодСостояния;
Если КодСостояния = 200 Тогда
ТекстХТМЛ = Результат.ПолучитьТелоКакСтроку();
СтруктураДанных = Новый Структура;
Остаток = РазборДанных("in_stock__available"">", "шт"); // Параметры 1- Подстрока начала раздела 2 - подстрока окончания раздела
Цена = РазборДанных("price ""><span class=""numbers"">", "руб");
Артикул = РазборДанных("Код: <span>", "<");
СтруктураДанных.Вставить("Цена", Цена);
СтруктураДанных.Вставить("Остаток", Остаток);
СтруктураДанных.Вставить("Артикул", Артикул);
Возврат СтруктураДанных;
ИначеЕсли КодСостояния = 403 Тогда
Возврат "Ошибка " + КодСостояния;
КонецЕсли;
КонецФункции
ПоказатьПо теме из базы знаний
- .Net в 1С. Асинхронные HTTP запросы, отправка Post нескольких файлов multipart/form-data, сжатие трафика с использованием gzip, deflate, удобный парсинг сайтов и т.д.
- Метаданные и их идентификаторы
- Описание почти всех событий технологического журнала
- Управление Selenium Web Driver из 1С (или парсинг из 1С по-взрослому)
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот