컴퓨터 없이 파이썬 계속 실행하기

파이썬을 사용하는 가장 큰 이유 중 하나는 계속 무언가를 크롤링하거나 동일한 동작을 할 때 많이 사용한다. 컴퓨터를 계속 켜놓지 않아도 구글 서버를 이용해서 파이썬 코드를 계속 사용하는 방법을 소개한다.

글 순서는 1. 구글 클라우드 플랫폼 등록 및 설정 2. 구글 클라우드 플랫폼 VM 만들기 3. 가장 저렴한 리눅스 만들기 4. 리눅스 설정하기 5. 파이썬 코드 올리기 6. 구현 및 동작 이다.

구글 클라우드 플랫폼

구글 클라우드 플랫폼은 유료이지만 무료 크래딧을 지원하기 때문에 한번 테스트 해보고 비용이 얼마 나오는지 확인할 수 있는 장점이 있다. 이번에 소개하는 “컴퓨터 없이 파이썬 계속 실행하기”는 테스트 해본 결과 한달에 700원 가량 나온다.

구글 클라우드 플랫폼 등록 및 설정

  • 구글 접속
  • 구글검색 -> “구글 클라우드 플랫폼” 검색
  • 상단 좌측에 My First Project 클릭
  • 새 프로젝트 생성
  • 프로젝트 이름 : 실제 사용할 프로젝트 이름이 됨

가상머신(VM) 만들기

  • 생성한 프로젝트 클릭
  •  Cloud 개요 클릭
  • Compute Engine 클릭
  • VM 인스턴스 클릭
  • Comput Engine API 사용하기 클릭

가장 저렴한 리눅스 만들기

  • VM 인스턴스 내 접속
  • 인스턴스 만들기 클릭
  • 이름에는 사용할 가상머신 이름 쓰기
  • 리전은 안전한 us 사용
  • 하나씩 바꿔보며 가장 저렴한 서버 선택
  • 서버를 선택했다면 다음은 머신구성
  • 머신 구성은 E2 시리즈 / e2-micro(vCPU 2개) 선택
  • 리눅스에서 파이썬 코드만 구현하기 때문에 가장 낮은 성능 선택해도 무방
  • 다음은 부팅 디스크
  • 부팅 디스크는 운영체제 선택하는 곳
  • 리눅스를 사용해야되기 때문에 Ubuntu 최신 버전 선택

리눅스 환경 세팅하기

  • 생성한 리눅스 화면에서 SSH 클릭
  • pip 사용하기 위해서 pip.py 다운 받기
    명령어 : wget https://bootstrap.pypa.io/get-pip.py
  • pip 설치하기
    명령어 : sudo python3 get-pip.py
  • 필요한 파이썬 라이브러리 설치하기
    ex) 아래의 모듈이 필요하므로 pip install __모듈이름__ 해서 설치
#--------------telegram---------
import telepot
from telepot.loop import MessageLoop # 봇 구동
from telepot.namedtuple import InlineKeyboardMarkup as MU # 마크업
from telepot.namedtuple import InlineKeyboardButton as BT # 버튼

import time
import telegram
from telegram.ext import Updater

#-----------------crawling
import time
import requests
import bs4
from bs4 import BeautifulSoup

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager


from selenium.webdriver.common.keys import Keys
import urllib.request
import numpy
from selenium.webdriver.common.alert import Alert

from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.chrome.options import Options

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
  • 리눅스 내에서 파일 만들기 위해서 vim 함수 설치
    명령어 :  sudo apt-get install vim
  • vim 파일이름.py 해서 파이썬 파일 만들기
  • 크롬 드라이버 동작시켜야 되기 때문에 크롬 드라이버 설치하기
    명령어 : wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
  • 크롬 설치하기
    명령어 : sudo apt install ./google-chrome-stable_current_amd64.deb
  • 크롬 버전 확인하기
    명령어 : google-chrome –version
  • 버전에 맞는 크롬 드라이버 설치
    명령어 : wget https://chromedriver.storage.googleapis.com/109.0.5414.74/chromedriver_linux64.zip
    명령어2 : unzip chromedriver_linux64.zip
  • 리눅스에 unzip 명령어 설치하기
    명령어 : sudo apt install unzip

파이썬 동작 및 구현 영상

  • 파이썬을 단순히 pytonh3 파이썬이름.py 로 하게 되면 파이썬 코드가 계속 돌지 않음
  • 계속 돌게 하기 위해서 nohup python3 파이썬이름.py & 명령어 필요
  • 계속 동작하는 파이썬 코드 멈추는 명령어는 “kill”
5X

Leave a Comment