Найти общедоступный IP-адрес в Python?
-
03-07-2019 - |
Вопрос
Как я могу найти общедоступный IP-адрес моей сетевой работы на Python?
Решение
Это приведет к получению вашего удаленного IP-адреса
import urllib
ip = urllib.urlopen('http://automation.whatismyip.com/n09230945.asp').read()
Если вы не хотите полагаться на кого-то другого, просто загрузите что-то вроде этого сценария PHP:
<?php echo Это приведет к получению вашего удаленного IP-адреса
import urllib
ip = urllib.urlopen('http://automation.whatismyip.com/n09230945.asp').read()
Если вы не хотите полагаться на кого-то другого, просто загрузите что-то вроде этого сценария PHP:
<%
Dim UserIPAddress
UserIPAddress = Request.ServerVariables("REMOTE_ADDR")
%>
и измените URL в Python или, если вы предпочитаете ASP:
<*>
Примечание: я не знаю ASP, но я подумал, что было бы полезно иметь здесь, поэтому я погуглил.
SERVER['REMOTE_ADDR']; ?>
и измените URL в Python или, если вы предпочитаете ASP:
<*>Примечание: я не знаю ASP, но я подумал, что было бы полезно иметь здесь, поэтому я погуглил.
Другие советы
whatismyip.org лучше ... он просто отбрасывает ip как открытый текст без посторонней чуши.
import urllib
ip = urllib.urlopen('http://whatismyip.org').read()
Но да, это легко сделать, не полагаясь на что-то вне самой сети.
https://api.ipify.org/?format=json довольно прост вперед р>
можно проанализировать, просто запустив запросы.get (" https: //api.ipify.org/? format = json ") .json () ['ip']
Если вы не возражаете против ругательств, попробуйте:
Свяжите это в обычном материале urllib, как показали другие.
Есть также:
http://www.networksecuritytoolkit.org/nst/tools/ip.php а> р>
import urllib2
text = urllib2.urlopen('http://www.whatismyip.org').read()
urlRE=re.findall('[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}',text)
urlRE
['146.148.123.123']
Попробуйте поместить любой «findmyipsite», который вы можете найти, в список и перебрать их для сравнения. Похоже, этот работает хорошо.
import requests
r = requests.get(r'http://jsonip.com')
# r = requests.get(r'https://ifconfig.co/json')
ip= r.json()['ip']
print('Your IP is {}'.format(ip))
Это просто как
>>> import urllib
>>> urllib.urlopen('http://icanhazip.com/').read().strip('\n')
'xx.xx.xx.xx'