IT/Python 54

[Python - 크롤링] 여러 페이지 관리하기(iframe)

페이지 안에 다른 페이지가 있는 경우(iframe 제어 방법)메인페이지 안에 서브페이지가 있는 경우 웹 드라이버는 안쪽에 있는 서브페이지를 제어할 수 없습니다. 웹 드라이버는 한번에 하나의 페이지만 제어할 수 있기 때문인데요. 이러한 경우, 서브 페이지를 바라볼 수 있도록 드라이버를 전환시켜 준 다음에 서브페이지를 제어해야 합니다. 드라이버 전환 방법1.iframe 태그를 찾아 줍니다. 본문태그의 상위태그를 찾아서 올라가다 보면, iframe 태그를 발견할 수 있습니다. iframe은 HTML에서 한 웹페이지 안에 다른 웹페이지를 포함시킬때 사용하는 태그 입니다. iframe 태그가 자주 사용되는 페이지 예시를 몇가지 살펴보겠습니다.네이버 블로그 또는 카페 : 사용자들이 외부 콘텐츠를 포스트에 포함시..

IT/Python 2025.05.05

[Python - 크롤링] 셀레니움 사용법 - 원하는 태그 찾고 제어하기

CSS 선택자로 태그 찾기from selenium.webdriver.common.by import Bydriver.find_element(By.CSS_SELECTOR, "CSS선택자")By 클래스 : By 클래스는 웹 페이지의 태그를 찾을 때 사용할 수 있는 다양한 방법(ex.CSS선택자, 클래스 이름 : ID, Xpath)을 정의해 놓은 클래스 입니다.driver.find_element() : 웹페이지에서 첮번째로 일치하는 태그를 찾아서 반화해 줍니다. 만약 일치하는 태그가 없다면 NoSuchElementException 예외를 발생시킵니다.자바스크립트를 사용해서 동적으로 태그가 생성되는 페이지에서는 태그가 로드될때까지 대기한 후 찾아야할 수도 있습니다.1초만에 CSS 선택자를 쉽게 찾을수 있는 꿀팁1..

IT/Python 2025.05.04

[Python - 크롤링] 셀레니움 설치/환경 설정 및 주요 명령어 정리

pip install selenium==4.17.2from selenium import webdriver#Edge 드라이버 생성driver = webdriver.Edge() #webdriver.Chrome()실행시 원하는 페이지로 이동하는 방법driver.get("https://www.naver.com") driver.get() 안에 이동하고자하는 페이지의 주소를 문자열 형태로 넣어주면 됩니다. URL 형식 : driver.get에 전달하는 URL은 반드시 완전한 형식이여야 합니다. 예를 들어 "www.example.com" 대신 "https://www.example.com" 처럼 프로토콜을 표시해야 합니다.동기 실행 : driver.get 명령어는 웹 페이지가 완전히 ..

IT/Python 2025.05.01

[Python-크롤링] 웹사이트 파라미터 종류가 많을때 크롤링 하는 방법 2단계

