socket 모듈
import socket
in_addr = socket.gethostbyname(socket.gethostname())
print(in_addr)
#socket 모듈: 컴퓨터가 연결된 접속정보를 받아올 때 사용하는 모듈
in_addr = socket.gethostbyname(socket.gethostname())
#gethostbyname(): 도메인정보로 ip, 별칭 등 host에 대한 정보를 구하는 함수
#gethostname(): 호스트 이름을 얻어오거나 설정한다.
socket.socket()
import socket
in_addr = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
in_addr.connect(("www.google.co.kr", 443))
print(in_addr.getsockname()[0])
socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# socket의 socket함수: 소켓 객체 생성
# AF_INET: ipv4 주소 패밀리
#SOCK_STREAM: TCP 스트림 통신
#socket() 함수는 소켓 디스크립터를 반환한다. (-1는 반환 실패)
getsockname()
#소켓 자신의 주소를 반환
#튜플타입
#주소 패밀리에 따른 주소와 포트 반환하는 것 같다.
컴퓨터 외부 IP 알아보기
import requests
import re
req = requests.get("http://ipconfig.kr")
out_addr = re.search(r"IP Address: (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})", req.text)[1]
print(out_addr)
#re 모듈: 정규 표현식 모듈
out_addr = re.search(r"IP Address: (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})", req.text)[1]
#정규표현식 표현. \d는 숫자를 의미
#\d{1,3}은 숫자가 1개 또는 2개 있어야 함.
#search(패턴, 문자열, 플래그), 패턴과 일치하면 전부 찾아서 반환해준다.
#req.text: 홈페이지 코드 다긁어옴
#배열의 첫번째 요소 출력하지 않으면 다음과 같이 출력된다.
#0번째 요소는 'IP Address: 123.456.789.100' 출력
'프로그래밍 > python' 카테고리의 다른 글
[python] pyautogui 라이브러리 기능들 (0) | 2022.10.26 |
---|---|
[python] qrcode 모듈 사용 중 "No module named 'Image'" 예외 발생 (0) | 2022.10.11 |
혼공학습단 8기 파이썬 5주차 (0) | 2022.08.14 |
혼공단 5주차.. 하기 전에 복습먼저 ✅ (0) | 2022.08.11 |
혼공학습단 8기 파이썬 4주차 (0) | 2022.07.31 |