| Alexey Tigarev ( @ 2004-09-18 21:05:00 |
| Current music: | The 69 Eyes - Graveland |
| Entry tags: | hacking, web |
cURL grocks URLs
Есть, оказывается, такой хороший инструмент для хитрых HTTP-запросов - curl - http://curl.haxx.se/. Если быть более точным, то это - инструмент для эмуляции действий пользователя в бровзере, но позволяющий полную автоматизацию.
Что умеет:Curl is a command line tool for transferring files with URL syntax, supporting FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE and LDAP. Curl supports HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading, kerberos, HTTP form based upload, proxies, cookies, user+password authentication, file transfer resume, http proxy tunneling and a busload of other useful tricks.
С его помощью можно сделать массу полезных штучек, например, автоматический аплоадинг кучи файлов на lj.com.ua.
curl.exe -L -v -D cookies.txt -d "user=t_gra&hpass=хэш_моего_пароля&login=true&type=submit" -L http://lj.com.ua/lj.php > lj_login.html curl.exe -L -b cookies.txt -v -F "file1=@tigra1.jpg;type=image/jpeg" -F "upload=submit" -F "cc=(cc)" -L http://lj.com.ua/lj-upload.php > lj_upload.html curl.exe -L -b cookies.txt -v -F "file1=@tigra2.jpg;type=image/jpeg" -F "upload=submit" -F "cc=(cc)" -L http://lj.com.ua/lj-upload.php > lj_upload.html
Эта последовательность команд логинится на img.lj.com.ua, сохраняет cookie в файле и использует его для идентификации себя при последующих двух запросах. Загружает два файла.
Вместо того, чтобы ждать, пока зальётся каждый файл и выбирать следующий - удивительно утомительное занятие! - можно написать один раз скрипт и запустить его.
Tutorial http://curl.haxx.se/docs/httpscripting.h
Manual http://curl.haxx.se/docs/manual.html