Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2023.0.0 - Русский


getURL

Загрузка по URL (HTTP, HTTPS, FTP...)

Синтаксис

filename = getURL(URL);
[filename, [content]] = getURL(URL [, targetDir [, username [, password]]]]);
[filename, [content]] = getURL(URL [, targetFile [, username [, password]]]]);

Аргументы

URL

строка: ссылка URL. Поддерживаются и тестируются: HTTP, HTTPS, FTP (IPv4 и IPv6)

targetDir

Необязательный строковый параметр: указывает в какой директории будет сохранён файл (если пустой, то текущая директория)

targetFile

Необязательный строковый параметр: указывает где (и под каким именем) данный файл будет сохранён (если пустой, то текущая директория)

username

Необязательный строковый параметр: имя пользователя для вебсайтов, которые запрашивают аутентификацию

password

Необязательный строковый параметр: пароль для вебсайтов, которые запрашивают аутентификацию

filename

строка: путь до загруженного файла

content

строка: содержимое загруженного файла

Описание

Загрузка файла по ссылке URL.

Функция getURL загрузит файл по удалённой ссылке URL. Однако, в некоторых обстоятельствах (например, https://www.scilab.org/), имя файла не предоставляется самой ссылкой URL и getURL переименует файл в index.html.

content содержит содержимое страницы, указанной в URL.

Эта функция основана на библиотеке curl.

username and password могут быть определены для тех вебсайтов, которые запрашивают аутентификацию. Используемый метод аутентификации CURLAUTH_ANY, указываемый параметром CURLOPT_HTTPAUTH библиотеки libcurl.

getURL поддерживает IPv6 (и, очевидно, IPv4) по умолчанию.

В этой версии доступна настройка прокси, она может быть изменена в настройках в разделе "Интернет".

Опция curl CURLOPT_FOLLOWLOCATION активируется для того, чтобы убедиться в загрузке по ссылке URL.

getURL основана на libcurl. Версия этой библиотеки в официальном двоичном файле Scilab, скомпилированным с поддержкой HTTP, HTTPS, FTP и FTPS. Если Scilab установлен через систему пакетов в дистрибутиве, вероятно, что будут работать и иные протоколы, а не только HTTP, HTTPS и FTPS. Однако, они недостаточно протестированы.

Примеры

// Будет загружен URL с именем файла maths_simulation
getURL("https://www.scilab.org/products/scilab/features/maths_simulation");

// Сохранить домашнюю страницу Scilab в текущей директории (и переименуем файл)
getURL("https://www.scilab.org","scilab_homepage.html");

// Загрузка примера Scilab и исполнение его
myFile = getURL("https://fileexchange.scilab.org/toolboxes/contour3d/10.03/files/contour3d.sci",TMPDIR)
exec(myFile);
contour3d();

// Используем аутентификацию
getURL("http://httpbin.org/basic-auth/user/passwd",TMPDIR+"/testfile.html","user","passwd")

// Необходимо подключение IPv6
getURL("http://ipv6.google.com/intl/en_com/images/srpr/logo3w.png")

// Получение контента
[myFile, content] = getURL("https://fileexchange.scilab.org/toolboxes/contour3d/10.03/files/contour3d.sci",TMPDIR)

Смотрите также

  • splitURL — разбивает ссылку URL (HTTP, HTTPS, FTP...)

История

ВерсияОписание
5.5.0 Введена функция getURL()
Report an issue
<< getmd5 Файлы: функции ввода/вывода hash >>

Copyright (c) 2022-2023 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Mar 07 09:28:48 CET 2023