Skip to content

kmladotnet/food

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

15 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Food

  • ์ด ๋””๋ ‰ํ† ๋ฆฌ์— ๋‹ด๊ธด ํŒŒ์ผ๋“ค์€ kmlaonline.net์—์„œ ๊ธ‰์‹์„ ๋ณด์—ฌ์ฃผ๋Š” ์—ญํ• ์„ ๋‹ด๋‹นํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ธ‰์‹ ์ •๋ณด๊ฐ€ ์ตœ์ข…์ ์œผ๋กœ ๋‹ด๊ธฐ๋Š” ํŒŒ์ผ์€ ์ด ๋””๋ ‰ํ† ๋ฆฌ ์•ˆ์— ์žˆ๋Š” data.json์ด๋ฉฐ, ์ด์™ธ ํŒŒ์ผ๋“ค์€ ์ด json ํŒŒ์ผ์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

์ž‘๋™ ๋ฐฉ์‹

1. ๊ธ‰์‹ ์ •๋ณด๋Š” ์™ธ๋ถ€ java api๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๊ฐ€์ ธ์˜ค๋ฉฐ, ์ด ๋ฐ์ดํ„ฐ๋ฅผ ์ด 2๋ฒˆ ๊ฐ€๊ณตํ•ด json ํŒŒ์ผ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. 2. ์ฒซ ๋ฒˆ์งธ ๊ฐ€๊ณต์€ Food.class ํŒŒ์ผ์—์„œ ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค. API๋ฅผ ์ด์šฉํ•ด ์˜ฌํ•ด์˜ ๊ธ‰์‹ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๊ณ , ์ •ํ•ด์ง„ ํ˜•์‹์œผ๋กœ ์ถœ๋ ฅ์„ ํ•ฉ๋‹ˆ๋‹ค (Food.java ํŒŒ์ผ ์ฐธ์กฐ). 3. ์ด ์ถœ๋ ฅ๊ฐ’์„ makeJSON.py์—์„œ ์ž…๋ ฅ๊ฐ’์œผ๋กœ ๋ฐ›์•„ ํ•œ ๋ฒˆ ๋” ํŒŒ์‹ฑํ•ฉ๋‹ˆ๋‹ค. ๊ธ‰์‹ ๋’ค์— ์žˆ๋Š” ์ˆซ์ž์™€ &(ampersand) ๊ธฐํ˜ธ๋ฅผ ์—†์•ค ๋’ค, json ํŒŒ์ผ์„ ์ƒ์„ฑํ•ด๋ƒ…๋‹ˆ๋‹ค.

๋ชจ๋“  ๊ธ‰์‹ ์ •๋ณด api ๋ฐ ๋ฐ์ดํ„ฐ ๊ฐ€๊ณต์€ GetFood.py ๋‚ด์—์„œ ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค.

๊ธ‰์‹ ์ •๋ณด๋Š” ๋‚˜์ด์Šค api๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋‚˜์ด์Šค ๋งํฌ api ์ธ์ฆํ‚ค๊ฐ€ ๋งŒ๋ฃŒ๋  ์ผ์€ ์—†์ง€๋งŒ, ๋งŒ์•ฝ ๋ณ€๊ฒฝํ•ด์•ผ ํ•œ๋‹ค๋ฉด ์œ„ ์‚ฌ์ดํŠธ์—์„œ ์ƒˆ๋กœ ๋ฐœ๊ธ‰๋ฐ›์•„ config.json ํŒŒ์ผ์— "FOOD_KEY" : "[์ธ์ฆํ‚ค]" ํ˜•์‹์œผ๋กœ ์ €์žฅํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

  • ์œ„์˜ ์ž‘์—…์€ /scripts/food/update.sh ๋ผ๋Š” shell script๋ฅผ ์ด์šฉํ•ด ์ž๋™ํ™” ํ•ฉ๋‹ˆ๋‹ค.
cd /scripts/food
python3 ./GetFood.py

Cron (์ฃผ๊ธฐ์  ์‹คํ–‰)

  • cron ์ด๋ผ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ด์šฉํ•ด ๋งค์ผ ์ž์ •์— ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  • ์ •๊ธฐ์ ์œผ๋กœ ์‹คํ–‰๋˜์–ด ์—…๋ฐ์ดํŠธ๊ฐ€ ๋˜๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ˆ˜๋™์ ์œผ๋กœ ์—…๋ฐ์ดํŠธ๋ฅผ ํ•  ํ•„์š”๋Š” ์—†๋‹ค.
  • ํ˜น์‹œ ๊ธ‰์‹์ด ๋ณด์ด์ง€ ์•Š๋Š” ๋‚ ์ด ์žˆ๋‹ค๋ฉด update.sh๋ฅผ ์ง์ ‘ ์‹คํ–‰ํ•ด ์—…๋ฐ์ดํŠธ๋ฅผ ํ•ด๋ณด์‹œ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

Notes

  • ์ด ๋””๋ ‰ํ„ฐ๋ฆฌ ์† ํŒŒ์ผ๋“ค์€ ๋ชจ๋‘ ํ•œ ๊ณณ์— ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ๊ฐ ๋‹ค๋ฅธ ๊ณณ์— ๋‘๊ธฐ๋ฅผ ํฌ๋งํ•˜์‹ ๋‹ค๋ฉด ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ž˜ ์ˆ™์ง€ํ•˜์‹  ์ดํ›„ ๊ฒฝ๋กœ ๊ฐ’์„ ์ ์ ˆํžˆ ๋ณ€ํ˜•ํ•ด ์ •์ƒ์ ์ธ ์ž‘๋™์— ์ง€์žฅ์ด ์—†๋„๋ก ํ•ด์ฃผ์„ธ์š”.

  • data.json์˜ ๊ฒฝ๋กœ๊ฐ€ ๋ฐ”๋€๋‹ค๋ฉด! lib.php์—์„œ ๋ฐ”๋€ ๊ฒฝ๋กœ๋กœ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • cron์—์„œ๋Š” update.sh๋ฅผ ์ •๊ธฐ์ ์œผ๋กœ ์‹คํ–‰ํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ฒฝ๋กœ ์ •๋ณด๊ฐ€ ๋ช…ํ™•ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ update.sh์˜ ๊ฒฝ๋กœ๊ฐ€ ๋ฐ”๋€๋‹ค๋ฉด! cron์„ ์‹คํ–‰ํ•ด ๊ทธ ๊ฒฝ๋กœ ์ •๋ณด๋ฅผ ๋ฐ”๋€ ๊ฒƒ์œผ๋กœ ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

About

Food Automation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •