Encontrar um público voltado para endereço IP em Python?
-
03-07-2019 - |
Pergunta
Como posso encontrar o público enfrenta IP para o meu trabalho líquida em Python?
Solução
Este vai buscar o seu endereço de IP remoto
import urllib
ip = urllib.urlopen('http://automation.whatismyip.com/n09230945.asp').read()
Se você não quer confiar em alguém, em seguida, basta fazer upload de algo como este script PHP:
<?php echo $_SERVER['REMOTE_ADDR']; ?>
e alterar a URL no Python ou se preferir ASP:
<%
Dim UserIPAddress
UserIPAddress = Request.ServerVariables("REMOTE_ADDR")
%>
Nota:. Eu não sei ASP, mas achei que poderia ser útil ter aqui, então eu pesquisei
Outras dicas
whatismyip.org é melhor ... ele só joga de volta o ip como texto simples sem porcaria estranho.
import urllib
ip = urllib.urlopen('http://whatismyip.org').read()
Mas sim, é impossível fazê-lo facilmente, sem depender de algo fora da própria rede.
https://api.ipify.org/?format=json é bastante simples frente
pode ser analisado pelo requests.get("https://api.ipify.org/?format=json").json()['ip']
apenas correr
Se você não se importa palavrões tente:
Bind-lo no material usual urllib como outros têm mostrado.
Há também:
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']
Tente colocar o que quer 'findmyipsite' você pode encontrar em uma lista e iteração através deles para comparação. Este parece funcionar bem.
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))
Esta é simples como
>>> import urllib
>>> urllib.urlopen('http://icanhazip.com/').read().strip('\n')
'xx.xx.xx.xx'