Скачать файл из интернета через 1С

1. Anton64 192 19.05.14 13:56 Сейчас в теме
Необходимо сохранить файл по адресу https://www.<адрес сайта>./xls/ через 1С куда нибудь на диск.
КопироватьФайл() - не работает. Ошибка доступа к файлу.

Через HTTPСоединение.Получить(Запрос, ИмяФайлаПриемника) сохраняется не сам файл, а подобие веб-страницы.

Если я правильно понимаю, то проблема в том, что по адресу https://www.<адрес сайта>./xls/ файл отчета доступен не сразу, а каким-то образом формируется в момент открытия ссылки.
Через браузер файл скачивается без проблем.

Может кто-нибудь порекомендует попробовать еще какие-нибудь варианты?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. Anton64 192 19.05.14 16:22 Сейчас в теме
(2) deniseek77, спасибо, с avtodim действительно работает, но в моем случае путь к файлу не показывается почему-то. Возможно из-за httpS?
4. deniseek77 86 19.05.14 16:27 Сейчас в теме
(3) Anton64, Не думаю, я с сайта 1с апдейты качал, там как раз https
5. Anton64 192 19.05.14 16:28 Сейчас в теме
кстати говоря, обычный файл тоже не скачивается даже по прямой ссылке через КопироватьФайл, пример: https://www.gpncard.ru/upload/Instrukcija_po_ispolzovaniju_gpncard.ru_%282013%29.pdf
6. deniseek77 86 20.05.14 12:33 Сейчас в теме
(5) Anton64, Копировать нужно так, но там идентифицироваться, иначе говорит, что проверку не проходим...

КопироватьФайл("https://www.gpncard.ru/upload/Instrukcija_po_ispolzovaniju_gpncard.ru_(2013).pdf","D:\1.pdf");
7. DoxJIbIu13 13.03.18 09:47 Сейчас в теме
Добрый день, хотел бы поделиться тем как мне удалось решить данную проблему.
Данные взяты вот из этой статьи: 1c-programmer-blog.ru

WinHttp = Новый COMОбъект("WinHttp.WinHttpRequest.5.1"); //WinHttpRequest
	
	WinHttp.Open("GET", ПолноеИмяФайлаИсточника, Ложь);
	WinHttp.Send();
	Если WinHttp.Status = 200 Тогда
		Stream = Новый COMОбъект("ADODB.Stream");
 
		Stream.Type = 1;
		Stream.Mode = 3;
 
		Stream.Open();
		Stream.Write(WinHttp.ResponseBody); 
		Stream.SaveToFile(ПолноеИмяФайлаПриемника, 2);
		Stream.Close();
		Stream = Неопределено;
	Иначе
		//Сообщить("HTTP " + WinHttp.Status + " " + WinHttp.StatusText);
		//Возврат;
	КонецЕсли;
Показать
dkonst8; Pikachu; Foxes82; maksa2005; dhonid@yandex.ru; ponka; Alexei_Siva; Medvedkov-85; u_n_k_n_o_w_n; xpess; Anton64; +11 Ответить
8. Alever 4 09.08.20 19:54 Сейчас в теме
(7) Супер! Помогло именно место в коде где производится поиск программы ADOBE. Огромное спасибо!
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот