๋ชฉ๋กServer (50)

๐ŸŒฑ → ๐ŸŒณ

๋ชจ๊ฐ์ฝ” ํŒŒ์ด์ฌ ํฌ๋กค๋ง 10์ผ์ฐจ

#10. ๋™์  ํฌ๋กค๋ง โ‘  ๐Ÿ“Œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ 'selenium' selenium : ๋™์ ํฌ๋กค๋ง์„ ์œ„ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, ์›น ๋“œ๋ผ์ด๋ฒ„(webdriver)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž๋™ํ™”๋ฅผ ์‹คํ˜„ํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ๋žŒ์ด ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜๋Š” ๋ฐฉ์‹ ๊ทธ๋Œ€๋กœ ํฌ๋กค๋งํ•˜๋Š” ๊ธฐ๊ณ„๋ฅผ ๋งŒ๋“ค์–ด ๋ƒ„ ์ •์ ํฌ๋กค๋ง์— ๋น„ํ•ด ์†๋„๋Š” ๋Š๋ฆฌ์ง€๋งŒ, ๋งˆ์šฐ์Šค ํด๋ฆญ, ํ‚ค๋ณด๋“œ ์ž…๋ ฅ, ๋’ค๋กœ๊ฐ€๊ทธ ๋“ฑ์˜ ๋™์ž‘์ด ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํฌ๋กค๋ง์— ํ•œ๊ณ„๋Š” ๊ฑฐ์˜ ์—†๋‹ค. โœ… Selenium ์„ค์น˜ ํ„ฐ๋ฏธ๋„ ํ˜น์€ ๋ช…๋ นํ”„๋กฌํ”„ํŠธ๋ฅผ ์—ด์–ด ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ์„ค์น˜ pip install selenium ๐Ÿ“Œwebdriver selenium์˜ ์›น ๋“œ๋ผ์ด๋ฒ„๋Š” ์›น ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ๋“ค์˜ ํ…Œ์ŠคํŠธ๋ฅผ ๋‹จ์ˆœํ™” ๋ฐ ๊ฐ€ํ˜นํ™”ํ•ด์ฃผ๋Š” ํ‹€ ์›น ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์ž๋™์œผ๋กœ ์กฐ์ž‘ํ•˜๊ธฐ ์œ„ํ•ด, ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์™€ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ๋งค๊ฐœ์ฒด๋ผ๊ณ  ์ƒ๊ฐํ•ด๋„ ๋ฌด๋ฐฉ ..

Server/Python 2022. 4. 8. 15:54
๋ชจ๊ฐ์ฝ” ํŒŒ์ด์ฌ ํฌ๋กค๋ง 8์ผ์ฐจ

์ •์  ํฌ๋กค๋ง 3 ๐Ÿ“Œ ํฌ๋กค๋ง ๋Œ€์ƒ ์‚ฌ์ดํŠธ ์‚ดํŽด๋ณด๊ธฐ ์ด์ œ๊นŒ์ง€ requests, BeautifulSoup ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•œ ํŽ˜์ด์ง€ ๋‚ด์— ์กด์žฌํ•˜๋˜ ๋กœ๋˜ ๋‹น์ฒจ ๋ฒˆํ˜ธ๋ฅผ ํฌ๋กค๋ง ํ•˜์˜€๋‹ค. ํ•˜์ง€๋งŒ, ์ •์  ํฌ๋กค๋ง์—์„œ๋„ ํŽ˜์ด์ง€ ์ด๋™๊ณผ ์œ ์‚ฌํ•œ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•ด ์ค„ ์ˆ˜ ์žˆ๋‹ค! URL ์ฃผ์†Œ๊ฐ’์˜ ํŒจํ„ด์„ ํŒŒ์•…ํ†ตํ•ด์„œ โœ… ์‚ฌ์ดํŠธ ์‚ดํŽด๋ณด๊ธฐ โ€‹ 1๏ธโƒฃ ์‚ฌ์ดํŠธ ์ ‘์† ์šฐ์„  ์•„๋ž˜ ๋งํฌ๋กœ ์ ‘์†ํ•œ๋‹ค. https://www.gmarket.co.kr/ 2๏ธโƒฃ ์ƒํ’ˆ ๊ฒ€์ƒ‰ ๋‹ค์Œ์œผ๋กœ, ๊ฒ€์ƒ‰์ฐฝ์— ๋งˆ์Šคํฌ๋ฅผ ์ž…๋ ฅ 3๏ธโƒฃ ๊ฒ€์ƒ‰์–ด์˜ URL ํŒจํ„ด ํ™•์ธ ๊ฒ€์ƒ‰๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋ฉด์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•„์˜ค๊ธฐ ์œ„ํ•ด, ๊ฒ€์ƒ‰ํ–ˆ๋˜ ํ™”๋ฉด์˜ URL์„ ํ™•์ธํ•ด ๋ณด์•˜๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ๊ฒ€์ƒ‰ํ–ˆ๋˜ ๋งˆ์Šคํฌ๊ฐ€ URL ์ฃผ์†Œ์— ํฌํ•จ๋˜์–ด ์žˆ๋Š”๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. ๐Ÿ‘‰ url ์ฃผ์†Œ ์ฃผ์†Œ ๊ฐ’์—์„œ keyword= ์ด๋ผ๋Š” ๋ฌธ..

