Jak manipulować HTTP za pomocą Curl

Jak manipulować HTTP za pomocą Curl

Cel

Dowiedz się, jak korzystać z Curl do składania żądań HTTP do interakcji z treściami online.

Rozkłady

Wszystkie dystrybucje GNU/Linux

Wymagania

Po prostu zwijaj. Jest dostępny w repozytorium każdego dystrybucji.

Trudność

Łatwy

Konwencje

# - wymaga dostępu do root albo via Su Lub sudo.

$ - Uruchom jako stały użytkownik

Wstęp

Curl to wiersz poleceń wielokrotnego narzędzia do interakcji z siecią. Curl jest w stanie zachowywać się jak przeglądarka internetowa, pobierać pliki, uzyskiwać dostęp do interfejsów API, a nawet podpisywać na kontach internetowych. Curl można skoncentrować i obsługuje wszystko z prostego interfejsu wiersza poleceń.

Chwytanie strony

Uzyskanie HTML stron internetowych jest jedną z najbardziej podstawowych rzeczy, które Curl może zrobić. Spróbuj zdobyć naszą stronę główną.

$ curl https: // linuxconfig.org

Curl zrzuca wszystkie HTML strony internetowej w terminalu. Wygląda bałagan, ale to właśnie powinno zrobić.

Spróbuj następnego. Witryna Debiana jest trochę łatwiejsza do odczytania.

$ curl https: // www.Debian.org/

Nagłówki HTTP

Wiele czasu nie potrzebujesz całej strony internetowej. Wszystkie te HTML może być trudne do przedzierania się, a wszystko, czego potrzebujesz, to informacje o połączeniu. Curl ma -I za to.

$ curl -i https: // linuxconfig.org

Teraz otrzymujesz tylko nagłówki HTTP, które dostarczają informacji o swoim połączeniu ze stroną.

Działa tak samo z Debian.

$ curl -i https: // www.Debian.org/

Kontrolowanie wyjścia

Całe to wyjście nie jest bardzo przydatne, jeśli nie możesz go zapisać. Bieganie zwijania się za każdym razem, gdy go potrzebujesz? Na szczęście absolutnie możesz zapisać wyjście Curl za pomocą -o flaga.

$ curl -o linuxconfig.html https: // linuxconfig.org

Właśnie zapisałeś kod źródłowy strony głównej LinuxConfig do pliku o nazwie Linuxconfig.html.

Jest to jednak o wiele bardziej przydatne w przypadku plików multimedialnych. Spróbuj zdobyć logo Google.

$ curl -o Google.png https: // www.Google.com/Images/Branding/Googlelogo/1x/Googlelogo_Color_272x92dp.png

Możesz także użyć -O Flaga, aby poinformować Curl, aby użył istniejącej nazwy pliku.

$ curl -o https: // getfedora.org/static/images/fedora_infinity_140x140.png

Żądania HTTP i logowanie

Za pomocą Curl możesz wchodzić w interakcje z stronami internetowymi za pośrednictwem HTTP. Możesz faktycznie użyć curl do zalogowania się na stronie internetowej. Spójrz na ten przykład z naszego przewodnika Hydra Pentesting.

curl -v--data 'log = nazwa użytkownika i pwd = realPassword & wp-submit = log+in & testCookie = 1'--Cookie 'WordPress_Test_Cookie = WP+Cookie+Check' http: // localhost/wp-login.php

--dane Lub -D Flaga przekazuje dane do formularza za pomocą dużych zmiennych ciągu i nazw powiązanych pól formularzy. Możesz także wysyłać pliki cookie z curl.

Spróbuj przeszukać DuckDuckGo dla Linux.

$ curl -v -d 'q = Linux' https: // duckduckgo.com

Wyniki mogą być bałaganem, ale samo wyszukiwanie jest proste. Na wypadek, gdybyś się zastanawiał, -v Flaga dodaje nagłówki do zwykłego wyjścia.

Zamykanie myśli

Curl jest niesamowicie potężny. Tylko porysowałeś powierzchnię, ale powinieneś mieć dobry pomysł, w jaki sposób Curl może wchodzić w interakcje z stronami internetowymi i pobierać treści z Internetu. Curl może dać ci prawdziwy wgląd w to, jak działa sieć, więc zdecydowanie warto eksperymentować z trochę więcej.

Powiązane samouczki Linux:

  • Rzeczy do zainstalowania na Ubuntu 20.04
  • Wprowadzenie do automatyzacji, narzędzi i technik Linuksa
  • Jak korzystać z Dysku Google w Linux
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
  • Mastering Bash Script Loops
  • Wielokrotyściowe skrypty i zarządzanie procesami w…
  • Mint 20: Lepsze niż Ubuntu i Microsoft Windows?
  • Plik Curl Pobierz na Linux
  • Pobierz plik z adresu URL w systemie Linux za pomocą wiersza poleceń
  • Zapisz hasła w wierszu poleceń za pomocą GOPASS (z…