おおよその現在地の情報をipinfoモジュールから得て、表示するには?
現在地の情報を得るには、ipinfoモジュールを使うことができます。まず、ipinfoモジュールをインストールする必要があります。以下のコマンドを使ってインストールします。
pip install ipinfo
次に、以下のようなPythonコードを書きます。
import ipinfo access_token = "YOUR_ACCESS_TOKEN" handler = ipinfo.getHandler(access_token) ip_info = handler.getDetails() print(ip_info)
このコードでは、まずaccess_tokenを設定します。
access_tokenは、ipinfoにアクセスするために必要なトークンです。
次に、ipinfo.getHandler()関数を使って、Handlerオブジェクトを生成します。
最後に、getDetails()メソッドを呼び出して、IPアドレスの情報を取得します。
取得した情報は、変数ip_infoに代入されます。
最後に、print()関数を使って、ip_infoを表示します。
ipinfo.ioのウェブサイトにアクセスし、ログインしてアクセストークンを生成しましたか?アクセストークンが必要なため、アカウントを作成し、アクセストークンを生成する必要があります。
Details クラスは、IPアドレスに関する情報を保持するために使用され、IPアドレスに関する情報が含まれたレスポンスを解析して作成されたオブジェクトです。このオブジェクトには、様々なメソッドや属性があり、例えば .ip_address でIPアドレス、.city で都市名、.latitude で緯度、.longitude で経度などの情報を取得することができます。
.ip_address IPアドレス、.city 都市名、.latitude 緯度、.longitude 経度 すべてを出力する
ipinfo.details.Details オブジェクトには、属性として .ip_address、.city、.latitude、.longitude が含まれています。それらを取得するには、それぞれの属性にアクセスするだけのコードを書くことができます。
*実際には、.ip_address、は含まれていない。
これは、 ipinfo.details.Details オブジェクトからそれぞれの属性を取得し、それを print() 関数を使って出力するコードです。YOUR_ACCESS_TOKEN の部分は自分のアクセストークンに置き換える必要があります。
import ipinfo access_token = "YOUR_ACCESS_TOKEN" handler = ipinfo.getHandler(access_token) ip_info = handler.getDetails() print("IPアドレス:", ip_info.ip) print("都市名:", ip_info.city) print("緯度:", ip_info.loc.split(",")[0]) print("経度:", ip_info.loc.split(",")[1])
print(“IPアドレス:”, ip_info.ip_address)
だと
ip_address が Details オブジェクトに含まれていないため、エラーが発生しています。Details オブジェクトには、ip 属性が含まれているので、代わりにそれを使用することができます。また、city、latitude、longitude 属性を使用するためには、Details オブジェクトに含まれる city、loc 属性を使用する必要があります。