1. 기본 자동화
기본 자동화는 단순하고 반복적인 작업을 자동화.
# 엑셀 파일에서 데이터를 읽고 다른 파일에 복사하는 작업을 자동화 하는 코드
import openpyxl
# 엑셀 파일 열기
workbook = openpyxl.load_workbook('input.xlsx')
sheet = workbook.active
# 데이터를 읽어서 새로운 파일에 쓰기
new_workbook = openpyxl.Workbook()
new_sheet = new_workbook.active
for row in sheet.iter_rows(values_only=True):
new_sheet.append(row)
new_workbook.save('output.xlsx')
# 웹 페이지에서 특정 데이터를 추출해서 CSV 파일로 저장하는 자동화 코드
import requests
from bs4 import BeautifulSoup
import csv
# 웹 페이지에서 데이터 추출
url = 'https://example.com/products'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
products = []
for item in soup.select('.product-item'):
name = item.select_one('.product-name').text
price = item.select_one('.product-price').text
products.append([name, price])
# CSV 파일에 데이터 저장
with open('products.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerow(['Name', 'Price'])
writer.writerows(products)
2. 지능 자동화
기본 자동화에 더해 규칙 기반의 의사 결정을 포함.
# 이메일을 읽고 특정 키워드가 포함된 이메일만 처리하는 자동화 코드
import imaplib
import email
# 이메일 서버에 연결
mail = imaplib.IMAP4_SSL('imap.gmail.com')
mail.login('your-email@gmail.com', 'your-password')
mail.select('inbox')
# 이메일 검색
result, data = mail.search(None, 'ALL')
email_ids = data[0].split()
for email_id in email_ids:
result, data = mail.fetch(email_id, '(RFC822)')
raw_email = data[0][1]
msg = email.message_from_bytes(raw_email)
# 제목에 특정 키워드가 있는지 확인
if '키워드' in msg['Subject']:
print(f"Processing email: {msg['Subject']}")
mail.logout()
# 금융 거래 내역을 자동으로 분류하고 특정 조건에 맞는 거래를 별도로 처리하는 자동화 코드
import pandas as pd
# 거래 내역 데이터 불러오기
df = pd.read_csv('transactions.csv')
# 특정 조건에 맞는 거래 필터링
large_transactions = df[df['Amount'] > 1000]
# 필터링된 거래 내역 저장
large_transactions.to_csv('large_transactions.csv', index=False)
3. 인지 자동화
머신 러닝과 자연어 처리(NLP) 기술을 사용해서 복잡한 의사 결정과 예측을 수행하는 단계.
# 고객 리뷰를 분석하여 긍정적 또는 부정적 감정을 분류하는 자동화 코드
from transformers import pipeline
# 감정 분석 모델 로드
sentiment_analysis = pipeline('sentiment-analysis')
# 예제 리뷰
reviews = [
"I love this product! It works great.",
"This is the worst purchase I've ever made.",
"The quality is okay, but could be better."
]
# 감정 분석 수행
for review in reviews:
result = sentiment_analysis(review)[0]
print(f"Review: {review}\nSentiment: {result['label']} (Score: {result['score']})\n")
# 챗봇을 사용하여 고객 질문에 대한 응답을 자동으로 생성하는 자동화 코드
from transformers import pipeline
# 챗봇 모델 로드
chatbot = pipeline('conversational')
# 예제 대화
conversations = [
{"role": "user", "content": "What is the weather like today?"},
{"role": "user", "content": "Can you help me with my order?"},
{"role": "user", "content": "Tell me a joke."}
]
# 응답 생성
for conv in conversations:
response = chatbot(conv['content'])
print(f"User: {conv['content']}")
print(f"Bot: {response[0]['generated_text']}\n")
'실용적인 알고리즘' 카테고리의 다른 글
[자바스크립트] 마우스 이동에 따른 이미지 움직임 & 글레어 효과 (0) | 2024.04.17 |
---|---|
[파이썬] 파이썬 코드를 실행 파일로 만들기 (0) | 2024.04.17 |
[FM2024, 파이썬] Facegen 공통 사진 복사 및 이름 변경 (0) | 2024.04.17 |