Notice Bot์ ํ์ฑ๋ํ๊ต ๋ฐ ์ปดํจํฐ๊ณตํ๋ถ์ ๊ณต์ง์ฌํญ์ ์ค์๊ฐ์ผ๋ก ๋์ค์ฝ๋๋ก ์ ๋ฌํด์ฃผ๋ ๋ด์ ๋๋ค.
- ํ์ฑ๋ํ๊ต ๋ฐ ์ปดํจํฐ๊ณตํ๋ถ์ ๊ณต์ง์ฌํญ์ ํฌ๋กค๋งํ์ฌ ๋์ค์ฝ๋๋ก ์ ์ก
- ์๋ก์ด ๊ณต์ง๊ฐ ๋ฑ๋ก๋ ๋๋ง๋ค ๋์ค์ฝ๋๋ก ์๋ฆผ
- Firebase๋ฅผ ํ์ฉํ์ฌ ๊ณต์ง์ฌํญ์ ์ ๋ณด๋ฅผ ์ ์ฅ ๋ฐ ๊ด๋ฆฌ
- Python
- BeautifulSoup: ์น ์คํฌ๋ํ์ ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ
- Firebase: ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ์ฌ์ฉํ์ฌ ๊ณต์ง์ฌํญ ์ ๋ณด๋ฅผ ์ ์ฅ
- Discord Webhook: ๋์ค์ฝ๋๋ก ์๋ฆผ์ ๋ณด๋ด๊ธฐ ์ํ ๊ธฐ๋ฅ
notice.py: Notice ํด๋์ค ์ ์config.yaml: ์ค์ ํ์ผserver_multi_crawler3.py: ํฌ๋กค๋ง ๋ฐ ๋์ค์ฝ๋ ์๋ฆผ ์ฒ๋ฆฌ
config.yamlํ์ผ์ ์ด์ด์DISCORD_WEBHOOK_URL์ ๋์ค์ฝ๋ ์นํ URL์ ์ ๋ ฅํ์ธ์.notice_bot.jsonํ์ผ์ Firebase ํ๋ก์ ํธ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ ๋ ฅํ์ธ์.
- Python 3.x๋ฅผ ์ค์นํ์ธ์.
- ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํ๊ธฐ ์ํด ํฐ๋ฏธ๋์์ ๋ค์ ๋ช
๋ น์ด๋ฅผ ์คํํ์ธ์:
pip install requests beautifulsoup4 firebase-admin server_multi_crawler3.pyํ์ผ์ ์คํํ์ธ์:python server_multi_crawler3.py
work_notice.py๋ฅผ ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ์คํ/์ค์ง/์ํํ์ธ ํ๋ ค๋ฉด ๋ฃจํธ์ daemon.sh๋ฅผ ์ฌ์ฉํ์ธ์.
chmod +x daemon.sh- ์์:
./daemon.sh start - ์ค์ง:
./daemon.sh stop - ์ํ:
./daemon.sh status - ๋ก๊ทธ(app):
./daemon.sh log๋๋./daemon.sh log 500 - ๋ก๊ทธ(nohup):
./daemon.sh log nohup๋๋./daemon.sh log nohup 500
ํ๋ก๊ทธ๋จ์ด ์คํ๋๋ฉด ์ฃผ๊ธฐ์ ์ผ๋ก ํ์ฑ๋ํ๊ต ๋ฐ ์ปดํจํฐ๊ณตํ๋ถ์ ๊ณต์ง์ฌํญ์ ํฌ๋กค๋งํ์ฌ ๋์ค์ฝ๋๋ก ์๋ฆผ์ ๋ณด๋ด์ค๋๋ค.
- ์ด ํ๋ก์ ํธ๋ ๊ฐ์ธ์ ์ธ ์ฉ๋๋ก ์ ์๋์์ผ๋ฉฐ, ์์ ์ ์ธ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ๋ ์ ์์ต๋๋ค.
- ๊ณต์ง์ฌํญ ํฌ๋กค๋ง ์ ์๋ฒ์ ๋ถํ๋ฅผ ์ค ์ ์์ผ๋ฏ๋ก ์ ์ ํ ์ฃผ๊ธฐ๋ก ์คํํ์ธ์.
- ์ฝ๋ ๋ฐ ์ค์ ํ์ผ์๋ ๊ฐ์ธ ์ ๋ณด๊ฐ ํฌํจ๋์ด ์์ผ๋ฏ๋ก ๊ณต๊ฐ ์ ์ฅ์์ ์ฌ๋ฆฌ๊ธฐ ์ ์ ์ฃผ์ํ์ธ์.
์ด ํ๋ก์ ํธ๋ ๊ฐ์ธ ํ์ต ๋ฐ ํฅ๋ฏธ๋ก ์ ์๋์์ผ๋ฉฐ ์ด๋ ํ ์ํฉ์์๋ ์ ์ฉ๋์ด์๋ ์๋ฉ๋๋ค.