Как получить данные с сайта zachestnyibiznes.ru из 1С и почему возникает ошибка 403?

Программист 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

Часто при попытке автоматизировать сбор данных с внешних ресурсов, таких как порталы проверки контрагентов, разработчики 1С сталкиваются с ошибкой 403 Forbidden. В этой статье мы разберем, почему простой метод HTTPСоединение.Получить() перестает работать, и как правильно подходить к интеграции с современными веб-сервисами.

Почему возникает ошибка 403 Forbidden?

Ошибка 403 означает, что сервер сайта успешно принял ваш запрос, но отказал в доступе к запрашиваемому ресурсу. В отличие от ошибки 404, которая говорит о том, что страница не найдена, 403 — это осознанная блокировка со стороны владельцев сайта.

Когда вы обращаетесь к сайту через браузер, вы отправляете не только URL, но и огромный массив метаданных: User-Agent, Cookies, заголовки Accept-Language и другие параметры, подтверждающие, что вы реальный пользователь. Современные сайты, содержащие ценную коммерческую информацию, используют специализированные системы защиты, которые:

  1. Проверяют User-Agent: Сервер видит, что запрос идет не от известного браузера (Chrome, Firefox), а от стандартной библиотеки 1С, и автоматически блокирует его.
  2. Анализируют TLS-отпечатки: Система безопасности сравнивает способ установления SSL-соединения, который использует 1С (через ЗащищенноеСоединениеOpenSSL), с типичными браузерными соединениями.
  3. Требуют исполнения JavaScript: Многие сайты при первом посещении отдают код, который должен выполниться в браузере. Так как 1С не является браузером, проверка не проходит, и контент не отображается.

Как диагностировать проблему с помощью Fiddler?

Если вы хотите понять, что именно отправляет ваш браузер и чем этот запрос отличается от запроса 1С, воспользуйтесь инструментом Fiddler. Это прокси-сервер, который перехватывает весь исходящий трафик.

  1. Установите и запустите Fiddler.
  2. В настройках 1С укажите использование прокси-сервера (локальный адрес Fiddler).
  3. Выполните ваш код HTTPЗапрос из 1С.
  4. Сравните полученный дамп запроса с тем, как выглядит запрос, отправляемый обычным браузером.

Вы увидите, что браузерный запрос содержит десятки заголовков, включая сложные Cookies и токены сессии, которые невозможно получить простым методом Получить().

Правильные подходы к интеграции

Попытки «обойти» защиту через парсинг веб-страниц — это путь к нестабильным решениям, которые могут перестать работать в любой момент при обновлении сайта. Давайте разберем более надежные методы работы:

1. Использование официального API

Владельцы подобных порталов предоставляют API для бизнеса именно для того, чтобы исключить проблемы с блокировками. Это единственный стабильный способ получения данных. Интеграция через API позволяет:

Для работы с API обычно используются следующие объекты 1С:


// Пример работы с API через HTTP-запрос
HTTPСоединение = Новый HTTPСоединение("api.zachestnyibiznes.ru", 443,,,,, Новый ЗащищенноеСоединениеOpenSSL);
Запрос = Новый HTTPЗапрос("/api/v1/search?query=7813054157&token=ВАШ_ТОКЕН");
Ответ = HTTPСоединение.Получить(Запрос);
РезультатВJSON = Ответ.ПолучитьТелоКакСтроку();

2. Анализ заголовков (Если API недоступно)

Если вы все же решили попробовать имитировать запрос, попробуйте максимально приблизить его к браузерному. В HTTPЗапрос можно добавлять заголовки:


HTTPЗапрос = Новый HTTPЗапрос("/search?query=7813054157");
HTTPЗапрос.Заголовки.Вставить("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36");
HTTPЗапрос.Заголовки.Вставить("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8");
// При необходимости добавьте Cookie, полученные ранее

Подведем итоги

Попытки парсинга «в лоб» часто приводят к ошибке 403, так как современные системы защиты распознают автоматизированные запросы 1С. Мы рекомендуем:

Работа с внешними сервисами требует профессионального подхода, основанного на стандартах обмена данными, что в конечном итоге обеспечивает надежную работу вашей учетной системы.

← На главную