ÀÏ´Ü ¼µÎ¿¡ Naru1234´ÔÀÌ ¿Ã·ÁÁֽŠ¸µÅ©¸¦ º¸°í Á¦ÀÛÇÏ¿´½À´Ï´Ù
¹®Á¦½Ã »èÁ¦ Çϵµ·Ï ÇÏ°Ú½À´Ï´Ù(http://www.ppomppu.co.kr/zboard/view.php?id=oversea&no=746229&keyword=%C0%CC%BA%A3%C0%CC+%C5%DA%B7%B9%B1%D7%B7%A5)
Naru1234 °¨»çÇÕ´Ï´Ù
ÀÏ´ÜÀº
ÅÚ·¹±×·¥ º¿ÅäÅ«°ú ä³Î ¾ÆÀ̵𸦠¾Ë¾ÆÇÕ´Ï´Ù
Âü°í
(https://elfinlas.github.io/2019/08/06/make-telegram-bot/)
À§¸µÅ©¸¦ Âü°íÇÏ¿© º¿ÅäÅ«°ú ä³Î¾ÆÀ̵𸦵ì´Ï´Ù
¿øº»¼Ò½º
=========================================================================
#!/usr/bin/env python
# encoding=utf-8
import requests
from bs4 import BeautifulSoup
import os
#while »ç¿ë ÇÒ °æ¿ì
#import time
import telegram
# ÅäÅ« ¼³Á¤. Bot ¼±¾ð
bot = telegram.Bot(token='[º¿ ÅäÅ« ÁÖ¼Ò]')
#µð·ºÅ丮 ÁöÁ¤
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
#Å©·Ñ¸µ ÁöÁ¤. ¿øÇÏ´Â ÅؽºÆ® ã±â
req = requests.get('[À̺£ÀÌ ÁÖ¼Ò]')
html = req.text
soup = BeautifulSoup(html, 'html.parser')
posts = soup.find("div", {"class" : "u-flL qtyCntVal vi-bboxrev-posabs vi-bboxrev-dsplinline"})
av_num = posts.select("span", { "class" : ""})[2]
av_num_text = av_num.find("span", { "class" : ""}).text
#°ø¹é ó¸®
num_text = av_num_text.strip()
#base.txt ¿¡¼ ºÒ·¯¿À±â (0 available)
with open(os.path.join(BASE_DIR, 'base.txt'), 'r+') as f_read:
base_text = f_read.readline()
# 0 availableÀÌ ¾Æ´Ò °æ¿ì ¸Þ½ÃÁö Àü¼Û
if base_text != num_text:
link='[¿¬°áÇÒ À̺£ÀÌ ÁÖ¼Ò]'
bot.sendMessage([ä³Î id°ª],'New'+'\n'+num_text+'\n'+link)
================================================================
¼öÁ¤¼Ò½º (»ç½Ç ¶ç¾î¾²±â¸¸ ¼öÁ¤ÇÏ¿´½À´Ï´Ù..)
================================================================
#!/usr/bin/env python
# encoding=utf-8
import requests
from bs4 import BeautifulSoup
import os
# while »ç¿ë ÇÒ °æ¿ì
# import time
import telegram
# ÅäÅ« ¼³Á¤. Bot ¼±¾ð
bot = telegram.Bot(token='95327321933@:AAEF11plaDc14LqjGAaSGS1ypqIryWR12312')
# µð·ºÅ丮 ÁöÁ¤
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
# Å©·Ñ¸µ ÁöÁ¤. ¿øÇÏ´Â ÅؽºÆ® ã±â
html = req.text
soup = BeautifulSoup(html, 'html.parser')
posts = soup.find("div", {"class": "u-flL qtyCntVal vi-bboxrev-posabs vi-bboxrev-dsplinline"})
av_num = posts.select("span", {"class": ""})[2]
av_num_text = av_num.find("span", {"class": ""}).text
# °ø¹é ó¸®
num_text = av_num_text.strip()
# base.txt ¿¡¼ ºÒ·¯¿À±â (0 available)
with open(os.path.join(BASE_DIR, 'base.txt'), 'r+') as f_read:
base_text = f_read.readline()
# 0 availableÀÌ ¾Æ´Ò °æ¿ì ¸Þ½ÃÁö Àü¼Û
if base_text != num_text:
bot.sendMessage(1013#$#$5246132, 'New' + '\n' + num_text + '\n' + link)
==============================================================================
À§¿¡ ¼Ò½º´Â Á¦°¡ ÀÌ¿ëÇÏ´Â º¿ ÅäÅ«°ú ä³Î¾ÆÀ̵ðÀÔ´Ï´Ù
»¡°£ ºÎºÐÀº º¿ ÅäÅ«ÀÌ°í
ÃÊ·Ï»ö ºÎºÐÀº Àç°í¸¦ ÆľÇÇÒ À̺£ÀÌ ÁÖ¼ÒÀÔ´Ï´Ù
¸¶Áö¸·À¸·Î ºÐÈ«»öÀº ä³Î ¾ÆÀ̵ðÀÔ´Ï´Ù
ÀÏ´ÜÀº ³ëÆ® ÆÐÆ® ++ ¸¦ ¹Þ¾ÆÁÝ´Ï´Ù
¼³Ä¡ÈÄ À§¿¡ ¼öÁ¤µÈ ¼Ò¸¦ ºÙÇô ³Ö±â¸¦ ÇÕ´Ï´Ù
±×ÈÄ¿¡ °¢ÀÚ¿¡ ¸Ã´Â º¿ÅäÅ« , À̺£ÀÌÁÖ¼Ò, ä³Î¾ÆÀ̵𸦠¼öÁ¤ ÇØÁÝ´Ï´Ù
±×ÈÄ¿¡ ´Ù¸¥À̸§À¸·Î ÀúÀåÇϱ⠸¦ ´©¸£½ÅÈÄ È®ÀåÀÚ¸¦ .py ·Î ¸¸µé¾îÁÝ´Ï´Ù
Âü°í Àú´Â 1.py·Î ÀúÀå ÇÏ¿´½À´Ï´Ù
±×·¸°Ô ÀúÀåÀ» Çϸé ÆÄÀ̽㠾ð¾î ÄÚµå Çü½ÄÀ¸·Î ÀúÀåµË´Ï´Ù
ÀÏ´Ü ¿©±â±îÁö Çϸé Àý¹ÝÀº ¼º°ø ÇϽŰ̴ϴÙ
±×ÈÄ¿¡ ÆÄÀ̽ã ȨÆäÀÌÁö( https://www.python.org/downloads/)
·Î µé¾î°¡½ÅÈÄ ÆÄÀ̽ãÀ» ¼³Ä¡ ¸¦ Çϴµ¥ ¸Ç ¹Ø¿¡ add python 3.8 to path¸¦ Ŭ¸¯ÈÄ ¼³Ä¡¸¦ ÇÕ´Ï´Ù
¼³Ä¡ ¿Ï·á ÈÄ À©µµ¿ì +r ¸¦ ´©¸£½ÅÈÄ cmd ¸¦ ÀÔ·ÂÈÄ cmd âÀ» ³ª¿À°Ô ÇÕ´Ï´Ù
±×ÈÄ
pip install bs4
¸¦ ÀÔ·ÂÇØÁÝ´Ï´Ù
±×·³ ¿¡·¯Ã¢ÀÌ ¶ß´Âµ¥ ¿©±â¼
python -m pip install --upgrade pip
¸¦ ÀÔ·ÂÇØÁÝ´Ï´Ù
±×ÈÄ ´Ù½Ã
pip install bs4
¸¦ ÀÔ·ÂÇÏ¿© ´Ù½Ã ¼³Ä¡ÇØÁؽÅÈÄ
pip install requests
¸¦ ÀÔ·Â ÇØÁֽðí
±×´ÙÀ½
pip install python-telegram-bot
¸¦ ÀÔ·Â Çϸé ÇÊ¿äÇÑ ¶óÀ̺긮¸¦ ¸ðµÎ ´Ù¿î ¹Þ¾Ò½À´Ï´Ù
Àú´Â ÀÌÁ¦ 1.py¸¦ ¸¸µéÈÄ Àú´Â cµå¶óÀ̺꿡 2¹ø Æú´õ¿¡ ³Ö¾î ½À´Ï´Ù
±×·±ÈÄ ÅؽºÆ® ÆÄÀÏÀ» Çϳª ¸¸µé¾îÁÝ´Ï´Ù ³»¿ëÀ» 0 available·Î ¸¸µé°í ÆÄÀÏ À̸§À» base.txt ·Î ÀúÀåÇÕ´Ï´Ù
(Âü°í 1.py ¿Í base.txt ´Â °°Àº Æú´õ¿¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù)
±×ÈÄ¿¡ ´Ù½Ã À©µµ¿ì Å° + r ´©¸¥ÈÄ cmd âÀ» ÄÑÁÝ´Ï´Ù
±×ÈÄ Àú´Â 1.py °¡ÀÖ´Â À§Ä¡·Î À̵¿ÇØÁÝ´Ï´Ù
cd c:\2\
¸¦ ÀÔ·ÂÇØÁÝ´Ï´Ù
(Âü°í Àú´Â cµå¶óÀ̺ê 2¹øÀ̶ó´Â Æú´õ¿¡ ³Ö¾î ½À´Ï´Ù)
¿©±â¿¡
python 1.py
¸¦ ÀÔ·ÂÇÏ¿© Àç°í°¡ ÀÖÀ¸¸é ÅÚ·¹±×·¥À¸·Î Àü¼ÛÀ̵ǰí Àç°í °¡ ¾øÀ¸¸é ³¯¶ó¿ÀÁö ¾Ê½À´Ï´Ù ¿©±â¼ ÃÖÁ¾ÀûÀ¸·Î ³¯¶ó ¿À¸é ¼º°øÀÔ´Ï´Ù
Àú´Â Âü°í·Î ÆÄÀ̽ã ÆÄÀÚ µµ ¸ð¸£´Â »ç¶÷ÀÌ¿©¼ ÆÄÀ̽㠹ݺ¹ Çϴ¹ýÀ» ¸ô¶ó À©µµ¿ì ÀÛ¾÷ ½ºÄÉÁÙ·¯¸¦ ÀÌ¿ëÇÏ¿© 1ºÐµ¿¾È üũ¸¦ ÇÏ¿© 1ºÐ¸¶´Ù ÅÚ·¹±×·¥À¸·Î ³¯¶ó¿Àµµ·Ï ÇÏ°Ù½À´Ï´Ù
ÀÏ´Ü ½ÃÀÛÅ°¸¦ ´©¸£½ÅÈÄ ÀÛ¾÷ ½ºÄÉÁÙ·¯¸¦ ÀÔ·ÂÇÕ´Ï´Ù ¿©±â¼ ¿À¸¥ÂÊ¿¡ ÀÛ¾÷ ¸¸µé±â¸¦ ´·¯ÁÝ´Ï´Ù
À̸§À» ÆÄÀ̽ãÀ̶ó°í ÁöÁ¤ÇØÁÖ°í º¸¾È¿É¼Ç¿¡¼ »ç¿ëÀÚÀÇ ·Î±×Àº ¿©ºÎ¿Í °ü°è¾øÀÌ ½ÇÇàÀ» üũÇØÁÖ°í ±×¹Ø¿¡ ¾ÏÈ£¸¦ ÀúÀåÇÏÁö ¾Ê½À´Ï´Ù ±îÁö Ŭ¸¯ÇØÁÝ´Ï´Ù
Æ®¸®°Å âÀ¸·Î °£ÈÄ »õ·Î¸¸µé±â¸¦ ´©¸£½ÅÈÄ ¾ó¸¶Å ¹Ýº¹ÇÏÁö ÁöÁ¤ÇÕ´Ï´Ù
Àú´Â ÀÛ¾÷ ¹Ýº¹ °£°ÝÀ» 1ºÐÀ» ¼³Á¤ ÇÏ¿´½À´Ï´Ù
±×ÈÄ µ¿ÀÛÀ¸·Î ³Ñ¾î°¡¼
ÇÁ·Î±×·¥ /½ºÅ©¸³Æ® ¿¡ ã¾Æº¸±â¸¦ ÇÑÈÄ
ÆÄÀ̽ãÀÌ ÀÖ´Â Æú´õ·Î À̵¿ÇØÁÝ´Ï´Ù
C:\Users\Administrator\AppData\Local\Programs\Python\Python38-32
Àú´Â °æ·Î ÀÌ·¸°Ô ³ª¿É´Ï´Ù óÀ½ ÇϽôºÐÀº ÆÄÀ̽㠼³Ä¡ À§Ä¡¸¦ ã¾ÆÁÝ´Ï´Ù
ã±âÈÄ pythonow¸¦ ¼±Åà ÇØÁÝ´Ï´Ù
pythnow¸¦ ¼±ÅÃÇÑ ÀÌÀ¯´Â ÀÌ ÆÄÀÏ ÀÌ¿ëÇϸé 1ºÐ¸¶´Ù ½ÇÇà½Ã À©µµ¿ìâ¿¡ »õâÀ¸·Î ¿¸®Áö °¡ ¾Ê¾Æ¼ ½ºÄÉÁÙ µ¿¾È ¹æÇØ ¹ÞÁö ¾Ê°í »ç¿ë ÇÒ¼ö ÀÖ½À´Ï´Ù (python.exe¸¦ »ç¿ëÇϼŵµ ¹«¹æÇϳª cmdâÀÌ ½ÇÇàµÇ¿© ½ºÄÉÁÙ »ç¿ë½Ã °è¼ÓÇÏ¿© cmdâÀÌ »óÁÖÇÕ´Ï´Ù ºñÃߵ帳´Ï´Ù)
±×·³ÈÄ Àμö Ãß°¡¿¡
1.py¸¦ ÀÔ·Â ÇØÁֽðí
½ÃÀÛÀ§Ä¡´Â ÆÄÀ̽ã ÆÄÀÏÀÖ´Â À§Ä¡·Î ÁöÁ¤ÇØÁÝ´Ï´Ù
Àú´Â
c:\2\
ÀÔ´Ï´Ù
±×·±ÈÄ ½ÇÇàÀ» ´©¸£½Ã¸é 1ºÐ¸¶´Ù ÅÚ·¹±×·¥À¸·Î ³¯¶ó ¿É´Ï´Ù
°¨»çÇÕ´Ï´Ù
|
¿Í ÃßõÇÕ´Ï´Ù ¾î·Á¿öº¸À̱äÇÏÁö¸¸ ´ë´ÜÇÕ´Ï´Ù ÅÚ·¹±×·¥ ¸¶½ºÅÍ ¤·¤§