본문 바로가기
생활

파이썬 초보도 10분이면 끝내는 5가지 자동화 스크립트

by 달달이시루 2025. 4. 12.
반응형

파이썬 초보도 10분이면 끝내는 5가지 자동화 스크립트 🐍✨

🤔 자동화 스크립트가 뭔가요?

우리 생활 속에서 반복적으로 해야 하는 일들이 많죠? 이메일 보내기, 데이터 정리, 파일 관리 등등. 이러한 작업을 자동으로 처리해 주는 스크립트를 만들 수 있다면 얼마나 좋을까요! 🥳 오늘은 파이썬을 사용해 초보도 쉽게 만들 수 있는 5가지 자동화 스크립트를 소개하겠습니다. 제목에서 언급한 대로, 각각의 스크립트는 단 10분이면 끝낼 수 있어요! 🎯

✅ 이 글에서 다룰 내용

  1. 이메일 자동 발송하기 ✉️
  2. 웹사이트 데이터 스크래핑하기 🌐
  3. 파일 이름 일괄 변경하기 🔄
  4. PDF 파일에서 텍스트 추출하기 📄
  5. 이미지 리사이징하기 🖼️

이 모든 스크립트는 간단하게 따라 할 수 있으니, 컴퓨터 앞에 앉아 파이썬을 시작해 볼까요? 🤓


1. 이메일 자동 발송하기 ✉️

📋 필요한 라이브러리

  • smtplib: 이메일 전송을 위한 라이브러리
  • email: 이메일 메시지를 생성하기 위한 라이브러리

🔢 코드 단계

  1. 필요한 라이브러리를 임포트합니다.
  2. SMTP 세션을 설정하고 로그인합니다.
  3. 이메일 메시지를 작성합니다.
  4. 이메일을 전송합니다.
  5. 세션을 종료합니다.

📝 코드 예시

python
import smtplib
from email.mime.text import MIMEText

def send_email(subject, body, to):
from_email = "your_email@gmail.com"
password = "your_password" # 비밀번호는 안전하게 보관하세요!

msg = MIMEText(body)
msg['Subject'] = subject
msg['From'] = from_email
msg['To'] = to

with smtplib.SMTP_SSL('smtp.gmail.com', 465) as server:
    server.login(from_email, password)
    server.send_message(msg)

send_email("테스트 제목", "이것은 자동 발송된 이메일입니다.", "recipient_email@example.com")

⭐ 주요 포인트

  • 이메일 비밀번호는 안전하게 처리하세요!
  • 스팸 메일로 분류되지 않도록 주의하세요. 정보는 간결하고 명확하게 작성하는 것이 좋습니다.

2. 웹사이트 데이터 스크래핑하기 🌐

📋 필요한 라이브러리

  • requests: 웹페이지 요청을 위한 라이브러리
  • BeautifulSoup: HTML/XML 문서 파싱을 위한 라이브러리

🔢 코드 단계

  1. 웹페이지에 요청을 보냅니다.
  2. 응답받은 HTML 코드를 파싱합니다.
  3. 원하는 데이터를 추출합니다.
  4. 결과를 출력합니다.

📝 코드 예시

python
import requests
from bs4 import BeautifulSoup

def scrape_website(url):
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
titles = soup.find_all('h2') # 제목 태그(예: h2)를 찾음

for title in titles:
    print(title.get_text())

scrape_website("https://example.com")

⭐ 주요 포인트

  • 사이트의 이용 약관을 확인하고 허가된 내용만 스크래핑하세요.
  • 웹페이지 구조가 변경될 경우 스크래핑 코드도 수정해야 할 수 있습니다.

3. 파일 이름 일괄 변경하기 🔄

📋 필요한 라이브러리

  • os: 운영 체제와 상호작용하기 위한 라이브러리

🔢 코드 단계

  1. 대상 폴더의 모든 파일 목록을 가져옵니다.
  2. 파일 이름을 원하는 형식으로 변경합니다.
  3. 변경된 이름으로 파일을 다시 저장합니다.

📝 코드 예시

python
import os

def rename_files(folder_path):
for count, filename in enumerate(os.listdir(folder_path)):
new_name = f"새로운이름{count}.txt"
os.rename(os.path.join(folder_path, filename), os.path.join(folder_path, new_name))

rename_files("/path/to/folder")

⭐ 주요 포인트

  • 변경할 파일의 확장자를 확인하여 올바르게 지정하세요.
  • 기존 파일명과 중복되지 않도록 주의하세요!

4. PDF 파일에서 텍스트 추출하기 📄

📋 필요한 라이브러리

  • PyPDF2: PDF 파일을 다루기 위한 라이브러리

🔢 코드 단계

  1. PDF 파일을 엽니다.
  2. 각 페이지의 텍스트를 추출합니다.
  3. 추출한 텍스트를 출력합니다.

📝 코드 예시

python
import PyPDF2

def extract_text_from_pdf(pdf_path):
with open(pdf_path, "rb") as file:
reader = PyPDF2.PdfReader(file)
for page in reader.pages:
print(page.extract_text())

extract_text_from_pdf("sample.pdf")

⭐ 주요 포인트

  • PDF 파일의 보안 설정에 따라 텍스트 추출이 불가능한 경우가 있습니다.
  • 다양한 PDF 파일에서 테스트해 보세요!

5. 이미지 리사이징하기 🖼️

📋 필요한 라이브러리

  • PIL (Pillow): 이미지 처리 라이브러리

🔢 코드 단계

  1. 이미지를 엽니다.
  2. 원하는 크기로 리사이징합니다.
  3. 새 파일로 저장합니다.

📝 코드 예시

python
from PIL import Image

def resize_image(image_path, output_path, size):
with Image.open(image_path) as img:
img = img.resize(size)
img.save(output_path)

resize_image("original_image.jpg", "resized_image.jpg", (800, 600))

⭐ 주요 포인트

  • 이미지를 축소할 경우 품질 저하가 있을 수 있습니다.
  • 필요한 비율을 유지하면서 리사이징하는 방법을 이해하세요.

📌 결론

이렇게 파이썬을 통해 10분 이내에 자동화를 구현할 수 있는 스크립트를 5가지를 배워봤습니다. 여러분도 이 스크립트를 활용해 반복 업무에서 벗어나 보다 창의적인 작업에 집중해보세요! 🌈

✅ 핵심 포인트 요약

  1. 이메일 자동 발송: SMTP와 email 라이브러리를 사용하여 손쉽게 이메일을 보낼 수 있습니다.
  2. 웹사이트 데이터 스크래핑: requests와 BeautifulSoup를 이용해 유용한 정보를 쉽게 수집할 수 있습니다.
  3. 파일 이름 일괄 변경: os 라이브러리를 활용해 폴더 내 파일 이름을 일괄 변경하는 방법을 배웠습니다.
  4. PDF 텍스트 추출: PyPDF2로 PDF에서 텍스트를 간편하게 추출 가능합니다.
  5. 이미지 리사이징: Pillow를 통해 이미지를 원하는 크기로 쉽게 조정할 수 있습니다.

이제 여러분도 파이썬으로 자동화를 간편하게 시작해보세요! 👍✨ 특별한 질문이나 도움이 필요하시면 언제든지 말씀해 주세요! 😊

반응형