์ด ํŽ˜์ด์ง€์— ๋Œ€ํ•˜์—ฌ

๐Ÿ“˜ ์ด ํŽ˜์ด์ง€๋Š” Python ํฌ๋กค๋ง์„ ์œ„ํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. 8๊ฐ• ๋ณธ๋ฌธ์˜ ์‹ค์Šต์€ Next.js(cheerio) ๊ธฐ์ค€์œผ๋กœ ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค. Python์€ ๊ฐœ๋… ์ดํ•ด์™€ ๋กœ์ปฌ ์‹คํ—˜์—๋Š” ํ›Œ๋ฅญํ•˜์ง€๋งŒ, Vercel ๋ฐฐํฌ ํ™˜๊ฒฝ์—์„œ๋Š” Node.js๋งŒ ์‹คํ–‰๋˜๋ฏ€๋กœ ์ง์ ‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋‹ค๋งŒ ์•„๋ž˜ ๋‘ ๊ฒฝ์šฐ์—๋Š” Python์ด ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค:

  1. ๊ฐœ๋… ํ•™์Šต โ€” requests/BeautifulSoup์€ ํฌ๋กค๋ง์˜ ์›๋ฆฌ๋ฅผ ์ดํ•ดํ•˜๋Š” ๋ฐ ์ง๊ด€์ ์ž…๋‹ˆ๋‹ค.
  2. ๋Œ€๋Ÿ‰ ์ˆ˜์ง‘ ๋ฐฐ์น˜ โ€” 9๊ฐ•์—์„œ ๋‹ค๋ฃจ๋Š” GitHub Actions ์ž๋™ํ™”์—์„œ Python ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์“ธ ๋•Œ.

์™œ Python ํฌ๋กค๋ง์€ Next.js ๋ฐฐํฌ์™€ ์ถฉ๋Œํ•˜๋‚˜?

ํ•ต์‹ฌ ๊ตฌ์กฐ ์ฐจ์ด

๊ตฌ๋ถ„ Python ํฌ๋กค๋ง Next.js (Vercel)
์‹คํ–‰ ํ™˜๊ฒฝ Python ๋Ÿฐํƒ€์ž„ ํ•„์š” Node.js ๋Ÿฐํƒ€์ž„
๋ฐฐํฌ ๋ฐฉ์‹ ์„œ๋ฒ„์— Python ์„ค์น˜ ํ•„์š” Vercel ์„œ๋ฒ„๋ฆฌ์Šค ํ•จ์ˆ˜ (Node.js๋งŒ)
์‚ฌ์šฉ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ requests, BeautifulSoup fetch, cheerio
์‹คํ–‰ ์œ„์น˜ ๋ณ„๋„ ์„œ๋ฒ„ ๋˜๋Š” ๋กœ์ปฌ Vercel Edge/Serverless Function

๐Ÿ’ก Vercel์— Next.js๋ฅผ ๋ฐฐํฌํ•˜๋ฉด, ์„œ๋ฒ„ ์ฝ”๋“œ๋Š” Node.js ํ™˜๊ฒฝ์˜ ์„œ๋ฒ„๋ฆฌ์Šค ํ•จ์ˆ˜๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

Python์„ ์‹คํ–‰ํ•  ์ˆ˜ ์—†๊ณ , requests๋‚˜ BeautifulSoup์„ ์„ค์น˜ํ•  ์ˆ˜๋„ ์—†์Šต๋‹ˆ๋‹ค.

ํ˜„์‹ค์ ์ธ ์„ ํƒ์ง€ 3๊ฐ€์ง€

โ‘  Next.js API Route์—์„œ fetch + cheerio๋กœ ๋Œ€์ฒด โ† ์ด๋ฒˆ 8๊ฐ• ์‹ค์Šต ๋ฐฉ์‹

โ‘ก Python ํฌ๋กค๋Ÿฌ๋ฅผ ๋ณ„๋„ ์„œ๋ฒ„๋กœ ๋ถ„๋ฆฌ

โ‘ข GitHub Actions / Cron Job์œผ๋กœ ์‚ฌ์ „ ์ˆ˜์ง‘