[Python] ์™ธ๋ถ€ IP ํš๋“

์™ธ๋ถ€ ip๋Š” ๋‚ด๋ถ€ ip์™€ ๋‹ค๋ฅด๊ฒŒ ์ง์ ‘์ ์ธ ์ ‘๊ทผ์œผ๋กœ ์–ป์–ด๋‚ผ ์ˆ˜๊ฐ€ ์—†๋‹ค.
๋ผ์šฐํ„ฐ๊ฐ€ ๋ช‡๊ฐœ๋‚˜ ๋‹ฌ๋ ค์žˆ์„์ง€, ๊ทธ ์ข…๋‹จ๊นŒ์ง€ ๋‹ค ์ถ”์ ํ•˜๋Š” ๊ฒƒ์€ ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

๋•Œ๋ฌธ์— ์ œ๋Œ€๋กœ ๋œ ์™ธ๋ถ€ ip๋ฅผ ํš๋“ํ•˜๋ ค๋ฉด ์™ธ๋ถ€ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.

์ด๋Ÿฐ๊ฑฐ ๋ง์ด๋‹ค.

๋Œ€์ถฉ ์ €๋Ÿฐ ์‚ฌ์ดํŠธ์—์„œ ์ถœ๋ ฅ๋œ ip๊ฐ’์„ ๊ธ์–ด์˜ค๋ฉด ๋œ๋‹ค.

ํŒŒ์ด์ฌ3์—์„œ๋Š” urllib.request ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•ด์„œ ๊ธ์–ด์˜ค๋ฉด ๋œ๋‹ค.
ํŒŒ์ด์ฌ2๋Š” ์•„๋งˆ ๊ทธ๋ƒฅ urllib์— ๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ์ œ๊ณต๋  ๊ฒƒ์ด๋‹ค.
์ด๋Ÿฐ์‹์œผ๋กœ ์งœ๋ฉด ๋œ๋‹ค.

import urllib.request
import json

def get_ip():
    data = urllib.request.urlopen("http://ip.jsontest.com").read().decode('utf-8')
    return json.JSONDecoder().decode(data)['ip']

๊ทธ๋Ÿผ ์ž˜ ๋ˆ๋‹ค.