- IP주소 검색해보기
aws cloudfront를 사용하는데 어떤 주소는 aws 본사 위치가 나오고 어떤 건 aws edge server 위치를 알려주고,,
이거 뭐,,
https://www.whtop.com/tools.ip
IPv4 & IPv6 location: find Country, Region, City, ISP & more
Free IPv6 and IPv4 location & address locator. Find Country, Region & City based on IP, Zip Code, ISP (name/url), Latitude & Longitude. Updated Dec 2020
www.whtop.com
ip주소 검색 해보는 건 그래서 여기서 검색하는 걸로 바꿨다
- Python
updated: 2020.12.04
예전에 사용했던 것 또한 그런 걸 알고 찾아서 사용했던 건데
가끔 어떤 ip 주소들이 edge server가 아니라 어디에서 실행하던 aws 본사인 seattle로 잡혀서 수정을 했다
새로 찾은 곳은 여기
IP Geolocation API
IP Geolocation API by IPify enables application developers to support precise location lookups based on a given IP address. Get your API key today.
geo.ipify.org
한 달에 1000건 무료이다
아직 무료 api 중에 정확하게 나오는 곳을 찾지 못했다,, 명령어인 whois도 마찬가지구,,

여기서 API KEY를 받아서 사용할 수 있고 내 subscription에서 지금까지 얼마나 사용했는지 볼 수 있다
request = "https://geo.ipify.org/api/v1?apiKey=%s&ipAddress=%s" % (API_KEY, i)
try:
with urlopen(request) as url:
data = json.loads(url.read().decode())
print(data)
print(float(data["location"]["lat"]))
print(float(data["location"]["lng"]))
print(data["location"]["city"])
print(data["location"]["region"])
print(data["location"]["country"])
이렇게 request에 ip 주소를 담아서 요청하면 위치 정보를 돌려준다
IP Geolocation API
IP Geolocation API by IPify enables application developers to support precise location lookups based on a given IP address. Get your API key today.
geo.ipify.org
api에 대한 자세한 건 여기 문서에서 찾아볼 수 있다- 2020.07.23
파이썬에서 IP 관련된 건 이것저것 다 해봤다. 근데 무슨 response를 다 통신사 위치로 주더라결국에 알고 싶었던 건 내가 어디서 다운로드를 해오는지 였어서 고치고 고치다 정착함
import json
from urllib.request import urlopen
def get_location(ip):
request = "https://geolocation-db.com/json/%s" % (ip)
with urlopen(request) as url:
data = json.loads(url.read().decode())
# print(data)
return float(data["latitude"]), float(data["longitude"]), data["city"], data["state"]
url 형식으로 request를 보내면 json 형태로 정보를 return해줌
data를 출력해보면 무슨 정보들이 있는지 나온다

'Programming > Python' 카테고리의 다른 글
Python plotly 그라데이션 색 점 찍기 (0) | 2020.10.10 |
---|---|
Python plotly scatter, scattergeo, layout geo, 화면 분할 (0) | 2020.07.23 |
Python Plotly 하다가 레퍼런스 잘 안나와서 모아놓는 document들 (0) | 2020.07.23 |
PyCharm Terminal Git Bash로 바꾸기 (0) | 2020.04.20 |
Python 환경이 다른 가상환경 여러 개 만들기 (윈도우) (0) | 2020.04.19 |