Две изтегляния, два прокси сървъра, една команда curl
Използвайте граници на прехвърляне в curl, за да зададете отделни прокси сървъри и изходни файлове без двусмислен команден ред.
Поставянето на два URL адреса след една опция --proxy изпраща и двата през един и същ прокси сървър. Когато всяко изтегляне има собствен маршрут, дайте на curl граница на прехвърлянето:
curl --proxy http://203.0.113.10:8080 \
--output first.html https://example.com/ \
--next \
--proxy http://203.0.113.20:8080 \
--output second.html https://example.org/
Двата адреса на прокси са заместители; изберете HTTP крайни точки от услугата си или от списъка с HTTP прокси. Опцията --next започва ново прехвърляне с нов набор локални опции. Посочете изрично втория прокси. Опция, зададена преди границата, може да трябва да се зададе отново след нея.
Това е последователен пример. Той улеснява проверката на съответствието между цел, изходен файл и прокси. curl поддържа и паралелни прехвърляния, но паралелността променя планирането; не избира автоматично прокси за всеки URL.
Внимание при текстов файл с двойки
Ред с proxy-address destination-url е форматът на приложението ви. curl не извежда смисъла на тези колони от произволен текст. Shell цикъл, генерирана конфигурация на curl или друг малък диспечер трябва да превърне всеки запис в явни опции.
Запазвайте аргументите като аргументи. Сглобяването на команда чрез конкатенация на недоверени URL адреси позволява на интервали или shell символи да променят смисъла ѝ. За повтарящи се задачи документираният синтаксис на конфигурационен файл на curl е по-лесен за преглед от дълъг ръчно сглобен низ.
Записвайте отделно резултата от всяко прехвърляне. Успешното първо изтегляне не казва нищо за маршрута или отговора на второто. Дръжте таймаутите и обработката на грешки към прехвърлянето, което ги изисква, и проверявайте границата, когато настройка изглежда изчезнала.