์๋ณต ๋ง์ถ๋ฌ ๊ฐ๋ ๊น์ ๋ค๋ฅธ ๋ถ์ฒ์ค๋ ๋์ ํธ ์นดํ ํํฐ์ธ๋ฆฌ ๋ผํผ๋ค~! ์งํ์ฃผ์ฐจ์ฅ์ด ์์ด์ ์ฃผ์ฐจ๋ ํธํ๋น 2์ธต์ผ๋ก ์์ค์ปฌ๋ ์ดํฐ ํ๊ณ ์ฌ๋ผ๊ฐ๋ฉด ์ค๋ฅธ์ชฝ์ ๋ฐ์์๋ก ๋ ์ธ์คํ ๊ฐฌ์ฑ์ด์์ค! + ๋ถ๋๋ถ๋ ๋๋ฆฌ์ ์ธํ
๋ฆฌ์ด ํํฐ์ธ๋ฆฌ ๋ผํผ๋ค๊ฐ ์๋ค ์ฃผ์ : ๊ฒฝ๊ธฐ๋ ๋ถ์ฒ์ ์ค2๋ ์ ํฅ๋ก 150-1 ์๋ธ๋์คํ
์ดํธ ์๊ฐ 8๋ 2์ธต 217,218ํธ ๋ฅด๋ฑ
์ฟธํฌ..๋ง์์ด๋ณด์ด์ง๋ง ํจ์.. ๋๋.. ๋์ด์ ๋์ ํธ 4๊ฐ^^....23500์ ๋์๋ค ใ
์ ์๋ถ์ด ํฌ์ฅ์ด์์ฃ ? ๋จน๊ตฌ ๊ฐ๊ฑด๋ฐ์ฅ? 0ใ
0?ใ
.. ์ ์ ๋ง ๋ฌด์กฐ๊ฑด ๋ฌด์กฐ๊ฑด ์๊ทธํ๋ฅดํธ ๋์ธ์ ๋ ์ง์ง ์ฌ๊ธฐ ๊ฐ๋๋ฐ ์๊ทธํ๋ฅดํธ ์๋จน์๋ค? ์ ์ง ์ง ์ ๋ผ ์๋ผ!!!!! ์ด ์ฉ์ฉ๋ฐ์ฌ๋ก์ ํ์ฝฉ์์, ๋ง์นด์ค์์ ๋๋ฃจ๋๋ฃจ~ ์๊ทธํ๋ฅดํธ ๋จน์ด๋ดค์ง๋ง ์ฌ๊ธฐ๊ฐ ํน๊ฐ์ ๋๋ด ํต ์กด ๋ง ํฑ์ด๋ค ํ 200๊ฐ๋ ..
๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ
์ํ ๋จธ๋ ์ํ ์๋ฒ๋๋์ด ํด๋จ์ด๋ผ ํด๋จ์ผ๋ก ์์~ ์ฐ๋ฆฌ ํ ๋จธ๋ ํ ์๋ฒ๋์ ํญ์ ์ฐ๋ฆฌ๋ณด๊ณ ๋๋ผ์ด๋ธ ๋ค๋
์ค๋ผ๊ณ ํ์๋๋ฐ, ์ ๋ฒ์๋ ๋
๋ ๋ฐ์๋ฅผ ๊ฐ๊ณ , ์ด๋ฒ์๋ ๊ฐฌ์ฑ ์นดํ ์ข ๊ฐ๋ณด๊ณ ์ถ์ด์ ์ถ์์ฐํด์ ์ฐพ์๊ฐ ์นดํ ์ ํธ~! ์์ธ๋งํผ์ ํน๋ณํ (์ธ์คํ)๊ฐฌ์ฑ์ ์์ง๋ง, ๋๋ ๊น๋ํ๊ณ ์น์ ํ๊ณ ๊ด์ถํ ์นดํ๋ผ ๋ฐฉ๋ฌธ ์์ถ์ฒ์ด๋น ์ฃผ์ฐจ๋ ์ ์ฉ ์ฃผ์ฐจ์ฅ์ด ์๋ค ์ฃผ์: ์ ๋ผ๋จ๋ ํด๋จ๊ตฐ ์ค์1๋ก 171 ์ฐ๋ฆฌ ๋ทํ
์ด๋ธ์ ์๊ฐ๊ฐ ์์๋๋ฐ ์ ์น์ฆ์ผ์ดํฌ๋ฅผ ์ฐธ ์ ๋จน๋๋ฌ๋ค. ์ ๊ธฐ๋ค์ด๋ ๊ฐ์ด ๊ฐ๋ ์ข์ ๊ฒ ๊ฐ๋น ์ปคํผ๋ฅผ ๋ค ์ฝ๋๋ธ๋ฃจ๋ก ๋ฐ๊ฟ ์ ์๋๊ฒ ์ข์ ๊ฒ ๊ฐ๋ค. ์ ์ฃผ๋ณ์ ํ๋๋ก ๋งํธ ๊ธํ์ ๊ณผ์์ ๊ณ ๊ตฌ๋ง๋นต(๊ฐ๋น 2000์) 10๊ฐ ์ฌ์ ํ์ฌ์๋ ๋๋ ธ๋น ์ฌ์ค ๋ชฝ์๋ฒ ์ด์ปค๋ฆฌ ์์ ์๋ฆฌ์ธ๋ฐ ๋ชฝ์๋ฒ ์ด์ปค๋ฆฌ์ธ์ค ๊ฐ๋๋ฐ ๊ธํ์ ๊ณผ๋ก ๋ฐ๊ผ๊ณ , ๋ชฝ์๋ ๋คํธ์ผ๋ก..
ยทDBMS
What is the XPath? X Path : ๋ฐ์
๋ด๋ X + Path ํฉ์ณ์ง ํฉ์ฑ์ด ๊ฐ๋ค. X: XML ์ธ๋ฐ, XML์ ๋ฌธ์ ์ข
๋ฅ ์ค ํ๋๋ผ๊ณ ๋ณด๋ฉด ๋๋ค. ๋ฐ๋ผ์, XPath๋ XML ๋ฌธ์์ ์์ฑ์ ๊ฒฝ๋ก์์ผ๋ก ์ ๊ทผํ๋ ์ธ์ด์ด๋ค. * beautifulsoup์์๋ ์ง์ํ์ง ์๊ณ ์๋ค. ๊ทธ๋ผ ์ด๊ฑธ ๋์ฒด ์? ๋ฐ๋ก, scrapy ๋๋ฌธ์ ์์๋ฌ์ผํ๋ค. ๊ทธ๋ฆฌ๊ณ ๊ฐฑ์ฅํ ๊ฐ๋จํด๋ฒ์ ๊ตณ๊ตณ =_=b 1. ๊ธฐ์ด ๋ฌธ๋ฒ / : ์ ๋๊ฒฝ๋ก // : ๋ฌธ์ ๋ด ๊ฒ์ //@href : href ์์ฑ์ด ์๋ ๋ชจ๋ ํ๊ทธ ์ ํ //a[@href='abcf'] : a ํ๊ทธ์ href ์์ฑ์ abcf ์์ฑ๊ฐ์ ๊ฐ์ง ๋ชจ๋ ํ๊ทธ ์ ํ (//a)[3] : ์ ์ฒด ๋ฌธ์์ 3๋ฒ์งธ ๋งํฌ ์ ํ (//table)[last()] :์ ์ฒด ํ
์ด๋ธ ๋ฌธ์์ ๋ง..
ยทDBMS
1. ๋์ ? ์ ์ ? ์ฝ๊ฒ ์ฝ๊ฒ ์ค๋ช
ํ์๋ฉด ์ ์ ํ์ด์ง = html ๋์ ํ์ด์ง = ajax ๋! ํ๊ณ ์ดํด๊ฐ ๋๋ค๋ฉด ์ข๊ฒ ์ง๋ง, ์ดํด๊ฐ ๋์ง ์์ ์ฌ๋๋ค์ ์ํด ๋ง๋ถ์ด์๋ฉด, html๋ก๋ง ๊ตฌ์ฑ๋ ํ๋ฉด์ ์๋ก๊ณ ์นจํ๋ฉด ํ๋ฉด์ด ๊น๋นก! ๊ฑฐ๋ฆฐ๋ค. ๊ทผ๋ฐ html ์์ ajax๋ก ๊ตฌ์ฑ๋ ๋์ ํ์ด์ง(์๋ฅผ ๋ค์ด ๋๊ธ์ฐฝ)๋ ์๋ก๊ณ ์นจ์ ํ๋คํด์ ๊ทธ ํด๋น ํ์ด์ง๊ฐ ๊น๋นก! ๊ฑฐ๋ฆฌ์ง ์๋๋ค. ์ด ๊น๋นก! ๊ฑฐ๋ฆด๋ ๋จผ๊ฐ ์์ฒญ์ด ์๋ค ๊ฐ๋ค ํ๋๋ฐ, ์ด ๊ณผ์ ์ด ์~๋นํ ์ค๋ ๊ฑธ๋ฆฌ๊ณ ํ์ด ๋ง๋ค. ๊ทธ๋์ ๋๋ถ๋ถ์ ํ์ด์ง๋ค์ ajax๋ก ๊ตฌ์ฑ๋ ๋ถ๋ถ์ ํฌํจํ๊ณ ์๊ณ , ์ฐ๋ฆฌ๊ฐ ํฌ๋กค๋ง ํ ๋ถ๋ถ์ด ์ฌ๊ธฐ์ ํด๋น๋ ์๋ ์๋ค. ๊ทผ๋ฐ, ๊ธฐ์กด ํฌ์คํ
ํ ๋ด์ฉ๋๋ก ๊ธฐ์ด selenium ํ์ฉ๋ฒ๋ง์ ์ฌ์ฉํด ํฌ๋กค๋ง์ ์งํํ๋ฉด, ์ด ๋์ ํ์ด์ง๋ ๊ธ์ด์ฌ ์ ์๋ค. ์๋..
ยทDBMS
What is the Headless Chrome?? - ๋จธ๋ฆฌ ์๋ ํฌ๋กฌ์ด ๋์ฒด ๋ฌด์? ใ
ใ
๊ทธ๋ฅ ์ฐฝ์ด ์๋ ํฌ๋กค๋ง์ด๋ค. ๊ตณ์ด ํ๋ฉด์ ๋์ฐ์ง ์๊ณ ๋ฐ์ดํฐ๋ฅผ ๊ธ์ด์์ ์ ์ฅ๋ง ํ๋ฉด ๋๊ธฐ ๋๋ฌธ์ ์์ ์๋ PhantomJS๋ผ๋ ๊ฒ์ ์ผ์ง๋ง ์์ฆ์๋ ๊ฐํธํ๊ฒ selenium webdriver์ ์ต์
๊ฐ์ ์ค์ ๊ฐํธํ ๊ตฌํํ ์ ์๋ค. chrome_options = webdriver.ChromeOptions() #์ฐฝ ๋์ฐ์ง ์๋ ์ต์
chrome_options.add_argument('headless') chrome_options.add_argument('window-size=1920x1080') #gpu ์ฌ์ฉํ์ง ์๋ ์ต์
chrome_options.add_argument('disable-gpu') # ์๋ฒ์ ์์ฒญ..
ยทDBMS
์ฐ์ selenium์ด ๋ญํ๋ ๊ฑด์ง ์ผ๋จ ์ ํ์๊ฐ ์๋ค. selenium์ ์๋ํํ๋ ํ๋ ์ ์์ด๋ผ๊ณ ์ดํดํ๋ฉด ์ฝ๋ค. ๋ง ๊ทธ๋๋ก ์๋ํ๋ง์ ๋ด๋นํ๋ ๊ฒ์ด๋ค. ์๋์ ์ผ๋ก html์ ํ๋ํ๋ ๋ด๊ฐ๋ฉด์ ํ๊ทธ์ ์์ฑ๊ฐ๋ค์ ์ฐพ์์ ์ด๊ฑธ ๊ฐ์ ธ์ค๋ ๋จธ ๊ทธ๋ฐ ๊ท์ฐฎ์ ์ผ๋ค์ ๋์ ํด์ฃผ๋ ์ผ๋ค์ ๋ด๋นํ๋ค. ์ ๊ตณ์ด? ์ด๋ ๊ฒ? ๋ผ๊ณ ํ๋ค๋ฉด, ์ฌ์ค ํฌ๋กค๋ง์ด ๋ฑํ ํฉ๋ฒ์ ์ธ ๋๋์ ์๋ ๊ฒ์ด๋ค. ๋ด๊ฐ ์ด๋ค ํ์ด์ง์ ์ฃผ์ธ์ธ๋ฐ ๋๊ฐ ๋ด ํ์ด์ง์ ๋ฐ์ดํฐ๋ฅผ ๋ง ๊ธ์ด๊ฐ๋ฉด ๊ธฐ๋ถ์ด ์ฉ ์ข์ง๋ ์์ ๊ฒ์ด๋ค. ๊ทธ๋์ ๊ฑฐ์ ๋๋ถ๋ถ์ ์ฌ์ดํธ๋ค์ ์ด๋ฐ ๊ฑธ ๋ง์ ๋์๋๋ฐ, ์
๋ ๋์์ผ๋ก ํ์ฌ๊ธ ๋ง์น ์ฌ์ฉ์๊ฐ ๋ณด๋ ๊ฒ์ฒ๋ผ ๋ฐ์ดํฐ๋ฅผ ๊ธ์ด์ค๊ฒ ํ๋ ๊ฒ์ด๋ค. ๋ฌผ๋ก ๊ฐ์ ์์ดํผ๋ก ๊ณ์ ์ ๊ทผํ๋ฉด ์ด๊ฒ๋ ๋งํ๊ธด ํ๋ค ใ
ใ
ใ
ใ
"๋น์ ์ ๋ก๋ด์
๋๊น?" ์๋ฐ๊ฑฐ๋ ๊ทธ์ค์ ..
ยทDBMS
๋ฐ์ดํฐ ๋ถ์์ ์์ฅฌ ์ด์! ๋ฐ์ดํฐ ์์ง! ํฌ๋กค๋ง์ ์์ํด๋ด์ผ๊ฒ ๋ค VScode๋ก ์ฝ๋ ์
๋ ฅํด๊ฐ๋ฉด์ ๋์ฐ๋ ๋ฐฉ๋ฒ๋ ์๊ฒ ์ง๋ง, ์ฌ์ค jupyter notebook์ด ๊ฐํธํ๋ฏ๋ก ์ฌ์ฉํ๋ค. ์ฃผํผํฐ ๋
ธํธ๋ถ ํ๋กฌํํธ์ ์ฌ์ฉํ ๊ฐ์ํ๊ฒฝ์ activate ํด์ฃผ๊ณ 1. Selenium ์ค์น 2. OS ํ๊ฒฝ, chrome ๋ฒ์ ์ ๋ง๋ webdriver ๋ค์ด๋ก๋ https://sites.google.com/a/chromium.org/chromedriver/ ChromeDriver - WebDriver for Chrome WebDriver for Chrome sites.google.com ํฌ๋กฌ ๋ฒ์ ํ์ธ์ ํฌ๋กฌ ํ๋ฉด ์ค๋ฅธ์ชฝ ์๋จ ๋๋ณด๊ธฐ(์ ์ธ๊ฐ) > ๋์๋ง > ํฌ๋กฌ ์ ๋ณด ์์ ํ์ธ๊ฐ๋ฅ ํ์ธ ํ os ์ ๋ง๊ฒ ๋ค์ด ๋ฐ๋๋ฐ, ๋ด ..
selenium.common.exceptions.webdriverexception: message: unknown error: cannot find chrome binary ์ฅ์ฅ ํ 5์๊ฐ์ ํค๋ฉ ๊ฒ ๊ฐ๋ค..ใ
.. ์๋ฌ ์์ธ์ chrome ๊ณผ chrome driver๊ฐ ๊ฐ์ ๊ฒฝ๋ก์ ์์ด์ผํ๋๋ฐ wsl์ ์ฌ์ฉํ๊ณ , ๋ ๊ฑฐ์ crawler๋ฅผ ๊ตฌ๋ํด๋ณด๋ ค๋ ์์ค์ ( ๋ ๊ฑฐ์ ํ๊ฒฝ์ ํธ๋ฃจ linux๋ค ) ์๊ธด ๋ฌธ์ .. ๊ทธ๋ฅด๋๊น ํฌ๋กฌ์ ์๋์ฐ ํ๊ฒฝ์์ ๊น๊ณ , ์ฐพ๋๊ฑด linux ๋ฒ์ ์์ ์ฐพ์ผ๋ ค๋๊น ์ด๊ฒ ๊ฒฝ๋ก๊ฐ ์ ์ฝํ๋ ๊ฒ ๊ฐ๋ค ์ค๊ฐ์ ๊ฑ ์..์๋์ฐ ๋ฒ๋ฆด๊น?ใ
์ถ์๋ค ใ
ใ
...; ์ํผ๊ฐ์~~ 1. chrome driver path์๋ค๊ฐ chrome ์ ๋ ์ค์นํด์ค๋ค wget https://dl.google.com/l..
๋จ๊ตฌ๋ก ๊ทผ์ฒ์ ์ ์ ๋ญ๊ฐ์ ์ด ์๊ฒจ์ ํฌ์ฅ์ ํด๋ดค๋ค. ํ์ฌ ์ด๋ฒคํธ (~9์ 22์ผ) ์ค์ด๋ผ ํ๋ผ์ด๋๋ ์๋
์ค ์ฌ์ด์ฆ๋ฅผ 1000์์ฉ ํ ์ธ + ์น์ฆ๋ณผ 2๊ฐ ์ฆ์ ํ๊ณ ์๋ค. ์ด๋ฒคํธ ๊ธฐ๊ฐ์๋ ์ ์ฌ์ด์ฆ๋ ์ฃผ๋ฌธ์ด ์๋๋ค๊ณ ํ๋ ์ฐธ๊ณ ํ๋๋ก ํ์. ์ค ์ฌ์ด์ฆ ๋งค์ด๋ง, ์น์ฆ์์ค ์ถ๊ฐ ํ๋๋ฐ, ์์ ๊ฝค ํ์๊ณ , ์น์ฆ์์ค๊ฐ ํนํ ๋ค๋ฅธ ์ง ๊ตญ๋ฌผ ์ฃผ๋ ์ฉ๊ธฐ์ ๋ค์ด์๋ค. ๋ง์ด ํ์์ธ๊ฑฐ ๊ฐ๋ค. ๊ทผ๋ฐ ๋ ์ด๋ฐ ์น์ฆ๋ณผ์ ๋ณ๋ฃจ. ๋๋ฌด ๋ก๊ฐ๋ค. ์ด์ดํ ๋ญ๋ค๋ฆฌ์ด๋ก ๋์ด์๊ณ , ํฌ๊ธฐ๊ฐ ์์๋ณด์ด์ง๋ง ๊ทธ๋์ ๋ ๋ง์๋ ๋น๋ฒ์ด ์๋๊น์ถ๋ค. ์ฃผ๋ฌธ ๋ฐ๋ ์ฆ์ ์กฐ๋ฆฌ๊ฐ ์ด๋ฃจ์ด์ ธ์ ๊ทธ๋ฐ๊ฐ ํ์ฐธ ์ง๋๋ ๋๋ฌด ๋ง์๋ค. ๋ถ๋ ์ด ๋ง์ ์์ง ์๊ธฐ๋ฅผ.. ๋ง์๋ ๋ญ๊ฐ์ ์ง์ด ์๊ฒจ์ ๋๋ฌด ์ข๋ค.
๋๋์ด ๋๋ ๋ฐฑ์ 1์ฐจ ์ ์ข
์ ์๋ฃํ๋ค. 1์ฐจ๋ ์ฌ๋๋ค์ด ํ๋ง ๋ป๊ทผํ๋ค๊ณ ํ๋๋ฐ ๋ป๊ทผํ ์ค๋ ๋ชจ๋ฅผ.. ๊ทผ๋ฐ ๋ฐฉ๊ตฌ๊ฐ ์์ฒญ ๋์จ๋ค ใทใท.. ๋ฐฑ์ ์ ์ข
์ ํ๊ณ ๋๋ฉด ์ ์ข
์ฆ๋ช
์๋ฅผ ์ฃผ๋๋ฐ ์ฐ๋ฆฌ ํ์ฌ ๊ฐ์ ๊ฒฝ์ฐ์ ์ด๊ฑธ ์ ์ถํด์ผํ๋ค. ์ ๋ถ24๋ ์๋ฐฉ์ ์ข
๋์ฐ๋ฏธ ๋๋ฆฌ์ง์์๋ ๋ฐ๊ธ ๊ฐ๋ฅํ๋ค๊ณ ํ๋, ์์ด๋ฒ๋ ธ๋ค ํด๋ ๋นํฉํ์ง ๋ง์. ์ฌํผ, ๋ฐฑ์ ์ ์๋ฃํ๊ณ ์ดํ '์ฟ ๋ธ'๋ฅผ ๋ค์ด ๋ฐ์ผ๋ฉด ์ ๋ ๊ฒ ์ด๋ฏธ์ง์ฒ๋ผ ์๋ฐฉ์ ์ข
์ฆ๋ช
์๋ฅผ ๋ฐ์ ์ ์๋ค. ๋ด ๋๋
๋ฐฐ๋ค์ ๋ค ์ ๊ฑฐ ์ธ์คํ ์คํ ๋ฆฌ์ ์ธ์ฆํ๋๋ฐ ๋๋ ๋๋ ํด๋ฒ ใ
ใ
ใ
ใ
๋๋ ์๋์ด๋ ๊ฐ์ด ๋ง์๋๋ฐ ๋๋ค ๋ฐฉ๊ตฌ๊ฐ ์ฌํ๊ฒ ์ฆ์๋ค;; ์ฐพ์๋ณด๋ ํ์ด์ ๋ถ์์ฉ ์ค์ ํ๋์ผ ์ ์๋ค๊ณ ..; ใ
ใ
..๋ถ์์ฉ์น๊ณค ๊ด์ฐฎ์์ ๊ทธ๋๋ง ๋คํ์ฐ ๊ทธ๊ฑฐ ๋ง๊ณค ํ๋ ์์ํ๋น