디지털·가전제품
챗GPT로 PC의 MAC주소를 가져오는 간단한 실행프로그램을 만들려고 하는데요
친절한 gpt가 Serial번호와 mac주소(이더넷)을 가져오는 코드를 파이선으로 만들어줬습니다.
import subprocess
import re
def get_serial_number():
try:
# 시리얼 번호를 가져오는 명령어 실행
result = subprocess.run(['wmic', 'bios', 'get', 'serialnumber'], stdout=subprocess.PIPE, text=True)
# 결과에서 시리얼 번호 추출
serial_number = re.search(r'\bSerialNumber\s+(\S+)', result.stdout).group(1)
return serial_number
except Exception as e:
return f"시리얼 번호를 가져오는 중 오류 발생: {e}"
def get_mac_address():
try:
# MAC 주소를 가져오는 명령어 실행
result = subprocess.run(['getmac', '/v', '/fo', 'list'], stdout=subprocess.PIPE, text=True)
# 결과에서 MAC 주소 추출
mac_address = re.search(r'\bPhysical Address:\s+(\S+)', result.stdout).group(1)
return mac_address
except Exception as e:
return f"MAC 주소를 가져오는 중 오류 발생: {e}"
if name == "__main__":
serial_number = get_serial_number()
mac_address = get_mac_address()
print(f"Serial Number: {serial_number}")
print(f"MAC Address: {mac_address}")
한데. 시리얼번호는 잘 가져오는데 MAC주소는 제대로 가져오지를 못합니다.
시리얼번호를 가져오기 위한 명령어(wmic bios get serialnumber)을 cmd에서 쳐보면 단순하게 한줄로 나오는 반면에, MAC을 가져오기 위한 명령어(getmac /v /fo list)를 cmd에서 쳐보면 복잡하게 나와서 그런것 같은데요.
특정 MAC주소(예를 들면 Wifi, 이더넷 등) 을 가져오려면 어떻게 코드를 수정해야하나요?
아직 답변이 없어요.