안녕하세요. 멋진선배 입니다. 웹사이트 파라미터 종류가 많을때 크롤링 하는 방법 2단계 과정 정리 합니다.아래 3가지 사항에 대해서 알려드리도록 하겠습니다. 2단계 학습 내용 정리상세페이지 접속하여 데이터 갖고 오기접속 거절시 헤더정보 변경을 이용한 해결 방법SSL 오류 생성시 해결 방법상세 페이지 접속하여 데이터 갖고 오기- 화면에서 F12버튼 클릭 -> 검사 -> Network tab으로 이동 -> Payload에서 소스코드 정보 복사 후 null값들은 제거 아래와 같이 파라미터에 Payload 값을 넣어주고 url에 param 변수를 추가해주면 파라미터가 많은 웹 페이지 크롤링이 가능하다.param = { 'isDetailSearch': 'N', 'searchGubun': 'true'..

IT/Python 2025.05.01

[Python-크롤링] 웹사이트 파라미터 종류가 많을때 크롤링 하는 방법 1단계

안녕하세요. 멋진 선배 입니다. 오늘은 Python 크롤링 중 웹사이트 파라미터 종류가 많을때 크롤링 하는 방법에 대해서 알아보도록 하겠습니다. 실습사이트 https://www.riss.kr/search/Search.do?isDetailSearch=N&searchGubun=true&viewYn=OP&queryText=&strQuery=%ED%8C%A8%EC%85%98+%EC%9D%B8%EA%B3%B5%EC%A7%80%EB%8A%A5&exQuery=&exQueryText=&order=%2FDESC&onHanja=false&strSort=RANK&p_year1=&p_year2=&iStartCount=0&orderBy=&mat_type=&mat_subtype=&fulltext_kind=&t_gubun=&le..

IT/Python 2025.04.30

[Python - 크롤링] 네이버지식인 데이터 크롤링 1단계

# 1단계# 첫번째 글 - 제목, 링크, 날짜, 카테고리, 답변수import requestsfrom bs4 import BeautifulSouprespone = requests.get('https://kin.naver.com/search/list.naver?query=%EC%82%BC%EC%84%B1%EC%A0%84%EC%9E%90')html = respone.textsoup = BeautifulSoup(html, 'html.parser')#클래스안에 띄어쓰기가 되어 있는 경우 클래스가 여러개 부여되어 있는것#띄어쓰기가 있을시 :, . 앞에 \를 붙여준다. 파이선에서는 \\을 넣어준다.(문자인식 때문)print(soup.select_one("._nclicks\\:kin\\.txt").text)print(..

IT/Python 2025.04.28

[Python - 크롤링] 네이버 증권 뉴스 엑셀파일 저장하기

#1단계#첫번째 뉴스 - 제목, 링크, 내용, 언론사, 날짜import requestsfrom bs4 import BeautifulSoupimport pandas as pdimport openpyxlresponse = requests.get("https://finance.naver.com/news/mainnews.naver?date=2025-04-23")html = response.textsoup = BeautifulSoup(html, 'html.parser')# .articleSubject 클래스 하위에 있는 a 태그 표기print(soup.select_one(".articleSubject > a"))# .articleSubject 클래스 하위에 있는 a 태그의 텍스트 표기print(soup.selec..

IT/Python 2025.04.25

[Python - 크롤링] 한국 주식 종가 갖고 오는 프로그램 코드

한국 주식 종가 갖고 오는 프로그램 코드import requestsfrom bs4 import BeautifulSoupimport pandas as pddef get_etf_closing_price(etf_code): url = f"https://finance.naver.com/item/main.nhn?code={etf_code}" headers = { "User-Agent": "Mozilla/5.0" } response = requests.get(url, headers=headers) soup = BeautifulSoup(response.text, 'html.parser') # ETF 이름 가져오기 name_tag = soup.select_one("di..

IT/Python 2025.04.25

[파이썬-크롤링] 네이버 증권 뉴스 크롤링 하기

네이버 증권 뉴스(제목, 링크, 내용, 언론사, 날짜) 크롤링 하기#1단계#첫번째 뉴스 - 제목, 링크, 내용, 언론사, 날짜import requestsfrom bs4 import BeautifulSoupresponse = requests.get("https://finance.naver.com/news/mainnews.naver?date=2025-04-23")html = response.textsoup = BeautifulSoup(html, 'html.parser')# .articleSubject 클래스 하위에 있는 a 태그 표기print(soup.select_one(".articleSubject > a"))# .articleSubject 클래스 하위에 있는 a 태그의 텍스트 표기print(soup.se..

IT/Python 2025.04.24

[파이썬 오류] IndentationError: unindent does not match any outer indentation level

이 에러는 파이썬 코드에서 들여쓰기(Indentation)가 일관되지 않을 때 발생합니다. 즉, 특정 코드 블록 내에서 들여쓰기 수준이 맞지 않거나, 탭(Tab)과 공백(Space)이 혼용되어 있을 때 주로 나타납니다. 대표적인 원인탭과 스페이스 혼용: 한 줄은 탭으로, 다른 줄은 스페이스로 들여쓰기를 하면 파이썬은 이를 다르게 인식합니다.복사/붙여넣기: 인터넷에서 코드를 복사해 붙여넣으면 들여쓰기 방식이 섞일 수 있습니다.코드 블록 내 일관성 부족: 같은 코드 블록 내에서 들여쓰기 간격(예: 2칸, 4칸)이 다르면 에러가 발생합니다.해결 방법들여쓰기 방식 통일: 코드 전체를 탭 또는 스페이스 중 하나로 통일합니다. 파이썬 공식 스타일 가이드(PEP8)는 스페이스 4칸을 권장합니다. 코드 에디터 기능 활..

IT/Python 2025.04.23

[파이썬 - 크롤링] 텍스트를 포함하는 태그 찾기

텍스트를 포함하는 태그 하나 찾기soup.find('태그이름',string=re.compile('텍스트')) 텍스트를 포함하는 태그 여러개 찾기soup.find_all('태그이름',string=re.compile('텍스트')) 텍스트로 시작하는 태그 여러개 찾기soup.find('태그이름',string=re.compile('^텍스트')) 텍스트로 끝나는 태그 여러개 찾기soup.find('태그이름',string=re.compile('텍스트$')) import re#텍스트를 포함하는 태그 한개soup.find('a', string=re.compile('그레이'))#텍스트를 포함하는 태그 여러개 찾기soup.find_all('a', string=re.compile('그레이'))#텍스트로 시작하는 태그 여러..

IT/Python 2025.04.23

[파이썬 - 크롤링] 특정 텍스트와 정확하게 일치하는 태그 찾는 방법

find, find_all 명령어- select, select_one과 같은 선택자는 텍스트를 기준으로는 찾는 기능을 제공하지 않음- 텍스트와 똑같은 태그 하나 찾기 및 텍스트와 똑같은 태크 여러개 찾기soup.find('태그이름',string='텍스트') -- 한개 찾기soup.find_all('태그이름', string='텍스트') -- 여러개 찾기실습예제import requestsfrom bs4 import BeautifulSoupresponse = requests.get("https://startcoding.pythonanywhere.com/basic")html = response.textsoup = BeautifulSoup(html,'html.parser');# 노트북 한개만 찾기soup.find..

IT/Python 2025.04.22

[Python] 파이썬으로 지리 정보 시스템(GIS) 다루기

파이썬을 이용한 지리정보 시스템을 다루는 방법에 대해서 알아보도록 하겠습니다. GIS는 지리적 데이터를 수집, 저장, 분석, 관리 및 시각화하는 강력한 도구 입니다. 파이썬의 다양한 라이브러리를 활용하면 GIS 작업을 효율적으로 수행할 수 있습니다.GIS를 위한 파이썬 라이브러리파이썬에서 GIS 작업을 위해 사용되는 주요 라이브러리들을 살펴 보겠습니다.GeoPandas: 공간 데이터를 쉽게 다룰 수 있게 해주는 라이브러리로, Pandas의 기능을 확장하여 지리적 데이터를 처리합니다.Shapely: 기하학적 객체를 다루는 데 사용되며, 점, 선, 다각형 등의 공간 연산을 지원합니다.Fiona: 벡터 데이터 파일을 읽고 쓰는 데 사용됩니다.Rasterio: 래스터 데이터를 처리하는 데 특화된 라이브러리입니다..

IT/Python 2025.01.22

[Python] 파이썬을 이용한 소셜 미디어 데이터 마이닝

소셜 미디어는 현대 사회에서 중요한 데이터의 원천으로 자리잡았습니다. 트위터, 페이스북, 인스타그램 등 다양한 플랫폼에서 생성되는 방대한 양의 데이터는 기업, 연구자, 정부기관 등에서 활용될 수 있는 귀중한 자산 입니다. 파이썬을 활용하여 소셜 미디어 데이터를 수집, 분석, 시각화하는 방법과 그 응용 가능성을 소개 합니다. 소셜 미디어 데이터 마이닝이란?소셜 미디어 데이터 마이닝은 소셜 네트워크 상에서 생성되는 데이터를 분석하여 의미있는 패턴과 통찰을 도출하는 과정 입니다. 이를 통해 소비자 행동, 여론 변화, 트렌드 등을 파악할 수 있으며, 마케팅 전략 수립이나 정책 결정에 활용 됩니다. 이 과정은 크게 다음과 같은 단계를 포함 합니다.데이터 수집 : API나 웹 크롤링을 통해 데이터 수집데이터 전처리..

IT/Python 2025.01.22

[Python] 파이썬으로 날씨 데이터 수집 및 분석하기

파이썬을 이용한 날씨 데이터를 수집하고 분석하는 방법에 대해서 알아보도록 하겠습니다. 날씨 데이터는 다양한 분야에서 활용될 수 있는 중요한 정보이며, 파이썬의 강력한 라이브러리들을 활용하면 쉽게 데이터를 다룰 수 있습니다. 함께 살펴볼까요?1. 날씨 데이터 수집하기날씨 데이터를 수집하는 방법은 크게 두가지가 있습니다. API를 이용하는 방법과 윕 크롤링을 이용하는 방법 입니다. API를 이용한 데이터 수집가장 쉽고 안정적인 방법은 OpenWeatherMap과 같은 날씨 API를 이용하는 것 입니다. 먼저 OpenWeatherMap에 가입하고 API 키를 발급받아야 합니다.import requestsAPI_KEY = "여러분의_API_키를_입력하세요"city = "Seoul"url = f"http://ap..

IT/Python 2025.01.22

[Python] 파이썬을 이용한 주식 데이터 분석

파이썬을 이용한 주식 데이터 분석에 대해서 알아보도록 하겠습니다. 주식 투자에 관심이 있거나 데이터 분석을 배우고 싶으신 분들에게 유용한 정보가 될 거예요.파이썬으로 주식데이터 분석하기파이썬은 데이터 분석에 매우 적합한 프로그래밍 언어 입니다. 특히 주식 데이터 분석에 있어서 강력한 도구가 될 수 있죠. 그럼 어떻게 파이썬을 이용해 주식 데이터를 분석할 수 있는지 단계별로 알아보겠습니다.1.필요한 라이브러리 설치하기먼저, 주식 데이터 분석에 필요한 파이썬 라이브러리들을 설치해야 합니다. 주로 사용되는 라이브러리는 다음과 같아요.pandas :데이터 처리와 분석을 위한 라이브러리numpy : 수치 계산을 위한 라이브러리matplotlib : 데이터 시각화를 위한 라이브러리FinanceDataReader :..

IT/Python 2025.01.21

[Python] OpenCV를 이용한 이미지 처리 기초

OpenCV를 사용하여 이미지 처리의 기초를 알아보겠습니다. OpenCV는 다양한 이미지 처리 기능을 제공하여 머신러닝과 컴퓨터 비전 프로젝트에 필수적인 도구 합니다.OpenCV 설치 및 기본 설정먼저, OpenCV를 설치해야 합니다. 파이썬 환경에서는 다음 명령어로 간단히 설치할 수 있습니다.pip install opencv-python설치가 완료 되면 다음과 같이 OpenCV를 임포트 하고 버전을 확인할 수 있습니다.import cv2print(cv2.__version__)이미지 읽기, 표시, 저장하기OpenCV에서 이미지를 다루는 기본적인 작업부터 시작해봅시다. 이미지 읽기image = cv2.imread('sample.jpg', cv2.IMREAD_COLOR) 이미지 표시하기cv2.imshow('..

IT/Python 2025.01.21

[Python] 파이썬으로 간단한 챗봇 만들기

파이썬을 이용해서 간단한 챗봇을 만드는 방법에 대해서 알아보도록 하겠습니다. 챗봇은 사용자와 대화를 나누는 프로그램으로, 다양한 분야에서 활용되고 있습니다. 이 글에서는 초보자도 쉽게 따라할 수 있는 방법에 대해서 알아보도록 하겠습니다. 준비 사항먼저 필요한 라이브러리를 설치해야 합니다. 터미널에서 다음 명령어를 입력하세요.pip install openaiOpenAI API 키 설정OpenAI의 API를 사용하기 위해서는 API키가 필요 합니다. OpenAI 웹사이트에서 회원가입 후  API 키를 받을 수 있습니다.코드 작성하기이제 본격적으로 챗봇 코드를 작성해보겠습니다.from openai import OpenAI# API 키 설정api_key = 'YOUR_API_KEY_HERE'client = Op..

IT/Python 2025.01.21

[Python] 자연어 처리 기초: NLTK 라이브러리 활용하기

자연어 처리(NLP)의 기초와 NLTK(Natural Language Tookit) 라이브러리 활용법에 대해서 알아보겠습니다. NLTK는 파이썬에서 가장 널리 사용되는 자연어 처리 라이브러리 중 하나로, 텍스트 분석과 처리를 위한 다양한 도구와 리소스를 제공 합니다. NLTK 소개NLTK는 2001년 처음 개발된 이후 지속적으로 발전해왔으며, 텍스트 처리, 분류, 토큰화, 형태소 분석, 구문 북석 등 다양한 자연어 처리 작업을 지원 합니다. 이 라이브러리의 주요 특징은 다음과 같습니다.풍부한 언어 데이터셋 제공다양한 자연어 처리 알고리즘 구현교육 및 연구 목적에 적합한 설계활발한 커뮤니티 지원상세한 문서화와 튜토리얼 제공NLTK 설치하기NLTK를 사용하기 위해서는 먼저 설치가 필요합니다. 파이썬이 이미 ..

IT/Python 2025.01.20

[Python] TensorFlow를 이용한 딥러닝 모델 구현하기

TensorFlow를 이용해 딥러링 모델을 구현하는 방법에 대해서 알아보도록 하겠습니다. TensorFlow는 구글에서 개발한 오픈소스 머신러닝 라이브러리로 딥러닝 모델을 쉽고 효율적으로 구현할 수 있게 해줍니다. TensorFlow 소개TensorFlow는 데이터 흐름 그래프를 사용하여 수치 연산을 수행 합니다. 이 그래프의 노드는 수학 연산을 나타내고 엣지는 다차원 데이터 배열(텐ㅌ서)를 나타냅니다. 이러한 구조를 통해 복잡한 연산을 효율적으로 수행할 수 있습니다. 모델 구현 단계TensorFlow를 이용한 딥러닝 모델 구현은 다음과 같은 단계로 이루어 집니다.데이터 준비모델 구성모델 컴파일모델 훈련모델 평가 및 예측각 단계를 자세히 살펴 보겠습니다.1.데이터 준비먼저 필요한 라이브러리를 임포트 하고..

IT/Python 2025.01.20

[Python] Turtle 그래픽을 이용한 미니 게임 만들기

Python의 Tutle 그래픽을 이용해 재미 있는 미니 게임을 만드는 방법에 대해서 알아보도록 하겠습니다. Turtle은 초보자들도 쉽게 그래픽을 다룰 수 있게 해주는 Python의 내장 모듈 입니다.Turtle 모듈 소개Turtle 그래픽은 화면상의 '거북이'를 움직여 그림을 그리는 방식으로 작동 합니다. 간단한 명령어로 복잡한 그래픽을 만들 수 있어 프로그래밍 입문자들이게 인기가 많습니다.import turtlescreen = turtle.Screen()t = turtle.Turtle()이렇게 Turtle을 import하고 screen과 turle 객체를 생서하는 것으로 시작 합니다.간단한 Snake 게임 만들기이제 Turtle을 이용해 고전 게임인 Snake를 만들어보겠습니다.1.게임 화면 설정s..

IT/Python 2025.01.20

[Python] 파이썬을 이용한 퍼즐 게임 구현하기

파이썬을 이용한 게임만들기 중 오늘은 퍼즐 게임 만들기에 대해서 알아보도록 하겠습니다. 퍼즐 게임은 논리적인 사고와 문제 해결 능력을 키우는 데 도움이 되며, 파이썬 프로그래밍 실력도 향상시킬 수 있는 좋은 프로젝트 입니다.1.프로젝트 개요우리가 만들 퍼즐 게임은 숫자나 이미지를 섞어서 원래의 순서대로 맞추는 간단한 슬라이딩 퍼즐 입니다. 이 게임은  Pygame라이브러리를 사용하여 구현할 것이며, 다음과 같은 기능을 포함할 예정 입니다.게임 보드 생성하기퍼즐 조각 섞기마우스 클릭으로 퍼즐 조각 이동게임 클리어 확인타이머 및 이동 횟수 카운트2.개발 환경 설정먼저 필요한 라이브러리를 설치해야 합니다. 터미널에서 다음 명령어를 실행하세요.pip install pygame3. 기본 구조 만들기게임의 기본 구..

IT/Python 2025.01.19

[Python] 파이썬으로 텍스트 기반 RPG 게임 개발하기

오늘은 파이썬을 이요하여텍스트 기반 RPG 게임을 만드는 방법에 대해서 알아보겠습니다. 텍스트 RPG는 그래픽 없이 텍스트만으로 진행되는 게임이에요. 간단하면서도 재미 있는 프로젝트라 파이썬 초보자에도 딱 좋습니다.1.게임의 기본 구조 만들기먼저 게임의 뼈대를 만들어 볼까요? 다음과 같은 기본 구조로 시작해 봅시다.import randomdef game_start(): print("텍스트 RPG 게임에 오신 것을 환영합니다!") player_name = input("당신의 이름은 무엇인가요? ") print(f"{player_name}님, 모험을 시작합니다!")def main_menu(): while True: print("\n무엇을 하시겠습니까?") pri..

IT/Python 2025.01.19

[Python] Pygame으로 간단한 2D 게임 만들기

Pygame을 이용해 간단한 2D 게임을 만드는 방법에 대해서 알아보겠습니다. Pygame은 Python을 사용하여 게임을 쉽게 만들 수 있게 해주는 강력한 라이브러리 입니다. 초보자도 쉽게 접근할 수 있어 게임 개발 입문에 아주 좋습니다.Pygame 설치하기먼저 Pygame을 설치해야 합니다. 터이널이나 명령 프롬프트를 이용하여 다음 명령어를 입력하세요.pip install pygame게임 기본 구조 만들기 Pygame 게임의 기본 구조는 다음과 같습니다. Pygame 초기화게임 창 설정게임 루프(이벤트 처리, 게임 로직 업데이트,  화면 그리기)게임 종료아래는 기본 구조의 코드 입니다.import pygameimport sys# Pygame 초기화pygame.init()# 화면 설정WIDTH = 80..

IT/Python 2025.01.19

[Python] 파이썬을 이용한 암호화 및 복호화 기법 학습하기

안녕하세요. 파이썬을 이용한 암호화와 복호화 기법에 대해 알아보려고 해요. 정보 보안이 중요해지는 요즘, 이 기술을 이해하고 활용하는 것은 정말 중요하답니다. 자~! 그럼 시작해보도록 하겠습니다.암호화와 복호화란?먼저, 암호화와 복호화가 무엇인지 간단히 설명드릴게요.암호화 : 정보를 읽을 수 없는 형태로 변화하는 과정복호화 : 암호화된 정보를 다시 원래 형태로 되돌리는 과정이 두 과정을 통해 우리는 중요한 저보를 안전하게 보호하고 전송할 수 있어요.파이썬으로 시작하는 암호화/복호화파이썬은 암호화와 복호화를 구현하기에 아주 좋은 언어예요. 다양한 라이브러리를 제공하고 있어 초보자도 쉽게 시작할 수 있답니다.1.간단한 대칭키 암호화 : Caeser Cipher가장 간단한 암호화 방식 중 하나인 Casear ..

IT/Python 2025.01.18

[Python] 파이썬으로 네트워크 스캐너 구현하기

오늘은 파이썬을 사용하여 네트워크 스캐너를 구현하는 방법에 대해서 알아보도록 하겠습니다. 네트워크 스캐너는 로컬 네트워크에 연결된 장치를 찾아내고 정보를 수집하는 도구로, 네트워크 관리와 보안 분양에서 매우 유용하게 사용 됩니다.네트워크 스캐너란?네트워크 스캐너는 다음과 같은 작업을 수행 합니다. 호스트 검색 : 네트워크에 연결된 장치의 IP 주소를 탐지합니다.포트 스캐닝 : 각 장치에서 열려 있는 포트를 확인 합니다.서비스 탐지 : 열려 있는 포트에서 어떤 서비스가 실행 중인지 파악 합니다.MAC 주소 수집 : 각 장치의 물리적 주소(MAC 주소)를 수집 합니다.이러한 기능을 통해 네트워크 관리자는 네트워크의 구조를 파악하고, 잠재적인 보안 취약점을 식별할 수 있습니다.파이썬으로 네트워크 스케너 구현하..

IT/Python 2025.01.18

[Python] 파이썬을 이용한 채팅 프로그램 만들기

파이썬을 이용한 간단한 채팅 프로그램 만드는 방법에 대해서 알아보도록 하겠습니다. 채팅 프로그램은 네트워크 프로그래밍의 기초를 배우기에 아주 좋은 주제인데요. 함께 만들어보면서 소켓 프로그래밍과 스레딩에 대해서 배워볼수 있을 거예요.채팅 프로그램의 구조우리가 만들 채팅 프로그램은 서버-클라이언트 구조로 만들어집니다. 서버는 여러 클라이언트의 연결을 관리하고, 한 클라이언트에서 보낸 메시지를 다른 모든 클라이언트에게 전달하는 역할을 합니다. 클라이언트는 사용자의 입력을 받아 서버로 전송하고, 서버로부터 받은 메시지를 화면에 표시 합니다. 서버 프로그램 만들기먼저 서버 프로그램을 만들어볼까요? 서버는 다음과 같은 기능을 수행해야 합니다.클라이언트의 연결 요청을 받아들입니다.연결된 클라이언트들의 목록을 관리 ..

IT/Python 2025.01.18

[Python] 소켓 프로그램 기초 학습하기

안녕하세요. 오늘은 소켓 프로그램밍의 기초에 대해서 알아보려고 합니다.소켓 프로그래밍이란?소켓 프로그래밍은 네트워크를 통해 두 프로그램이 서로 데이터를 주고받을 수 있게 해주는 프로그램 기법이에요. 쉽게 말해, 인터넷을 통해 다른 컴퓨터와 대화를 나눌 수 있게 해주는 방법이라고 생각하면 되요. 소켓은 마치 전화기와 같아요. 우리가 전화를 걸 때 전화번호(IP 주소)와 내선번호(포트 번호)를 이용하듯이, 소켓도 IP주소와 포트 번호를 이용해 통신해요.소켓의 종류소켓에는 크게 두가지 종류가 있어요.TCP 소켓 : 연결지향적이고 신뢰성이 높아요. 마치 전화 통화처럼, 연결을 먼저 설정하고 대화를 나눠요.UDP 소켓 : 비연결 지향적이고 신뢰성은 낮지만 속도가 빨라요. 마치 편지를 보낸 것과 비슷해요.대부분의 ..

IT/Python 2025.01.17

[Python] 파이썬으로 시스템 모니터링 도구 만들기

안녕하세요. 오늘은 파이썬을 이용한 시스템 모니터링 도구를 만드는 방법에 대해서 알아보겠습니다. 시스템 모니터링은 컴퓨터의 성능과 상태를 실시간으로 확인할 수 있게 해주는 중요한 작업 입니다. 왜 시스템 모니터링이 필요한가?컴퓨터 시스템은 복잡하고 때로는 예측하기 어려운 행동을 보일 수 있어요. CPU 사용량이 갑자기 치솟거나, 메모리가 부족해지거나, 디스크 공간이 꽉 차는 등의 상황이 발생할 수 있죠. 이런 문제들을 미리 파악하고 대처하기 위해서 시스템 모니터링이 필요한 거에요.파이썬으로 시스템 모니터링 도구 만들기파이썬은 시스템 정보를 쉽게 얻기 위해 다양한 라이브러리를 제공하고 있어요. 그 중에서도 가장 강력하고 사용하기 쉬운 라이브러리가 바로 'psutil'이에요.psutil 설치하기먼저, psu..

IT/Python 2025.01.17

[Python] 파이썬을 이용한 이메일 자동 발송 스크립트 작성하기

파이썬을 사용하여 이메일을 자동으로 발송하는 스크립트를 작성하는 방법에 대해서 알아보도록 하겠습니다. 이메일 자동화는 업무 효율성을 높이는데 매우 유용한 도구 입니다. 그럼 지금부터 단계별로 살펴보겠습니다.1. 필요한 라이브러리 설치 및 임포트먼저 필요한 라이브러리를 설치하고 임포트해야 합니다. 우리는 주로 'smtplib'와 'email' 라이브러리를 사용할 것 입니다.import smtplibfrom email.mime.text import MIMETextfrom email.mime.multipart import MIMEMultipartfrom email.mime.image import MIMEImagefrom email.mime.application import MIMEApplication2. SM..

IT/Python 2025.01.17
반응형