Server/Python 2022. 3. 25. 17:03
๋ชจ๊ฐ์ฝ” ํŒŒ์ด์ฌ ํฌ๋กค๋ง 7์ผ์ฐจ

๐Ÿ“Œ BeautifulSoup์˜ ํ•„์š”์„ฑ 6์ผ์ฐจ ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•ด๋ณด๋ฉด requests๋กœ๋งŒ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ–ˆ์„ ๋•Œ html์˜ ํƒœ๊ทธ์™€ ์„ ํƒ์ž๋ฅผ ์‚ฌ์šฉํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•œ ๊ฒƒ์ด ์•„๋‹Œ html ์ฝ”๋“œ๋ฅผ ๋‹จ์ˆœํ•œ ๋ฌธ์ž์—ด ํƒ€์ž…์œผ๋กœ ์ฒ˜๋ฆฌํ•ด html์„ ํ…์ŠคํŠธ๋กœ ์ถœ๋ ฅํ•œ ๊ฒƒ์ด๋‹ค. ๋‹ค์‹œ ๋งํ•ด, html์—์„œ class๊ฐ€ nums์ธ divํƒœ๊ทธ๋ฅผ ๋ฐ›์•„์™€๋ผ!์˜ ์ฝ”๋“œ๊ฐ€ ์•„๋‹Œ, ๋ฌธ์ž์—ด์—์„œ ์ด ํฌํ•จ๋œ ๋ถ€๋ถ„์„ ์ถœ๋ ฅํ•ด๋ผ! ๋ผ๊ณ  ์ง  ์ฝ”๋“œ์ด๋‹ค. BeautifulSoup ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋ฌธ์ž์—ด์„ ์‹ค์ œ html ์ฝ”๋“œ๋กœ ๋ณ€ํ™˜ํ•ด์ฃผ์–ด requests์˜ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•  ์ˆ˜ ์žˆ๋‹ค. ๐Ÿ“Œ BeautifulSoup ์‚ฌ์šฉํ•˜๊ธฐ raw.text๋ฅผ ์‹ค์ œ html ์ฝ”๋“œ๋กœ ๋ณ€ํ™˜ํ•ด์ฃผ๊ธฐ bs4.BeautifulSoup(" HTML ๋ฐ์ดํ„ฐ ", "๋ฐ์ดํ„ฐ ํƒ€์ž…" ) html ๋ฐ์ดํ„ฐ๋กœ raw.text..

Server/Python 2022. 3. 25. 16:50
๋ชจ๊ฐ์ฝ” ํŒŒ์ด์ฌ ํฌ๋กค๋ง 6์ผ์ฐจ

๊ธ€๋กœ๋งŒ ๋ดค์„ ๋• ๋˜๊ฒŒ ์‰ฌ์›Œ๋ณด์˜€๋Š”๋ฐ, ๋ง‰์ƒ ์‹ค์Šต ๋”ฐ๋ผํ•  ๋•Œ ์˜ค๋ฅ˜๊ฐ€ ์ž๊พธ๋‚˜์„œ ๋‹ต๋‹ตํ–ˆ๋˜,, ใ…œใ…œ ์•„์ง๋„ ํ•ด๊ฒฐ์ฑ…์„ ์ฐพ์ง€ ๋ชปํ–ˆ๋‹ค. ์ฐ์ฐํ•ด ๊ทธ๋Ÿผ ์‹œ์ž‘ํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ๋‹ค. #6์ผ์ฐจ. ์ •์  ํฌ๋กค๋งโ‘  ํฌ๋กค๋ง์„ ๋ณธ๊ฒฉ์ ์œผ๋กœ ์‹œ์ž‘ํ•˜๊ธฐ ์ „, ๋‘ ๊ฐ€์ง€๋ฅผ ๋จผ์ € ์ƒ๊ฐํ•ด์•ผํ•œ๋‹ค. โœ”๏ธ ํฌ๋กค๋ง์„ ํ•  ์›น ์‚ฌ์ดํŠธ ์„ ์ • โœ”๏ธ ๋ฐ์ดํ„ฐ ์„ ์ • ๐Ÿ“Œ ํฌ๋กค๋ง ๋Œ€์ƒ ์‚ฌ์ดํŠธ ์‚ดํŽด๋ณด๊ธฐ ํฌ๋กค๋ง์„ ํ•  ์›น ์‚ฌ์ดํŠธ์™€ ๋ฐ์ดํ„ฐ๋ฅผ ์„ ์ •ํ•œ ํ›„์—๋Š” ๊ผญ ํ•ด๋‹น ์‚ฌ์ดํŠธ๋ฅผ ์‚ดํŽด๋ณด์•„์•ผ ํ•œ๋‹ค. ์ •์ /๋™์  ํฌ๋กค๋ง ์ค‘ ์–ด๋–ค ๊ฒƒ์ด ์ ํ•ฉํ•œ์ง€ ์ •ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ ๋กœ๋˜ ๋‹น์ฒจ ๋ฒˆํ˜ธ ์‚ฌ์ดํŠธ๋ฅผ ํฌ๋กค๋งํ•˜๊ธฐ๋กœ ํ•˜์˜€๋‹ค. https://dhlottery.co.kr/gameResult.do?method=byWin ๋กœ๋˜6/45 - ํšŒ์ฐจ๋ณ„ ๋‹น์ฒจ๋ฒˆํ˜ธ 1007ํšŒ ๋‹น์ฒจ๊ฒฐ๊ณผ (2022๋…„ 03์›” 19์ผ ์ถ”์ฒจ) ๋‹น์ฒจ๋ฒˆํ˜ธ 8 11..

