웹 크롤링을 위한 Python 스크립트를 만들고, 이를 실행 파일로 변환하는 과정은 데이터 수집 및 분석에 매우 유용하다. 이 과정을 통해 자동화된 방식으로 웹 데이터를 수집하고 저장할 수 있다. 다음은 각 단계별로 필요한 코드와 설명이다.
크롤링할 웹 페이지의 URL을 변수에 저장한다.
url = "http://example.com/news"
웹 페이지에서 기사의 본문을 추출하고 이를 파일로 저장한다.
import requests
from bs4 import BeautifulSoup
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
article = soup.find('div', class_='article_body').get_text()
with open('article.txt', 'w', encoding='utf-8') as file:
file.write(article)
기사의 제목, 본문, 그리고 하이퍼링크를 모두 파일로 저장한다.
articles = soup.find_all('div', class_='article')
for article in articles:
title = article.find('h1').get_text()
content = article.find('div', class_='content').get_text()
link = article.find('a')['href']
with open(f'{title}.txt', 'w', encoding='utf-8') as file:
file.write(f"Title: {title}\nLink: {link}\nContent:\n{content}\n\n")
Python 스크립트를 실행 파일로 만들기 위해 pyinstaller
와 같은 도구를 사용한다.
먼저 pyinstaller
를 설치한다.
pip install pyinstaller
그 다음, Python 스크립트를 실행 파일로 변환한다.
pyinstaller --onefile your_script.py
이 명령어는 your_script.py
라는 Python 스크립트를 단일 실행 파일로 변환한다. 생성된 실행 파일은 dist
폴더 내에 위치한다.
웹 크롤링 스크립트를 실행 파일로 만들 때는 해당 스크립트가 외부 라이브러리에 의존하는 경우, 이 라이브러리들도 포함시켜야 한다는 점을 주의해야 한다. 또한, 웹 크롤링 시 서버 부하를 고려하고, 해당 웹사이트의 이용 약관을 준수하는지 확인해야 한다.