Categories: Python

【Python】IPアドレスを取得する方法

この記事では、Pyhton のコード内からIPアドレスを取得する方法を解説します。

IPアドレスには「ローカルIPアドレス」と「グローバルIPアドレス」があります。

ローカルIPアドレスとは?

家庭内のみなどの限られた範囲のローカルなネットワーク内だけで利用されるIPアドレスのこと。プライベートIPアドレスとも呼ばれる。

グローバルIPアドレスとは?

インターネットに接続された機器を識別するために重複なく割り当てられたIPアドレスのこと。

それでは、2種類のIPアドレスの取得方法を見ていきましょう!

ローカルIPアドレスの取得

ローカルIPアドレスを取得するには socketモジュール の gethostbyname()関数 を使います。socketモジュール は、標準ライブラリです。

import socket socket.gethostbyname(hostname)

引数にはホスト名を渡しますが socket.gethostname()関数 で取得できます。

import socket # ホスト名の取得 hostname = socket.gethostname() print(hostname) # ホスト名をIPv4形式のアドレスに変換 ip = socket.gethostbyname(hostname) print(ip)

実行結果

Mac.local xxx.x.x.x

ローカルIPアドレスを取得することができました。

グローバルIPアドレスの取得

グローバルIPアドレスは、DynDNS などのサイトから取得できます。

参考PythonでグローバルIPアドレスを取得する

import requests url = 'http://checkip.dyndns.com/' r = requests.get(url) print(r.text)

実行結果

Current IP CheckCurrent IP Address: xxx.xxx.xxx.xx

IPアドレスのみを取得したい場合は、以下のように余分な文字を排除できます。

import requests import re url = 'http://checkip.dyndns.com/' r = requests.get(url) ip = re.findall(r'\d+', r.text) print('.'.join(ip))

実行結果

xxx.xxx.xxx.xx

グローバルIPアドレスを取得することができました。

まとめ

この記事では、Python でIPアドレスを取得する方法を解説しました。

IPアドレスをソースコード内で使用したい場合にぜひ使ってみてください。

それでは今回の内容はここまでです。ではまたどこかで〜( ・∀・)ノ

ゆうまる

独学でプログラミングを勉強しているおじさん。いろんな言語を勉強したが浅く広くなためあまり仕事につながらない。また忘れっぽいため自分のブログを備忘録としても使っている。産まれてこのかたずっとネコを飼ってる生粋のネコ派。最近お腹が出てきて筋トレに奮闘中!

Recent Posts

リッチなソースコードをブログに載っける方法

この記事では、ブログにソースコードを記述…

2か月 ago

【Mac】Homebrew自体のアンインストール

この記事では、パッケージ管理システムであ…

2か月 ago

【Python】MeCab(めかぶ)を使って形態素解析する

この記事では、Pythonで「MeCab…

2か月 ago

【Python】pytubeを使ってYouTubeの動画をダウンロードする

この記事ではpytubeを使ってYouT…

2か月 ago

【Python】Icrawlerを使って画像を大量にダウンロードする

この記事では、Icrawlerを使って画…

2か月 ago

【Python】Seleniumを使ってWebブラウザを自動化する

この記事では、Seleniumを使ってW…

2か月 ago