- cURL на Windows
- Установка cURL на Windows
- Скачивание cURL
- Curl windows server 2016
- Что Такое Curl. Как работает команда Curl: определение и примеры
- Что такое curl?
- Команда curl
- Команда Curl для Работы с Файлами
- Команда Curl и Cookies
- Curl и FTP
- Ограничение Скорости Скачивания
- Основной Синтаксис Команды Curl
- Как пользоваться curl?
- Загрузка файлов
- Ограничение скорости
- Передача файлов
- Отправка данных POST
- Передача и прием куки
- Передача и анализ заголовков
- Аутентификация curl
- Использование прокси
- Примеры использования cURL в PHP
- GET запрос
- POST запрос
- PUT запрос
- DELETE запрос
- Скачивание файлов
- Отправка файлов на другой сервер
- 8 примеров использования cURL вместе с PHP
- 1. Проверяем доступность определённого веб сайта
- 2. Замена cURL для функции file_get_contents()
- 3. Получаем последний статус Twitter
- 4. Twitter: проверяем отношения между двумя пользователями
- 5. Загружаем и сохраняем изображения со страницы с помощью cURL
- 7. Получаем информацию о размере файла с помощью cURL
- 8. Загрузка через FTP с помощью cURL
- 5 последних уроков рубрики «PHP»
- Совет: отправка информации в Google Analytics через API
- Подборка PHP песочниц
- How do I install and use cURL on Windows?
- 22 Answers 22
- You might already have curl
- Installing curl with a package manager
- Installing curl manually
- Downloading curl
- Extracting and setting up curl
cURL на Windows
Для программирования с использованием языка HTML рекомендуется иметь как можно более широкий набор инструментов. Один из них – cURL. Он позволяет проводить операции в командной строке с различными адресами формата URL. Но единственный недостаток – возможности реализовать это в Windows после установки самой системы нельзя.
Возможно, у вас уже есть cURL, но это в том случае, если вы – пользователь macOS, ведь это ПО интегрировано в систему и не требует дополнительной установки. Однако, все равно возникает вопрос по поводу добавления возможности работы с URL. «Как установить и использовать cURL на Windows?» — ответ на это можно получить, прочитав данную статью до конца.
Есть 2 типа размещения в системе нового компонента. Для опытных подойдет установка cURL вручную, с указанием всех параметров самостоятельно. Однако, есть и те, кому не хочется заморачиваться насчет этого или нет опыта в установке плагинов для командной строки. Таким людям нужна установка cURL с помощью диспетчера пакетов – упрощенный вариант.
Задевая тему новичков, стоит также отметить, что доступно просмотреть несколько вариантов того, где и как возможно реализовать свои затеи в командной строке. То есть, есть несколько примеров использования команд cURL в режиме реального времени. Для этого посвящены различные видеоролики в сети, где будет все четко описано.
Установка cURL на Windows
В случае, когда установлена Windows 8, 7 и более ранняя версия – здесь уже требуется вмешательство пользователя. Первое и самое легкое – переход на сайт с программным обеспечением, где нужно лишь нажать на кнопку «Download cURL». Проделав далее некоторые действия для установки, кажется, что можно приступать к работе. Однако, это не так.
Последнее действие, которое необходимо сделать – объявить переменную среды для cURL. Без CD в папке bin ничего работать не будет. А потому, следует перейти по следующим «ссылкам» к разделам в Панели управления. То есть, сначала пользователь заходит в раздел «System», далее – «Advanced system settings», во вкладку «Advanced» и нажать на «Environment Variables». Остается лишь сделать задуманное – добавить путь к папке bin. После этого, можно пользоваться cURL.
Скачивание cURL
Чтобы пользоваться ПО в командной строке, загрузите и установите программу cURL с официального сайта. Делается это максимально просто, ведь скачивание cURL такое же, как и в случае с другими программами. Таким образом, загрузив версию cURL для Windows, останется сделать всего лишь ничего. То есть, пользователю нужно будет только провести операции по пункту «извлечение и настройка cURL», которая не составит труда.
Curl windows server 2016
This tutorial shows you how to access Oracle Messaging Cloud Service via the REST interface by using the cURL command-line tool. cURL is free, open software that runs under various operating systems.
This tutorial demonstrates cURL on a Windows 64-bit operating system that is enabled for the secure sockets layer (SSL). The authentication aspects of the Messaging Cloud Service require an SSL-enabled environment.
Your first task is to install the appropriate version of cURL for your SSL-enabled environment.
There is an ordered series of steps to follow to install cURL on Windows. There are two libraries to install and they must be installed before cURL will work with SSL. Also, they must be installed in this order to work. Do not skip the step to install a recent certificate.
Install Visual C++ 2008 Redistributable Package.
For 32-bit systems: Visual C++ 2008 Redistributables (x32)
Install Visual C++ 2010 Redistributable Package.
For 32-bit systems: Visual C++ 2010 Redistributables (x32)
For 64-bit systems: Win64 OpenSSL v1.0.0k Light
For 32-bit systems: Win32 OpenSSL v1.0.0k Light
In your browser, navigate to the cURL welcome page at http://curl.haxx.se and click Download.
On the cURL Releases and Downloads page, click the link for the SSL-enabled version for your computer’s operating system, download the zip file, and install it in a new folder on your computer.
The cURL website offers a wizard to find the appropriate version for your computer’s operating system.
For this tutorial, the 64-bit generic, SSL-enabled version for Windows is selected.
Install recent CA Certificates. Do not skip this step.
Invoke curl.exe from a command window (in Windows, click Start > Run and then enter «cmd» in the Run dialog box).
To navigate this Oracle by Example tutorial, note the following:
Hide Header Buttons: Click the title to hide the buttons in the header. To show the buttons again, click the title again. Topic List: Click a topic to navigate to that section. Expand All Topics: Click the button to show or hide the details for the sections. By default, all topics are collapsed. Hide All Images: Click the button to show or hide the screenshots. By default, all images are displayed. Print: Click the button to print the content. The content that is currently displayed or hidden is printed.
To navigate to a particular section in this tutorial, select the topic from the list.
Что Такое Curl. Как работает команда Curl: определение и примеры
Что такое curl?
На самом деле, curl — это больше чем просто утилита командной строки для Linux или Windows. Это набор библиотек, в которых реализуются базовые возможности работы с URL страницами и передачи файлов. Библиотека поддерживает работу с протоколами: FTP, FTPS, HTTP, HTTPS, TFTP, SCP, SFTP, Telnet, DICT, LDAP, а также POP3, IMAP и SMTP. Она отлично подходит для имитации действий пользователя на страницах и других операций с URL адресами.
Поддержка библиотеки curl была добавлена в множество различных языков программирования и платформ. Утилита curl — это независимая обвертка для этой библиотеки. Именно на этой утилите мы и остановимся в этой статье.
Команда curl
Перед тем как перейти к описанию того как может использоваться команда curl linux, давайте разберем саму утилиту и ее основные опции, которые нам понадобятся. Синтаксис утилиты очень прост:
$ curlопции ссылка
Теперь рассмотрим основные опции:
Это далеко не все параметры curl linux, но здесь перечислено все основное, что вам придется использовать.
Команда Curl для Работы с Файлами
Команды Curl могут загружать файлы из удалённой локации. Есть два способа это сделать:
Приведённая выше команда сохранит файл как testfile.tar.gz.
А эта команда сохранит его как newtestfile.tar.gz.
Если по какой-либо причине загрузка будет прервана, вы можете возобновить её с помощью следующей команды:
Curl также позволяет загрузить несколько файлов одновременно. Пример:
Если вы хотите загрузить несколько файлов с нескольких URL, перечислите их все в файле. Команды Curl могут быть объединены с xargs для загрузки различных URL-адресов.
Например, если у нас есть файл allUrls.txt, который содержит список всех URL-адресов для загрузки, то приведённый ниже пример выполнит загрузку всех файлов с этих URL.
Curl также можно использовать c прокси-сервером. Если вы находитесь за прокси-сервером, прослушивающим порт 8090 на sampleproxy.com, загрузите файлы, как показано ниже:
В приведённом выше примере вы можете выбросить -U username:password, если прокси-сервер не требует метода аутентификации.
Типичный HTTP-запрос всегда содержит заголовок. Заголовок HTTP отправляет дополнительную информацию об удалённом веб-сервере вместе с фактическим запросом. С помощью инструментов разработчика в браузере вы можете посмотреть сведения о заголовке, а проверить их можно с помощью команды curl.
Пример ниже демонстрирует, как получить информацию о заголовке с веб-сайта.
Используя curl, вы можете сделать запрос GET и POST. Запрос GET будет выглядеть следующим образом:
А вот пример запроса POST:
curl –data “text=Hello” https://myDomain.com/firstPage.jsp
Здесь text=Hello — это параметр запроса POST. Такое поведение похоже на HTML-формы.
Вы также можете указать несколько методов HTTP в одной команде curl. Сделайте это, используя опцию –next, например:
curl –data “text=Hello” https://myDomain.com/firstPage.jsp —next https://myDomain.com/displayResult.jsp
Команда содержит запрос POST, за которым следует запрос GET.
Каждый HTTP-запрос содержит агент пользователя, который отправляется как часть запроса. Он указывает информацию о браузере клиента. По умолчанию запрос содержит curl и номер версии в качестве информации об агенте пользователя. Пример вывода показан ниже:
“GET / HTTP/1.1” 200 “_” ”curl/7/29/0”
Вы можете изменить дефолтную информацию об агенте пользователя, используя следующую команду:
Теперь вывод будет выглядеть так:
“GET / HTTP/1.1” 200 “_” ”My new Browser”
Команда Curl и Cookies
Утилиту можно использовать для проверки того, какие файлы cookie загружаются по URL. Допустим вы зашли на https://www.samplewebsite.com, вы можете вывести и сохранить файлы cookie в файл, а затем получить к ним доступ, используя команду cat или редактор Vim.
Вот пример такой команды:
Точно так же, если у вас есть файлы cookie в файле, вы можете отправить их на сайт. Вот, как это будет выглядеть:
curl —cookie Mycookies.txt https://www. samplewebsite.com
Curl и FTP
Утилита поддерживает FTP! Вы можете использовать её для загрузки файлов с удалённого сервера.
В приведённой выше команде ftp://sampleftpserver — это FTP-сервер, который принимает соединения. Вы можете не указывать имя пользователя и пароль для анонимных FTP-соединений. Введите команду и посмотрите, как заполняется индикатор выполнения.
Вы также можете загружать файлы с помощью этой команды:
Опять же таки, мы можем пропустить имя пользователя и пароль для анонимных FTP-соединений.
Ограничение Скорости Скачивания
Скачивая или загружая данные с помощью Curl, вы не можете знать, насколько большим будет вывод. Вы можете ограничить скорость скачивания, чтобы убедиться, что Curl не ограничивает пропускную способность канала.
Команда ниже ограничивает скорость скачивания до 100К:
Основной Синтаксис Команды Curl
Итак, давайте узнаем, как пользоваться утилитой. Основной синтаксис Curl выглядит следующим образом:
Самый простой пример использования Curl — для отображения содержимого страницы. Приведённая ниже команда отобразит домашнюю страницу testdomain.com.
Эта команда отобразит полный исходный код домашней страницы домена. Если протокол не указан, Curl интерпретирует его как HTTP.
Как пользоваться curl?
Мы рассмотрели все, что касается теории работы с утилитой curl, теперь пришло время перейти к практике, и рассмотреть примеры команды curl.
Загрузка файлов
Самая частая задача — это загрузка файлов linux. Скачать файл очень просто. Для этого достаточно передать утилите в параметрах имя файла или html страницы:
Но тут вас ждет одна неожиданность, все содержимое файла будет отправлено на стандартный вывод. Чтобы записать его в какой-либо файл используйте:
Если загрузка была неожиданно прервана, вы можете ее возобновить:
Если нужно, одной командой можно скачать несколько файлов:
Еще одна вещь, которая может быть полезной администратору — это загрузка файла, только если он был изменен:
Данная команда скачает файл, только если он был изменен после 21 декабря 2017.
Ограничение скорости
Передача файлов
Или проверим отправку файла по HTTP, для этого существует специальный сервис:
В ответе утилита сообщит где вы можете найти загруженный файл.
Отправка данных POST
Здесь мы передаем формой поле password, с типом обычный текст, точно так же вы можете передать несколько параметров.
Передача и прием куки
Затем можно отправить cookie curl обратно:
Передача и анализ заголовков
Аутентификация curl
Точно так же будет выполняться аутентификация на серверах HTTP.
Использование прокси
Примеры использования cURL в PHP
GET запрос
$ch = curl_init(‘https://vk.com’);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HEADER, false);
$html = curl_exec($ch);
curl_close($ch);
POST запрос
$array = array(
‘login’ => ‘admin’,
‘password’ => ‘1234’
);
// Или предать массив строкой:
// curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($array, », ‘&’));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HEADER, false);
$html = curl_exec($ch);
curl_close($ch);
file_get_contents() так же умеет отправлять POST запросы:
PUT запрос
$ch = curl_init(‘https://cloud-api.yandex.net/v1/disk/’);
curl_setopt($ch, CURLOPT_PUT, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HEADER, false);
$html = curl_exec($ch);
curl_close($ch);
DELETE запрос
HTTP-метод DELETE используется в REST API для удаления объектов.
$ch = curl_init(‘http://site.com/delete/999’);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, ‘DELETE’);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_exec($ch);
curl_close($ch);PHP5
Скачивание файлов
Curl позволяет сохранить результат сразу в файл, указав указатель на открытый файл в параметре CURLOPT_FILE.
$ch = curl_init(‘http://yandex.ru’);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HEADER, false);
$html = curl_exec($ch);
curl_close($ch);
Отправка файлов на другой сервер
Отправка файлов осуществляется методом POST:
С PHP 5.5 такой метод загрузки файлов вызывает ошибку, поэтому следует применять CURLFile.
Также через curl можно отправить сразу несколько файлов:
Еще файлы можно отправить методом PUT, например так загружаются файлы в REST API Яндекс Диска.
8 примеров использования cURL вместе с PHP
1. Проверяем доступность определённого веб сайта
Как узнать, доступен ли определённый веб сайт? cURL поможет ответить на данный вопрос. Данный скрипт можно использовать совместно с планировщиком для мониторинга сайта.
Замените URL в строке 3 на тот, который вам нужен. Скопируйте код на свою страницу, и станет известно, доступен ли указанный сайт.
2. Замена cURL для функции file_get_contents()
Функция file_get_contents() очень полезная, но на многих хостингах она отключена. С помощью cURL можно написать функцию, которая будет работать в точности как file_get_contents().
function file_get_contents_curl($url) <
$ch = curl_init();
$data = curl_exec($ch);
curl_close($ch);
3. Получаем последний статус Twitter
С помощью PHP и cURL очень просто получить статус определённого пользователя. Данную информацию можно выводить в блоге.
Использовать функцию очень просто:
4. Twitter: проверяем отношения между двумя пользователями
Если вам нужно узнать, читает ли ваши твиты определенный пользователь, то можно задействовать API Twitter. Данный скрипт выводит true, если два пользователя, указанные на строчках 17 и 18, находятся в дружеских отношениях на Twitter. В противном случае возвращается false.
/* Персоны для проверки */
$person1 = ‘phpsnippets’;
$person2 = ‘catswhocode’;
/* Отправляем запрос на twitter */
$url = ‘https://api.twitter.com/1/friendships/exist’;
$format = ‘xml’;
5. Загружаем и сохраняем изображения со страницы с помощью cURL
Данная функция может быть очень полезна: задаем ей URL страницы и она сохраняет все изображения с нее на вашем сервере.
function getImages($html) <
$matches = array();
$regex = ‘
while ($i 6. Конвертируем валюту с помощью cURl и Google
Пересчет валюты достаточно простое дело, но курсы достаточно часто изменяются, поэтому приходится использовать сервисы, подобные Google, для получения текущих значений курса пересчета. Функция currency() получает 3 параметра: исходная валюта, целевая валюта и сумма.
7. Получаем информацию о размере файла с помощью cURL
Как определить размер определенного файла, расположенного на другом сервере? Поможет следующая функция. Она получает 3 параметра: URL файла, и (если требуется) имя пользователя и пароль.
$ok = curl_exec($ch);
curl_close($ch);
$head = ob_get_contents();
ob_end_clean();
8. Загрузка через FTP с помощью cURL
PHP имеет библиотеку FTP library, но также можно использовать cURL для загрузки файлов на FTP сервер. Вот рабочий пример:
// Открываем файл
$file = fopen(«/path/to/file», «r»);
// URL содержит большую часть нужной информации
$url = «ftp://username:password@mydomain.com:21/path/to/new/file»;
// Устанавливаем режим ASCII (то есть — файл текстовой)
curl_setopt($ch, CURLOPT_FTPASCII, 1);
$output = curl_exec($ch);
curl_close($ch);
Данный урок подготовлен для вас командой сайта ruseller.com
Источник урока: http://www.catswhocode.com/blog/amazing-things-to-do-with-php-and-curl
Перевел: Сергей Фастунов
Урок создан: 14 Февраля 2012
Просмотров: 124011
Правила перепечатки
5 последних уроков рубрики «PHP»
Совет: отправка информации в Google Analytics через API
Предположим, что вам необходимо отправить какую-то информацию в Google Analytics из серверного скрипта. Как это сделать. Ответ в этой заметке.
Подборка PHP песочниц
Подборка из нескольких видов PHP песочниц. На некоторых вы в режиме online сможете потестить свой код, но есть так же решения, которые можно внедрить на свой сайт.
Зарегистрируйтесь или авторизуйтесь, чтобы добавлять комментарии, оценивать уроки и сохранять их в личном кабинете
How do I install and use cURL on Windows?
I am having trouble getting cURL to run on Windows.
I have downloaded a cURL zip file from here, but it seems to contain source code, not an executable.
Do I need to compile cURL to run it? If yes, then how do I do that?
I have looked for documentation on installing cURL, but there is little to be found.
22 Answers 22
Assuming you got it from https://curl.haxx.se/download.html, just unzip it wherever you want. No need to install. If you are going to use SSL, you need to download the OpenSSL DLLs, available from curl’s website.
You might already have curl
It is possible that you won’t need to download anything:
If you are on Windows 10, version 1803 or later, your OS ships with a copy of curl, already set up and ready to use.
If you have Git for Windows installed (if you downloaded Git from git-scm.com, the answer is yes), you have curl.exe under:
Installing curl with a package manager
If you are already using a package manager, it may be more convenient to install with one:
Installing curl manually
Downloading curl
Instead, click the large and prominent download links on this page. Those are the official Windows builds, and they are provided by the curl-for-win project.
If you have more esoteric needs (e.g. you want cygwin builds, third-party builds, libcurl, header files, sources, etc.), use the curl download wizard. After answering five questions, you will be presented with a list of download links.
Extracting and setting up curl
Pick a location on your hard drive that will serve as a permanent home for curl:
Place curl.exe under the folder. And never move the folder or its contents.
Now enjoy typing curl at any command prompt. Party time!
To run curl from the command line
a) Right-hand-click on «My Computer» icon
b) Select Properties
c) Click ‘Advanced system settings’ link
e) Under System variable select ‘Path’ and Edit button
f) Add a semicolon followed by the path to where you placed your curl.exe (e.g. ;D:\software\curl)
Now you can run from the command line by typing:
The simplest tutorial for setting up cURL on Windows is the Making cURL work on Windows 7. It only have 3 easy steps.
Even more easier:
Download the Win64 2000/XP x86_64 MSI installer provided by Edward LoPinto.
At the time of writing file curl-7.46.0-win64.exe was the most recent. Tested with Windows 10.
It’s probably worth noting that Powershell v3 and up, contains a cmdlet called Invoke-WebRequest that has some curl-ish capabilities. The New-WebServiceProxy and Invoke-RestMethod cmdlets are probably worth mentioning too.
I’m not sure they will fit your needs or not, but although I’m not a Windows guy, I have to say I find the object approach PS takes, a lot easier to work with than utilities such as curl, wget etc. They may be worth taking a look at
Note also that installing Git for Windows from git-scm.com also installs Curl. You can then run Curl from Git for Windows’ BASH terminal (not the default Windows CMD terminal).
As you already know, you can find several packages of binaries on the official curl website.
Once you download a package, unzip it wherever you want. I recommend adding its location to your path, so you can call curl from batch or powershell scripts. To add a directory to your path type «environment variables» in the start menu, and select «edit user environment variables». Select Path, and add to the end of the «value» box: ;C:\curl\directory (with the directory changed to where you saved curl.)
If you want to use SSL you need a certificate bundle. Run either mk-ca-bundle.pl (perl) or mk-ca-bundle.vbs (VBScript). Some of the packages of binaries include one or both of them. If your download doesn’t include one, download one here: https://github.com/bagder/curl/tree/master/lib. I recommend mk-ca-bundle.vbs, as on windows you simply double click it to run it. It will produce a file called ca-bundle.crt. Rename it curl-ca-bundle.crt and save it in the directory with curl.exe.
Alternatively, I recently developed an msi installer that sets up a full featured build of curl with just a few clicks. It automatically ads curl to your path, includes a ready-to-use ssl certificate bundle, and makes the curl manual and documentation accessible from the start menu. You can download it at www.confusedbycode.com/curl/.
Thought I’d write exactly what I did (Windows 10, 64-bit):
Choose curl executable.
Choose the first recommended option. For me this was:
You should have the file curl-7.53.1-win64-mingw.7z in your downloads folder.
Install 7-Zip if you don’t have it.
Right-click, 7-Zip, Extract Here. Copy and paste the extracted file somewhere like Z:\Tools\
If you look in the bin folder you’ll see curl.exe. If you double-click it a window will quickly flash up and vanish. To run it you need to use the Command Prompt. Navigate to the bin folder and type curl followed by your parameters to make a request. You must use double-quotes. Single quotes won’t work with curl on Windows.
Now you’ll want to add curl to a user’s Path variable so you don’t have to navigate to the right folder to run the program. Go to This PC, Computer, System Properties, Advanced system settings, authenticate as an administrator (you’re not running as admin, right? Right?) Environment Variables, System variables, look at the list and select Path, then Edit, then New, then, e.g.
You can add a trailing backslash if you like, I don’t think it matters. Click move up until it’s at the top of the list, then you can see it easily from the previous screen. Click OK, OK, OK, then crack open a Command Prompt and you can run curl by typing curl from any folder, as any user. Don’t forget your double-quotes.