использование командной строки Windows для запуска URL в Matlab - PullRequest
0 голосов
/ 09 июня 2018

Как мне запустить curl с MATLAB в Windows 8.1.следующий код не работает:

system(curl(url))

если я должен использовать «https://" или« www. »в начале URL-адреса? Я не знаю, в чем разница?

Ответы [ 2 ]

0 голосов
/ 09 июня 2018

Как указал Лукас, когда вы пишете system(curl(url)), вы фактически вызываете функцию curl Matlab.

Правильный синтаксис для выполнения curl запроса с Matlab:

command = 'curl http://www.google.com';
response = system(command);

response будет содержать ответ на запрос.Вы можете указать любые дополнительные флаги для вашего запроса в символьном векторе команды.Для успешного выполнения системной команды вы должны включить в свой путь curl.Чтобы подтвердить это, откройте терминал и введите curl.

Обратите внимание, что начиная с Matlab 2014b вы можете выполнять запросы GET и POST с помощью webread , а с Matlab 2015b вы можете выполнять запросы POST с помощью webwrite .Вы можете использовать weboptions , чтобы указать дополнительные параметры для запроса, включая дополнительные заголовки, как я объяснил здесь и здесь .

0 голосов
/ 09 июня 2018

Функция Matlab system требует команду, которую вы хотите выполнить в виде строки: system('command'), см. help system.То, как вы это пишете, будет выполнять функцию Matlab curl, которая является векторным оператором, вместо функции операционной системы.

Кроме того, синтаксис curl неправильный, он должен быть curl url.Так это будет выглядеть так: system('curl url'), где вы замените URL-адрес текстом вашего URL.Если вы хотите, чтобы url была переменной, вы можете использовать url = 'http://www.google.com'; system(sprintf('curl %s',url)).

И, конечно, вам нужно убедиться, что в вашей системе есть работающий curl.

...