Pythonで一般向けIPアドレスを見つけましたか?
-
03-07-2019 - |
質問
Pythonのネットワークで公開されているIPを見つけるにはどうすればよいですか
解決
これにより、リモート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")
%>
PythonでURLを変更するか、ASPを希望する場合:
<*>
注:ASPはわかりませんが、ここにあると便利だと思ったので、Googleで検索しました。
SERVER['REMOTE_ADDR']; ?>
PythonでURLを変更するか、ASPを希望する場合:
<*>注:ASPはわかりませんが、ここにあると便利だと思ったので、Googleで検索しました。
他のヒント
whatismyip.orgの方が優れています...余分ながらくたなしでプレーンテキストとしてIPを投げ返します。
import urllib
ip = urllib.urlopen('http://whatismyip.org').read()
しかし、はい、ネットワーク自体の外部に依存せずに簡単に行うことは不可能です。
https://api.ipify.org/?format=json はかなりまっすぐです進む
requests.get(&quot; https://api.ipify.org/?format = json&quot;).json()['ip']
exp辞を気にしない場合は、次を試してください:
他の人が示したように、通常のurllibにバインドします。
もあります:
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'
所属していません StackOverflow