[Python] Pobieranie adresu IP


(Roznow) #1

Dzień dobry.


(Zulowski) #2

google -> “get ip in python”.


(Roznow) #3

Ok, znalazłem rozwiązanie które jest uzależnione od zewnętrznych serwisów. Istnieje takie które nie potrzebuje zewnętrznych źródeł?


(enedil) #4

Nope.

Do zewnętrznego adresu potrzeba zewnętrznego serwera.


(Roznow) #5

A jeśli zrobię skrypt na serwerze w PHP który pobiera adres za pomocą:

$client_ip = $_SERVER["REMONTE_ADDR"];

a następnie zapisze to do pliku i dopiero użyje Pythona?


(enedil) #6

(Drobok) #7

w pythonie możesz pobierać dane z serwera. Nie musisz nic do pliku zapisywać


(Roznow) #8

Zrobiłem tak jak napisałem powyżej i gdy uruchamiam skrypt ręcznie wszystko jest ok. Niestety gdy CRON uruchamia skrypt w miejscu IP jest puste pole. Czyli takie rozwiązanie nie ma prawa działać.


(enedil) #9

Nie żeby coś, ale tam chyba nie jest 

REMONTE

tylko

REMOTE (bez N). 

 

Inną kwestią jest bezsens zapisywania do pliku. Zwyczajnie, jako RESPONSE ustawiasz pobrany adres. 


(Drobok) #10

Powiem tak, ze strony klienta powinieneś wysłać zapytanie do serwera z id użytkownika i jakimś uwieżytelnieniem i tyle. Serwer dostanie ip w w/w zmiennej które zapisujesz do bazy. W wypadku zapytania serwera o identyfikator zwracasz to ip. Większość dzieje się po stronie serwera. Klient ma wysyłać tylko swój identyfikator, żadnych ftp ani cronów (no chyba że cronem będziesz skrypt na kliencie uruchamiał, jednak w tym wypadku w zależności od systemu możesz zapytanie przesyłać bezpośrednio z konsoli bez swojego programu)