Mac上でのIPアドレスの取得方法について
Windows10では動いていたPythonのコードを、MacOS Mojaveに持っていくと動きませんでした。
以下のようなコードをMacで実行しました。
test.py
# -*- coding: utf-8 -*-
from socket import socket, gethostbyname, gethostname, AF_INET, SOCK_DGRAM,SOL_SOCKET,SO_BROADCAST,SOCK_STREAM
IP = gethostbyname(gethostname())
print(IP)
すると、以下のようなエラーが出て実行できませんでした
File "/Volumes/ESD-USB/test.py", line 4, in <module>
IP = gethostbyname(gethostname())
socket.gaierror: [Errno 8] nodename nor servname provided, or not known
実行環境は、Windows、Mac共にPython3.7とAnacondaを使用しています。
何が原因のエラーでしょうか?
英語版での類似質問(stackoverflow.com/q/39970606) には共有設定から「プリンタの共有」をONにするとエラーなく実行できたとあったため、試してみたのですが、うまく行きませんでした。
その後、「ファイルの共有」をONにするとエラーなく動作したのですが、PCごとにどの共有ボタンにチェックを入れたら良いかが異なるのでしょうか?