Steemit์ ๊ฐ์ ํ๊ณ ์ธ๊ธฐ ์๋ ๊ธ๋ค์ ๋ณด๋ ์ฝ์ธ ๋ฐ ์ฝ์ธ ํฌ์์ ๊ด๋ จ๋ ๊ธ๋ค์ด ๋ง์ ๋ณด์ ๋๋ค. Steemit์ด๋ผ๋ ํ๋ซํผ ์์ฒด๊ฐ ์๋ํ๋ ๋ฐฉ๋ฒ์ ๋ํ ํฅ๋ฏธ๊ฐ ์๊ธด ๊ฒ๋ ์์ด์, ๋ง์ ๋ถ๋ค์ด ๊ด์ฌ์ ์์ผ์ค ๊ฒ ๊ฐ์ง๋ง, ๊ฐ์ธ์ ์ผ๋ก๋ ๋ฐฐ๋น์ฃผ ์์ฃผ์ ์ฃผ์ ํฌ์๋ฅผ ํ๊ณ ์์ด์ ๊ด๋ จ๋ ๋ด์ฉ๋ค์ ์ฌ๋ ค๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
๊ฒฐ์ฐ๋ฐฐ๋น ๊ณต์์ ์์ฆ์ด ๋ค๊ฐ์ค๊ณ ์๋ค. ์ฃผ์ด์ ๋น ๋ฅด๊ฒ ์ด์๋ ์ผ๋ถ ํ์ฌ๋ค์ ๊ฒฝ์ฐ, ๊ฒฐ์ฐ ๋ฐฐ๋น ๊ณต์๊ฐ DART์ ์ฌ๋ผ์ค๊ณ ์๋ค.
๊ฐ์ธ์ ์ผ๋ก ๊ด์ฌ ์๋ ์ข ๋ชฉ๋ค์ ๋ฐฐ๋น ๊ณต์๋ง ํ์ธํ๋ค๋ฉด ๋ฌธ์ ๊ฐ ์๊ฒ ์ง๋ง, 2000๊ฐ๊ฐ ๋๋ ์ข ๋ชฉ ์์ 10์์ด๋ผ๋ ์ค์ ๋ก ๋ฐฐ๋น์ ์ฃผ๋ ์ข ๋ชฉ์ด 1000์ฌ ๊ฐ ์ ๋ ๋๋ ์ํฉ์์ ๋ชจ๋ ์ข ๋ชฉ์ ๋ฐฐ๋น ๊ณต์๋ฅผ ํ์ธํ๋ ค๋ฉด, ์๋์ ๊ฐ์ ๋ฐฉ๋ฒ์ด ์์ ๊ฒ์ด๋ค.
์์ ๊ฐ์ ๋ฐฉ๋ฒ๋ค์ ๊ณ ๋ฏผํ๋ค๊ฐ, ์๊ฐํด๋ณด๋ DART์์ ๋ฐฐ๋น๊ธ ๊ด๋ จ ๊ณต์์ ๋ํ ์ ๋ณด๋ฅผ ์๋์ผ๋ก ์ ๋ฆฌํด์ ์์ ํํ๋ก ๋ง๋ค์ด์ฃผ๋ ๋ฐฉ์์ด ํธํ ๊ฒ ๊ฐ์์ ๊ฐ๋จํ ์ฝ๋๋ฅผ ์์ฑํด ๋ณด์๋ค. ์๊ฐ ์ธ๋ก DART์์ ์ ๊ณตํ๋ OPEN API๊ฐ ์๋ ๋ฐฉ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์ค๋ ๋ด์ฉ์ด ์น์์ ๋ณ๋ก ์์ด์(๊ฒ์์ ์ ๋ชปํ๋ ๊ฒ์ผ ์๋ ์์ง๋ง), ์ด๋ค ๋ฐฉ์์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํ์๋์ง ๊ฐ๋จํ ์ ๋ฆฌํด์ ํฌ์คํ ํด๋ณธ๋ค.
๋จผ์ ์๋ ์๋ฆฌ๋ ์ค์ ๋ฐฐ๋น๊ธ ๊ณต์๋ฅผ ์ฐพ์๋ณด๋ ๊ณผ์ ๊ณผ ๋์ผํ๋ค.
DART ์์ธ ๊ฒ์ ๋ฉ๋ด์์ "๋ฐฐ๋น"์ ํค์๋๋ก ๊ฒ์ํ๋ค. ๊ทธ๋ ๊ฒ ๋์จ ๋ชฉ๋ก๋ค์์ "ํ๊ธยทํ๋ฌผ๋ฐฐ๋น๊ฒฐ์ "์ด๋ผ๋ ์ ๋ชฉ์ ๊ฐ์ง ๊ณต์๋ฅผ ์ ํํ๋ฉด ์๋์ ๊ฐ์ด ์๋ก์ด ์ฐฝ์ด ๋ฌ๋ค. ์ฌ๊ธฐ์ ํ์ํ ๋ฐฐ๋น๊ธ ๊ณต์ ์ ๋ณด๋ฅผ ํ์ธํ๋ฏ๋ก, ์ด ๊ณผ์ ์ ๊ทธ๋๋ก ๊ตฌํํ์๋ค.
DART์์ ์์ธ ๊ฒ์์ ํ๊ฒ ๋๋ฉด ๋ธ๋ผ์ฐ์ ๊ฒ์์ฐฝ์ URL์ด ๋ณ๊ฒฝ๋์ง ์๋๋ฐ, ์ค์ ๋ก ์ํ๋๋ URL์ ํตํด ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ํ์ธํ ์ ์๋ค. ์๋ฅผ ๋ค์ด, ์์ธ ๊ฒ์์์ "๋ฐฐ๋น"์ ํค์๋๋ก ๊ฒ์ํ ๊ฒฐ๊ณผ๋ฅผ ํ์ธํ ์ ์๋ URL์ ์๋์ ๊ฐ๋ค.
dart.fss.or.kr/dsab002/search.ax?reportName=๋ฐฐ๋น
dart.fss.or.kr/dsab002/search.ax?
์์ ๊ฐ์ ์ฃผ์ ๋ค์ ๋ช ๊ฐ์ง ๋ณ์๋ฅผ ํ์ฉํ๋ฉด ์์ธ ๊ฒ์์ ํตํด ์ป์ ์ ์๋ html ํ์ด์ง๋ก ์ ์ํ ์ ์๋ค.
| ๋ณ์ ์ด๋ฆ | ๋ด์ฉ |
|---|---|
| reportName | ๊ฒ์ ๋ณด๊ณ ์๋ช |
| startDate | ์์ ๊ธฐ๊ฐ |
| endDate | ์ข ๋ฃ ๊ธฐ๊ฐ |
| textCrpNm | ํ์ฌ๋ช |
| maxResult | ์ต๋ ๊ฒ์ ๊ฒฐ๊ณผ |
์์ ๋ณ์๋ค์ ์ด์ฉํ ์๋ก ์๋์ ๊ฐ์ URL๋ก ์ ๊ทผํ๋ฉด, 2017๋ 12์ 14์ผ์ ๊ณต์๋ ๊ฒ๋ค ์ค "๋ฐฐ๋น"์ด๋ผ๋ ํญ๋ชฉ์ด ๋ณด๊ณ ์๋ช ์ ํฌํจ๋ ๊ฒฝ์ฐ๊ฐ ๊ฒ์๋๋ค.
๋ค๋ฅธ ์๋ก, ํน์ ์ข
๋ชฉ์ ๋ฐฐ๋น ๊ณต์๋ง ํ์ธํ๊ณ ์ถ๋ค๋ฉด ์๋์ ๊ฐ์ด ๊ฒ์ํด๋ณด๋ฉด ๋๋ค.
http://dart.fss.or.kr/dsab002/search.ax?reportName=%EB%B0%B0%EB%8B%B9&&textCrpNm=S-Oil
๋ฐฐ๋น๊ณผ ๊ด๋ จ๋ ๊ณต์๋ค์ ๊ฒ์์ ํ ์ ์๊ฒ ๋์์ผ๋ ์ด์ ํ๋์ ๋ฐฐ๋น ๊ณต์์์ ํ์ํ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์๋ณด์. ์์ ๊ฒ์ ๊ฒฐ๊ณผ์์ ์ ์ฐฝ์ ํตํด ๋ฐฐ๋น ๊ณต์๋ฅผ ๋ณด์ฌ์ฃผ๋ URL์ ์ ๊ทผํ๊ธฐ ์ํด์๋ rcpNo ์ ๋ณด๊ฐ ํ์ํ๋ค. ์ด๋ ์์ ๊ฒ์ ๊ฒฐ๊ณผ์ html ์์ค ์ฝ๋์์ link ์ฃผ์์์ ์ป์ ์ ์๋ค.
๊ทธ๋ ๊ฒ ํด์ ์๋์ ๊ฐ์ URL์ ์ ๊ทผํ์ ๋ ๋ฌธ์ ๋ ์ค์ ๋ฐฐ๋น ๊ด๋ จ ์ ๋ณด๊ฐ ์๋ ๋ค๋ชจ์ ๋ชจ์์ ์์ญ์ html ํ์์ผ๋ก ์ ๊ทผํ ์๊ฐ ์๋ค.
ํด๋น ์์ญ์ ์ ๊ทผํ๊ธฐ ์ํด์๋ rcpNo์ dcmNo์ ์ ๋ณด๊ฐ ํ์ํ๋ค. ํด๋น ์ ๋ณด ์ญ์ html ์์ค ์ฝ๋์์ ํ๋ํ ์ ์์ผ๋ฉฐ, ์๋์ ๊ฐ์ url์ ํตํด html table ํํ์ ์ค์ ์ ๋ณด์ ์ ๊ทผ ๊ฐ๋ฅํ๋ค.
http://dart.fss.or.kr/report/viewer.do?rcpNo=xxx&dcmNo=xxx&eleId=0&offset=0&length=0&dtd=HTML
์ด์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์์ฑ๋ ํด์ ๊ฒฐ์ฐ๋ฐฐ๋น ๊ณต์๊ฐ ๋ง์ด ์ฌ๋ฆฌ๋ 2017๋ 2์์ ๋ํด ์ ์ฉํด๋ณธ ์์ ํ์ผ์ ์๋์ ๊ฐ๋ค.
์ฐ๋ง ๋ฐฐ๋น ๊ณต์๊ฐ ์์ํ ์ฌ๋ผ์ค๊ฒ ๋๋ฉด ์ง์์ ์ธ ํ ์คํธ๋ฅผ ํด๋ณด๋ฉด์ ๋๋ฒ๊น ์ ํด๋ด์ผ๊ฒ ๋ค. ์ด๋ฅผ ํตํด ์์ผ๋ก 2017๋ ๊ฒฐ์ฐ ๋ฐฐ๋น๊ธ ์ ๋ณด๋ฅผ ์ ๋ฐ์ดํธํ๋๋ฐ ํ์ฉํ๊ธฐ ์ข์ ๊ฒ ๊ฐ๋ค.
์ง๊ธ๊น์ง ์ค๋ช ํ ๋ด์ฉ์ ๊ตฌํํ python ์์ค ์ฝ๋๋ฅผ ์ ๋ฆฌํ์ฌ github์ ์ ๋ก๋ ํ์๋ค. ํน์ ์์ค ์ฝ๋๋ฅผ ์ฐธ์กฐํ์ค ๋ถ๋ค์ ํ์ธํด๋ณด๋ฉด ๋ฉ๋๋ค. ๊ฐ๋ตํ๊ฒ ์คํ ์ต์ ๋ค์ ์ค๋ช ํ๋ฉด ํน์ ๊ธฐ๊ฐ๋์์ "๋ฐฐ๋น"์ด๋ผ๋ ํค์๋๊ฐ ๋ค์ด๊ฐ ๊ณต์๋ฅผ ์ฐพ๋ ๋์(mode 0) ๊ณผ ํน์ ๊ธฐ์ ์ ๋ํ์ฌ "๋ฐฐ๋น"์ด๋ผ๋ ํค์๋๊ฐ ๋ค์ด๊ฐ ๊ณต์๋ฅผ ์ฐพ๋ ๋์(mode 1)์ด ์๋ค.
Mode 0์ ์์์ด๋ค.
โ python dart_dividends.py -m 0 -s 20171115 -e 20171215 -o out_file_name
Mode 1์ ์์์ด๋ค.
โ python dart_dividends.py -m 1 -c ์ผ์ฑ์ ์
Github repo.
Reference