Server/Python 2022. 3. 21. 13:56
๋ชจ๊ฐ์ฝ” ํŒŒ์ด์ฌ ํฌ๋กค๋ง 5์ผ์ฐจ

๐Ÿ“Œ ์„ ํƒ์ž ์›น ํŽ˜์ด์ง€๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๋ฐ์ดํ„ฐ ๋ชจ๋‘๊ฐ€ ํƒœ๊ทธ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ธฐ๋–„๋ฌธ์—, ๊ทธ ์ค‘ ์„œ๋กœ ๋™์ผํ•œ ํƒœ๊ทธ๊ฐ€ ์กด์žฌํ•  ์ˆ˜ ์žˆ์Œ ์ด๋ ‡๊ฒŒ ๋™์ผํ•œ ํƒœ๊ทธ๋ฅผ ๋ถ„๊ฐ„ํ•ด ์ฃผ๊ธฐ ์œ„ํ•ด, HTML์—์„œ๋Š” ์„ ํƒ์ž๋ผ๋Š”๊ฑธ ์‚ฌ์šฉํ•ด ๊ฐ ํƒœ๊ทธ๋ฅผ ๊ตฌ๋ณ„ํ•  ์ˆ˜ ์žˆ๋Š” ์ผ์ข…์— ์ฃผ์†Œ๋ฅผ ๋ถ€์—ฌํ•จ ๐Ÿ“Œ ์„ ํƒ์ž์˜ ํ•„์š”์„ฑ ์•„๋ž˜์™€ ๊ฐ™์€ HTML ๋ฌธ์„œ๊ฐ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด๋ฉด, ํŒŒ์ด์ฌ ํฌ๋กค๋ง C์–ธ์–ด ๊ฒŒ์ž„ ํ•ด๋‹น ์›น ํŽ˜์ด์ง€์—์„œ ์–ธ์–ด (language)์™€ ๊ด€๋ จ๋œ ๋ฐ์ดํ„ฐ๋งŒ ํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ด ๋ณด์ž. ๋งŒ์•ฝ ํƒœ๊ทธ๋กœ๋งŒ ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฅผ ์„ ํƒํ•œ๋‹ค๋ฉด, ํƒœ๊ทธ ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ํƒœ๊ทธ ์— ์–ธ์–ด ์ •๋ณด ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ํ”„๋กœ์ ํŠธ ์ •๋ณด (ํฌ๋กค๋ง, ๊ฒŒ์ž„๋งŒ๋“ค๊ธฐ)๋„ ํฌํ•จ๋œ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ, ํ”„๋กœ์ ํŠธ ์ •๋ณด๋ฅผ ์ œ์™ธํ•˜๊ณ  ์–ธ์–ด ์ •๋ณด๋งŒ์„ ํŠน์ •ํ•˜๊ธฐ ์œ„ํ•ด ์„ ํƒ์ž๋ฅผ ์‚ฌ์šฉ ํŒŒ์ด์ฌ ํฌ๋กค๋ง c์–ธ์–ด ๊ฒŒ์ž„ ์ด๋ ‡๊ฒŒ class =..

Server/Python 2022. 3. 19. 14:56
๋ชจ๊ฐ์ฝ” ํŒŒ์ด์ฌ ํฌ๋กค๋ง 4์ผ์ฐจ

