Google์ ์์ฑํ AI ๋ชจ๋ธ์ธ Gemini API์ Selenium์ ํ์ฉํ์ฌ, ํน์ ์ฃผ์ ๋ง ์ ๋ ฅํ๋ฉด ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ์ ๋ง์ถคํ ํฌ์คํ ์ ์๋์ผ๋ก ์์ฑํด ์ฃผ๋ ํ์ด์ฌ ์๋ํ ํ๋ก๊ทธ๋จ์ ๋๋ค.
-
๐ง AI ๊ธฐ๋ฐ ๋ง์ถคํ ์๊ณ ์์ฑ (Gemini API)
- ๋จ์ํ ํ ์คํธ ์์ฑ์ด ์๋ **ํ๋กฌํํธ ์์ง๋์ด๋ง(Prompt Engineering)**์ ์ ์ฉํ์ต๋๋ค.
- AI์ ์๋ต์ ํ์ฑํ์ฌ '์ ๋ชฉ'๊ณผ '๋ณธ๋ฌธ' ๋ฐ์ดํฐ๋ฅผ ์ ํํ๊ฒ ๋ถ๋ฆฌํฉ๋๋ค.
-
๐ [Update] 100% ๋ฌด์ธ ์๋ํ ๋ฐ ๊ฐ๋ ฅํ ๋ณด์ ๋ก๊ทธ์ธ (Cookie Injection & Fernet)
-
๊ธฐ์กด์ ๋ฒ๊ฑฐ๋ก์ด '์ผํ์ฉ ๋ฒํธ ์๋ ์ ๋ ฅ' ๋ฐฉ์์ ํ๊ธฐํ๊ณ , ์ฟ ํค ์ธ์ ์ (Cookie Injection) ๊ธฐ๋ฒ์ ๋์ ํ์ฌ ํด๋ฆญ ํ ๋ฒ์ผ๋ก ์คํ๋๋ ์์ ํ ๋ฌด์ธ ์๋ํ๋ฅผ ๊ตฌํํ์ต๋๋ค.
-
๋ณด์ ๊ฐํ: ์ธ์ ํ์ด์ฌํน(Session Hijacking)์ ๋ฐฉ์งํ๊ธฐ ์ํด
cryptography๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋์ ํ์ต๋๋ค. ๋ค์ด๋ฒ ๋ก๊ทธ์ธ ์ฟ ํค๋ฅผFernet๋์นญํค ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ํธํํ์ฌ ๋ก์ปฌ์ ์ ์ฅ(.enc)ํ๊ณ , ์คํ ์ ํ๊ฒฝ๋ณ์(.env)์ ๋น๋ฐ ํค๋ก ๋ณตํธํํ์ฌ ์์ ํ๊ฒ ์ฃผ์ ํฉ๋๋ค.
-
-
๐ ์ค๋งํธ์๋ํฐ DOM ๊ตฌ์กฐ ์ฐํ ๋ฐ ํ ์คํธ ์ฝ์ (ActionChains & Pyperclip)
-
๋ค์ด๋ฒ ์ค๋งํธ์๋ํฐ ONE์ ๋ณต์กํ ๋ ์ด์ด ๊ตฌ์กฐ์ ์๋ฐ์คํฌ๋ฆฝํธ ์ด๋ฒคํธ ๊ฐ๋ก์ฑ๊ธฐ(Event Trapping)๋ฅผ ์ฐํํ๊ธฐ ์ํ ํน์ ๋ก์ง์ด ์ ์ฉ๋์์ต๋๋ค.
-
send_keys()์ ์๋ ์ด์์ ํ ์คํธ ๊ผฌ์ ํ์์ ๋ฐฉ์งํ๊ธฐ ์ํด ํด๋ฆฝ๋ณด๋ ๋๊ธฐํ(pyperclip) ๋ฐฉ์์ ์ฌ์ฉํฉ๋๋ค. -
HTML ํ๊ทธ๋ฅผ ์ง์ ์ฐพ๋ ๋์ , ๊ธฐ์ค์ ์์ ๋ฌผ๋ฆฌ์ ์ธ ํฝ์ ๋งํผ ์ด๋ํ๋ ์คํ์ ์ขํ ํด๋ฆญ(
move_to_element_with_offset) ๊ธฐ๋ฒ์ ๋์ ํ์ฌ ์ด๋ค ์ํฉ์์๋ ์ ํํ๊ฒ ๋ณธ๋ฌธ ์์ญ์ ํ๊ฒํ ํฉ๋๋ค.
-
- Language: Python 3.x
- Web Automation: Selenium WebDriver, ActionChains
- AI API: Google Generative AI (gemini-2.5-flash)
- Security & Utils: *
cryptography(Fernet ๋์นญํค ์ํธํ)pickle(์ฟ ํค ๋ฐ์ดํฐ ์ง๋ ฌํ)pyperclip(ํด๋ฆฝ๋ณด๋ ์ ์ด)python-dotenv(ํ๊ฒฝ๋ณ์ ๋ฐ ์ํธํ ํค ๊ด๋ฆฌ)
-
Issue 1: ๋ค์ด๋ฒ ์๋ํฐ ๋ณธ๋ฌธ ์์ญ ํด๋ฆญ ์
ElementNotInteractableException๋ฐ์ ๋ฐ ์ปค์ ์ด๋ ๋ถ๊ฐ ํ์.- Solution: ์๋ํฐ์ ๋ณต์กํ ๋ํผ(Wrapper) ํ๊ทธ๋ฅผ ๋ฌด์ํ๊ณ , ์ ๋ชฉ ์นธ์ ๊ธฐ์ค์ผ๋ก ๋ง์ฐ์ค๋ฅผ ํ๊ฐ์์ผ ๋น ์ฌ๋ฐฑ์ ๊ฐ์ ํด๋ฆญํ๋ Offset ํด๋ฆญ ๊ธฐ๋ฒ์ผ๋ก ์ฐํ ํด๊ฒฐ.
-
Issue 2: ํฌ๋กฌ ์ ์ ํ๋กํ(User Data) ์ง์ ์ฐ๋ ์, ๋์ ๋ ์บ์์ ํ์ฅ ํ๋ก๊ทธ๋จ ๋ก๋ฉ์ผ๋ก ์ธํ ํ๋ก์ธ์ค ๋ฌดํ ๋๊ธฐ(Deadlock) ๋ฐ ์น์์ผ ํต์ ๋จ์ ํ์.
- Solution: ๋ฌด๊ฑฐ์ด ํ๋กํ ํด๋ ์ ์ฒด๋ฅผ ์ฐ๋ํ๋ ๋์ , ์ธ์ฆ์ ํ์ํ ํต์ฌ '์ธ์ ์ฟ ํค'๋ง ์ถ์ถํ์ฌ ๊ฐ๋ฒผ์ด ๊นกํต(Vanilla) ํฌ๋กฌ ์ธ์ ์ ์ฃผ์ (Injection)ํ๋ ๋ฐฉ์์ผ๋ก ์ํคํ ์ฒ๋ฅผ ๋ณ๊ฒฝํ์ฌ ์๋์ ์์ ์ฑ ํ๋ณด.