ํ์๋ ์ต๊ทผ์ AWS Certified Cloud Practitioner ์๊ฒฉ์ฆ์ ์ทจ๋ํ๋ค. Data Engineer๊ฐ ๋๊ธฐ ์ํด์๋ ๊ทธ๋ค์ด ์ฌ์ฉํ๋ ๊ธฐ๋ณธ์ ์ธ ์ธ์ด๋ ์์์ผํ๋ค๊ณ ์๊ฐํ๊ธฐ ๋๋ฌธ์ด๋ค.

ํฉ๊ฒฉ์ ๊ธฐ์จ๋ ์ ์, ์๊ฒฉ์ฆ๋ ์ทจ๋ํ์ผ๋ ๋ณธ๊ฒฉ์ ์ผ๋ก AWS๋ฅผ ์ค์ง์ ์ผ๋ก ์ฌ์ฉํด๋ณด๊ธฐ๋ก ๋ค์งํ๋ค!
1. ํ๋ก์ ํธ ์ฃผ์ ์ ํ๊ธฐ
ํ์๋ ๋ฐฉํ์ถ ์ทจ๋ฏธ๋ก ์ฆ๊ธด๋ค. ์ทจ์ง ํ ์๊ฒฝํ์ฌ ์ ๋ช ํ๋ค๋ ๋ฐฉํ์ถ์ ๋๋ถ๋ถ ํด๋ดค๋ค. ํ์ง๋ง ์์ฝ์กฐ์ฐจํ๊ธฐ ํ๋ ์ ๋ช ํ ๋ฐฉํ์ถ ํ ๋ง๊ฐ ์๋๋ฐ ๊ทธ๊ฒ์ ๋ฐ๋ก ํ๋ ๋ฆฌ์ฝ๋์ "Tempo Rubato"์ด๋ค.

๋ฐ๋ผ์ ๋ ๋ฌ ์ฌ์ด์ ์ทจ์๋๋ ์๊ฐ์ด ์๋์ง ํ์ธํด์ ์๋ค๋ฉด ๊ทธ ์ ๋ณด๋ฅผ ๋ฉ์ผ์ ์ ์กํ๋ ํ๋ก์ ํธ๋ฅผ ๊ธฐํํ๋ค.
ํ๋ก์ ํธ ์ฃผ์ ๋ฅผ ์ ์ ํ๋ ๋ฐ ์์ด์ ์๋์ ๊ฐ์ ์ ์ ๊ณ ๋ คํ๋ค.
1. 24์๊ฐ ๋์๊ฐ์ผํ๋ ์๋น์ค๊ฐ ํ์ํ ์ผ
2. ์น์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋ ์์ ์ด ํ์ํ ์ผ
3. (์ค์!) ์ค์ง์ ์ผ๋ก ํ์ํ๊ณ , ๊ด์ฌ์ด ๊ฐ๋ ์ผ! ๐ฅ
2. AWS EC2 ๊ฐ๋ฐ ํ๊ฒฝ ๊ตฌ์ถ
EC2๋ Linux ๊ฐ๋ฐ ํ๊ฒฝ์ ์ ํ ๊ฒฝํ์ด ์์ด์ ๊ฝค ํด๋งธ์ง๋ง, ์๋์ ๊ฐ์ด ๊ฐ๋ฐ ํ๊ฒฝ์ ๊ตฌ์ถ ์์ฑํ๋ค.
- AWS Management Console์์ EC2๋ฅผ ์์ฑ (Ubuntu)
- PuTTY๋ฅผ ์ฌ์ฉํด EC2์ ์ฐ๊ฒฐ ํ ๋ช ๋ น์ด ์ ๋ ฅ
- Filezilla๋ฅผ ์ฌ์ฉํด EC2์ ์ฐ๊ฒฐ ํ Windows์์ ์์ฑํ Python Script ์ ์ก
์ดํ EC2 ํ๊ฒฝ์ ํ์ํ ํจํค์ง์ ํ์ผ๋ค์ ์ค์นํ๋ค. (PIP, Selenium, Chrome, Chrome Driver ์ค์น ๋ฑ)
https://deep-flame.tistory.com/3
EC2์ Selenium ํ๊ฒฝ ๋ง๋ค๊ธฐ (feat. Chrome, Chrome Driver)
0. PIP ์ค์น ์ต์ด EC2 ์ฌ์ฉ์๋ค์ PIP๋ฅผ PIP๋ฅผ ๋จผ์ ์ค์นํด์ผ ํฉ๋๋ค. https://deep-flame.tistory.com/entry/%EC%B5%9C%EC%B4%88-EC2%EC%97%90-PIP-%EC%84%A4%EC%B9%98 ์ต์ด EC2์ PIP ์ค์น EC2 ์ต์ด ๊ฐ์ค ํ PI..
deep-flame.tistory.com

3. ๊ตฌํ with Python
๊ตฌํ ๋ด์ฉ์ ์๋์ ๊ฐ๋ค.
1. Selenium์ ์ด์ฉํด ๋ ์ง ๊ฐ์ฒด๋ฅผ ํด๋ฆญํ๊ณ , ์๊ฐ๋ณ๋ก ์ด์ฉ๊ฐ๋ฅํ์ง ํ์ธํ๋ค. (ํ์ฌ์+๋ค์๋ฌ) - GetInfo ํจ์
2. ๊ฐ๋ฅํ ์๊ฐ์ด ๋์จ๋ค๋ฉด ๋ฉ์ผ ์ ์กํ๋ค. - SendMail ํจ์
1. Selenium์ ํตํ ์น ์ปจํธ๋กค
โ ๋ ์ง ๊ฐ์ฒด๋ฅผ ๊ฐ์ ธ์์ ์ํ๋ ๋ ์ง๋ฅผ ์ฐพ์ ํด๋ฆญํ๋ค.
โก ์๊ฐ ๊ฐ์ฒด๋ฅผ ๊ฐ์ ธ์์ ๊ฐ๋ฅํ ์๊ฐ์ด ์๋์ง ํ์ธํ๋ค.

์ด๋ฅผ ์๋์ ๊ฐ์ด ์ฝ๋๋ก ๊ตฌํํ๋ค! ๐ค
+์ถ๊ฐ)
์ฝ๋ ๊ตฌํ ๊ณผ์ ์์ ๋๋ฅผ ๊ดด๋กญํ๋ ์๋ฌ๊ฐ ์์๋ค.๐ค
"Message: stale element reference: element is not attached to the page document"
๊ตฌ๊ธ๋ง์ ํด๋ณด๋ time.sleep์ผ๋ก ํ
์ ๋๊ณ ํ๋ฉด ํด๊ฒฐ๋๋ค๊ณ ํ๋ค. ํ์ง๋ง ํ์์ ๊ฒฝ์ฐ ํด๊ฒฐ์ด ๋์ง ์์๋ค.
์ฝ ํ์๊ฐ ๊ฐ๋ ์์ธ์ ํ์
ํด๋ณธ ๊ฒฐ๊ณผ ๋ฌ๋ ฅ์ ํด๋ฆญํ๋ฉด ๋ฌ๋ ฅ ๊ฐ์ฒด๊ฐ ๋ณ๊ฒฝ๋๋ค๋ ๊ฒ์ ํ์ธํ๋ค. (๊ฐ์ฒด๊ฐ ๋ณ๊ฒฝ๋์ด์ ๊ธฐ์กด์ ์ฐพ์์ ๋ณ์๋ก ์ง์ ํ ๊ฐ์ฒด๋ฅผ ์ฐพ์ ์ ์๋ค๋ ๊ฒ ๊ฐ๋ค.) ๊ทธ๋์ ํด๋ฆญ ์ด๋ฒคํธ ํ, ๋ค์ ๋ฌ๋ ฅ ๊ฐ์ฒด๋ฅผ ๋ค์ ๊ฐ์ ธ์ค๋ ์ฝ๋๋ก ๋ณ๊ฒฝํ๋ค.
2. ๊ฒฐ๊ณผ ์ด๋ฉ์ผ ๋ณด๋ด๊ธฐ
ํด๋น ๊ตฌํ ๊ณผ์ ์์๋ ์๋ URL์ ์ฐธ๊ณ ํ๋ค.
ํ์ด์ฌ์ผ๋ก ์ด๋ฉ์ผ ๋ณด๋ด๊ธฐ(SMTP)
์๋ ํ์ธ์ ์ด์ฝ์ ๋๋ค. ์ด๋ฒ์๋ ํ์ด์ฌ์ ํ์ฉํ์ฌ ์ง๋ฉ์ผ(Gmail)๋ก ๋ฉ์ผ ๋ณด๋ด๊ธฐ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค. ํ์ด์ฌ์์ ๋ฉ์ผ์ ๋ณด๋ด๊ธฐ ์ํด์๋ ์ธ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ๋ณ๋๋ก ํ์ํ์ง ์์ผ๋ฉฐ, 'SMT
yeolco.tistory.com
ํ ์คํธ ๊ฒฐ๊ณผ ์๋์ ๊ฐ์ด ๋ฉ์ผ์ด ์ ์ ์ก๋๋ ๊ฒ์ ํ์ธํ๋ค. ๐

4. EC2์ ํ์ผ ์ ์ก ํ ์คํ
Filezilla๋ฅผ ํตํด์ 3๋ฒ์์ ๊ฐ๋ฐํ ์คํฌ๋ฆฝํธ๋ฅผ ์ฎ๊ฒผ๋ค.

ํด๋น ์คํฌ๋ฆฝํธ๋ฅผ 24์๊ฐ ์คํํ๊ณ , PuTTY๋ฅผ ์ข ๋ฃํด๋ ์คํ๋๋๋ก ํ๊ธฐ ์ํด์ nohup์ ์ฌ์ฉํ์ฌ ๋ฐฑ๊ทธ๋ผ์ด๋์์ ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ๋ค.
https://deep-flame.tistory.com/4
ํฐ๋ฏธ๋ ์ข ๋ฃ ํ์๋ ํ๋ก์ธ์ค ์คํ (feat. Selenium ์๋์ ์ ์์ฌํญ)
ํ๋ฃจ์ข ์ผ ์คํํด์ผํ ์คํฌ๋ฆฝํธ๊ฐ ์์ด ํ๋ก์ธ์ค๋ฅผ ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ๋๋ ค์ผํ๋ค. ์๋์ ๊ฐ์ด nohup์ ์ฌ์ฉํ๋ฉด ๊ฐ๋ฅํ๋ค. nohup python3 MyScript.py & nohup python3 MyScript.py > /dev/null & # ํ์ค์ถ๋ ฅ์ ์ค์ ..
deep-flame.tistory.com

๐ค๋ง๋ฌด๋ฆฌ
AWS ์๊ฒฉ์ฆ์ ์ทจ๋ํ์ง๋ง, ์ค์ ์ฌ์ฉ ๊ฒฝํ์ด ์์ด์ ์์ฌ์์ด ์ปธ๋ค.
ํ์ง๋ง ์ด๋ฒ ๊ธฐํ์ ๋ง์ฐํ๊ฒ ์๊ฐํ์๋ AWS ์ด์ฉ๊ณผ Linux ํ๊ฒฝ์์ ๊ฐ๋ฐ์ ํ ์ ์์ด ์ฆ๊ฑฐ์ด ์๊ฐ์ด์๋ค.
๊ทธ๋ฌ๋ AWS๋ฅผ ํตํด์ ์ ๋ง ํ๊ณ ์ถ์ ๊ฒ์ ๋ฐ์ดํฐ ํ๋ซํผ ๊ตฌ์ถ์ด๋ค. ์ด๋ฒ ๋ฌ ์์ ์๋ ์ฑ ์ผ๋ก ์ฐจ๊ทผ์ฐจ๊ทผ ๊ณต๋ถ๋ฅผ ์์ํ ์์ ์ด๋ค! ํ์ดํ ! ๐คฉ
์ํฐํ๋ผ์ด์ฆ ๋ฐ์ดํฐ ํ๋ซํผ ๊ตฌ์ถ
์ํฐํ๋ผ์ด์ฆ ๋ฐ์ดํฐ ํ๋ซํผ ๊ตฌ์ถ - YES24
์์ฒด ์์คํ ๋ถํฐ ํด๋ผ์ฐ๋๊น์ง ์ํฐํ๋ผ์ด์ฆ ํ๋ก๊ณผ ๋น ๋ฐ์ดํฐ ํ๋ซํผ ์ด์, ๊ตฌ์ถ, ์ค๊ณ์ ๋ชจ๋ ๊ฒ๋น ๋ฐ์ดํฐ ๊ธฐ์ ์ ๋ํ ์ ๋ณด๋ ๋์ณ๋์ง๋ง ์ด ๋ชจ๋ ๊ธฐ์ ์ ๋งค๋๋ฝ๊ฒ ์ฐ๊ฒฐํด์ ์๋ฒฝํ ์ํฐํ๋ผ
www.yes24.com
+ ์ถ๊ฐ) ํ๋ก๊ทธ๋จ์ ์คํํ์ง 3์ผ์ฐจ์ ๋ฌธ์๋ฅผ ๋ฐ์๋ค...! ๐ฅ ์์์ผ ์ค์ 10์๋ผ์... ์์ฝ์ ํ์ง ์์์ง๋ง, ์ด์จ๋ ๋ชฉํ๋ฅผ ๋ฌ์ฑํ๋ค!

'Personal > Toy Project' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| ์ฒซ ๋ฒ์งธ ํ ์ด ํ๋ก์ ํธ ํ๊ณ (๋ฐฉํ์ถ ์ทจ์ ์๋ฆฌ ์ฐพ๊ธฐ) (feat. AWS EC2, ์นํฌ๋กค๋ง, node.js) (0) | 2022.03.14 |
|---|