์ด๊ฑฐ ์‹œ๊ฐ„๋„ ์–ผ๋งˆ ์•ˆ๊ฑธ๋ฆฌ๋„ ๋˜๊ฒŒ ์žฌ๋ฐŒ๋‹ค ์˜ค๋Š˜ 4์ผ์ฐจ ํ•˜๋Š”๋ฐ ๋„ˆ๋ฌด ์žฌ๋ฐŒ๊ณ , ํฅ๋ฏธ๋กœ์›Œ์„œ ๊ทธ๋ƒฅ ํ•œ ๋ฒˆ์— ๋‹ค ํ•ด ๋ฒ„๋ฆด๊นŒ ํ•˜๋‹ค๊ฐ€ ์ฐธ์•˜์„ ์ •๋„,, ์˜ค๋Š˜์€ HTML ๊ตฌ์กฐ์— ๋Œ€ํ•ด ๋ฐฐ์› ๋‹ค. ๐Ÿ“Œ ์›นํŽ˜์ด์ง€์™€ HTML HTML(HyperText Markup Language)์€ '๋งˆํฌ๋กœ ๋‘˜๋Ÿฌ์‹ธ์ธ ์–ธ์–ด'๋ผ๋Š” ๋œป์œผ๋กœ, ์›น ํŽ˜์ด์ง€์˜ ๊ตฌ์กฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์–ธ์–ด ๋‹ค์‹œ ๋งํ•ด, ์›น ํŽ˜์ด์ง€๋ฅผ ๋งŒ๋“ค ๋•Œ ์“ฐ๋Š” ์–ธ์–ด๋ผ๊ณ  ์ดํ•ดํ•ด๋„ ๋ฌด๋ฐฉ F12 ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ด ๊ฐœ๋ฐœ์ž ๋„๊ตฌ ์ฐฝ์„ ๋ณด๋ฉด (ํฌ๋กฌ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์•„๋Š” ์‚ฌ๋žŒ์€ ๊ตฌ๊ธ€์— [๋ธŒ๋ผ์šฐ์ € ์ด๋ฆ„] ํŽ˜์ด์ง€ ์†Œ์Šค๋ผ๊ณ  ๊ฒ€์ƒ‰) ๋œจ๋Š” ์ฝ”๋“œ๋“ค์ด HTML์ด๋‹ค. ๐Ÿ“Œ HTML ํƒœ๊ทธ ํ™•์ธ ์ฝ”๋ฎค๋‹ˆํ‹ฐ ์นดํŽ˜์˜ '์ถœ์„์ฒด๊ทธ' ํŽ˜์ด์ง€๋ฅผ ํ™œ์šฉํ•˜์—ฌ HTML ํƒœ๊ทธ๋ฅผ ์ง์ ‘ ํ™•์ธํ•˜์—ฌ ๋ณด์•˜๋Š”๋ฐ ์œ„ ์‚ฌ์ง„์˜ select ๋ฒ„ํŠผ์„ ์‚ฌ์šฉํ•˜์—ฌ ํŽ˜์ด์ง€ ๊ตฌ์„ฑ ์š”์†Œ์˜ h..

Server/Python 2022. 3. 18. 15:53
๋ชจ๊ฐ์ฝ” ํŒŒ์ด์ฌ ํฌ๋กค๋ง 3์ผ์ฐจ

3์ผ์ฐจ๋ถ€ํ„ฐ ๊ฐ‘์ž๊ธฐ ์–ด๋ ค์›Œ์ง„ ๋Š๋‚Œ์ด๋‹ค ๊ทผ๋ฐ ์–ด๋ ค์›Œ์ง„๋งŒํผ ์žฌ๋ฐŒ๋‹ค ! ์–ด์ œ ์ƒํ™œ์ฝ”๋”ฉ์—์„œ ๋ฐฐ์› ๋˜ HTML๊ณผ๋„ ์—ฐ๊ฒฐ์ด ๋˜๋Š” ๋‚ด์šฉ์ด๋ผ ๋” ํฅ๋ฏธ์žˆ๊ฒŒ ๊ณต๋ถ€ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ์ •์ ํฌ๋กค๋ง ์ •์ ํฌ๋กค๋ง ํ•  ๋•Œ ํŒŒ์ด์ฌ์˜ ๋‘ ๊ฐ€์ง€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ: requests, beautifulsoup4(beautifulsoup) requests ๊ธฐ์กด์— ์–ด๋ ค์šด HTTP ์š”์ฒญ์„ ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง„ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‰ฝ๊ฒŒ ๋งํ•ด, ํŒŒ์ด์ฌ๊ณผ ์›น์„ ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ beautifulsoup4 requests๋กœ ๋ฐ›์•„์˜จ HTML ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‰ฝ๊ฒŒ ๋งํ•ด, ์›น์— ์žˆ๋Š” ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ์ค‘ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋งŒ ๋ฝ‘์•„๋‚ด๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ

Server/Python 2022. 3. 17. 14:44