Pobieranie strony internetowej

Lua:
Pobieranie strony internetowej

Jak to zrobić:

Użyjemy biblioteki socket.http z Lua. Sprawdzimy, czy strona jest dostępna i pobierzemy zawartość.

local http = require("socket.http")
local body, code = http.request("http://www.example.com")

if code == 200 then
    print("Strona pobrana pomyślnie. Oto zawartość:")
    print(body)
else
    print("Nie udało się pobrać strony, kod błędu: " .. tostring(code))
end

Przykładowe wyjście, jeśli strona istnieje:

Strona pobrana pomyślnie. Oto zawartość:
<!doctype html>...

Jeżeli wystąpi błąd, może zobaczysz:

Nie udało się pobrać strony, kod błędu: 404

Dogłębniejsze spojrzenie:

Pobieranie stron www ma długą historię, zaczynając od prostych skryptów aż do pełnoprawnych narzędzi jak wget czy curl. Lua może nie być pierwszym wyborem dla tego zadania, ale za pomocą socket.http czy innych, bardziej wyspecjalizowanych bibliotek jak luasocket, można to zrobić prosto i skutecznie. Wersja Lua wpływa na dostępne biblioteki - najnowsza to Lua 5.4, więc sprawdź kompatybilność. Co więcej, można korzystać z funkcji asynchronicznych, jeśli jest taka potrzeba, używając bibliotek takich jak copas dla bardziej zaawansowanych aplikacji.

Zobacz także: