์ฐธ์กฐ๋ฅผ ์ํด ์ด ๋ฐ์ดํฐ ์ธํธ๋ฅผ ์ฐธ์กฐํ์ญ์์ค: https://zenodo.org/record/2539424
Zenodo๊ฐ ์๊ณ ์์ด gzip์ผ๋ก ์์ถ๋ ํ์ผ์ ๋ ๋ฒ ์์ถํ๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋ฐ๋ผ์ "์ด์ค ์์ถ"(!)๋ฉ๋๋ค. ๋ฐ๋ผ์ ๋ค์ด๋ก๋ํ ๋ ์ด๋ฆ์ ์ง์ ํด์ผ ํฉ๋๋ค.
eswiki.wikilink_graph.2006-03-01.csv.gz.gz
๋งค์ฐ ํผ๋์ค๋ฌ์ด ์ ์ ํ์๋ MD5๊ฐ ์๋ณธ ํ์ผ(ํ ๋ฒ ์์ถ๋จ)์ ์ฐธ์กฐํ๋ค๋ ๊ฒ์ ๋๋ค.
eswiki.wikilink_graph.2006-03-01.csv.gz
md5:2036a75ed53acdcc81f53061057fe343
๋ฐ๋ผ์ ๋ค์ด๋ก๋ํ ํ์ผ๊ณผ ์ผ์นํ์ง ์์ง๋ง ์๋ณธ ํ์ผ๊ณผ ์ผ์นํฉ๋๋ค(ํ ๋ฒ๋ง ์์ถ๋จ).
์ด๊ฒ์ด ๋ด๊ฐ ์ป์ ๊ฒ์
๋๋ค (๋ค์ด๋ก๋ ํ ํ์ผ์ .gz.gz
์ผ๋ก ์ ์ฅํฉ๋๋ค).
$ md5sum eswiki.wikilink_graph.2006-03-01.csv.gz.gz
b32c3b896be22c32bb17b9fe887bda51 eswiki.wikilink_graph.2006-03-01.csv.gz.gz
$ gunzip eswiki.wikilink_graph.2006-03-01.csv.gz.gz
$ md5sum eswiki.wikilink_graph.2006-03-01.csv.gz
2036a75ed53acdcc81f53061057fe343 eswiki.wikilink_graph.2006-03-01.csv.gz
$ sha512sum eswiki.wikilink_graph.2006-03-01.csv.gz
56a48b0f82922fee20c07b0a2480bca1872c5e4aa8521a86e178dc00aea5dd2e4cda4ae05eb1b1950da7447dae70d47d8daa8d7a3c62d6989aaad09bd1fbcc71
eswiki.wikilink_graph.2006-03-01.csv.gz
$ zcat eswiki.wikilink_graph.2006-03-01.csv.gz | head -n10
page_id_from page_title_from page_id_to page_title_to
10 Argentina 3037 10 de enero
10 Argentina 3326 12 de octubre
10 Argentina 6301 13 de abril
10 Argentina 7874 1492
10 Argentina 6302 14 de abril
10 Argentina 14485 1502
10 Argentina 14471 1516
10 Argentina 14450 1536
10 Argentina 14434 1553
๋ณด์๋ค์ํผ ๋ค์ด๋ก๋ํ ํ์ผ์ ์ ๊ณต๋ MD5์ ์ผ์นํ์ง ์์ผ๋ฉฐ ํ์ผ์ ํ ๋ฒ ์์ถ์ ํ๋ฉด MD5๊ฐ ์ผ์นํฉ๋๋ค. ์์ถ์ ํ๋ฉด eswiki.wikilink_graph.sha512sums.txt
ํ์ผ์ ๋์ผํ ๋ฐ์ดํฐ ์ธํธ์์ ๋ณ๋๋ก ์ ๊ณตํ๋ SHA512 ํฉ๊ณ์๋ ์ผ์นํฉ๋๋ค.
$ grep '2006-03-01' eswiki.wikilink_graph.sha512sums.txt
56a48b0f82922fee20c07b0a2480bca1872c5e4aa8521a86e178dc00aea5dd2e4cda4ae05eb1b1950da7447dae70d47d8daa8d7a3c62d6989aaad09bd1fbcc71
eswiki.wikilink_graph.2006-03-01.csv.gz
Zenodo๊ฐ ํ ์คํธ ํ์ผ(README ๋ฐ ํด์์ฌ ํ์ผ)์ ์์ถํ์ง ์๊ณ ์ด ๋์์ ๋ํ ํต์ง๊ฐ ์๊ธฐ ๋๋ฌธ์ ๋งค์ฐ ์ด์ํฉ๋๋ค.
ํธ์ง: ๊ถ๊ธํ ๊ฒฝ์ฐ๋ฅผ ๋๋นํ์ฌ(๋ด๊ฐ ์ด ๋ฌธ์ ์ ๋ํด ๋งํ ๋ชจ๋ ์ฌ๋๋ค์ด ์ง๋ฌธํ๊ธฐ ๋๋ฌธ์) ๋ด๊ฐ ์ ๋ก๋ํ ํ์ผ์ ํ ๋ฒ๋ง ์์ถ๋์์ผ๋ฉฐ ๋ด ๋์คํฌ์ ์์ผ๋ฉฐ ์ฌ์ ํ ์กด์ฌํ๋ฉฐ ํ ๋ฒ ์์ถ๋ฉ๋๋ค. .
๋ฌธ์ ๋ฅผ ์ ๊ณ ํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
๋ธ๋ผ์ฐ์ ๊ฐ ๋ณด๋ด๋ Accept-Encoding: gzip
ํค๋์ ๊ด๋ จ๋ ๋ฌธ์ ๋ฅผ ์ฌํํ์ต๋๋ค.
$ curl -H "Accept-Encoding: gzip" -o eswiki.wikilink_graph.2006-03-01.csv.gz https://zenodo.org/record/2539424/files/eswiki.wikilink_graph.2006-03-01.csv.gz?download=1
$ md5sum eswiki.wikilink_graph.2006-03-01.csv.gz
b32c3b896be22c32bb17b9fe887bda51 eswiki.wikilink_graph.2006-03-01.csv.gz
๋
$ curl -o eswiki.wikilink_graph.2006-03-01.csv.gz https://zenodo.org/record/2539424/files/eswiki.wikilink_graph.2006-03-01.csv.gz?download=1
$ md5sum eswiki.wikilink_graph.2006-03-01.csv.gz
2036a75ed53acdcc81f53061057fe343 eswiki.wikilink_graph.2006-03-01.csv.gz
๋ ์์ธํ ์ดํด๋ณด๊ณ ์์ง๋ง NGINX ๊ตฌ์ฑ๊ณผ ๊ด๋ จ์ด ์๊ฑฐ๋ ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ์์ ์ ๋ฌ๋๋ MIME ์ ํ๊ณผ ๊ด๋ จ์ด ์์ต๋๋ค.
์๊ฒ ์ต๋๋ค. ๋ฌด์จ ์ผ์ด ์ผ์ด๋๊ณ ์๋์ง ํ์ ํ ๊ฒ ๊ฐ์ต๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ๋ฒ๊ทธ์ ์๋ชป๋ ๊ตฌ์ฑ์ ์กฐํฉ์ ๋๋ค.
MIME ์ ํ์ ๋ค์๊ณผ ์ ์ฌํ ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ์ ์ํด ์ถ์ธก๋ฉ๋๋ค.
>>> import mimetypes
>>> mimetypes.guess_type('eswiki.wikilink_graph.2006-03-01.csv.gz')
('text/csv', 'gzip')
๊ทธ๋ฌ๋ ์ฒซ ๋ฒ์งธ ๋ถ๋ถ text/csv
(๋ฒ๊ทธ)๋ง ์ฌ์ฉํ๊ณ ์์ต๋๋ค. ๋ณด์ ์กฐ์น๋ก(์ฌ์ฉ์ ์
๋ก๋ ํ์ผ์ ํ์ฉํ๊ธฐ ๋๋ฌธ์) mimetype์ ๋ธ๋ผ์ฐ์ ๋ก ์ ์ก๋๊ธฐ ์ ์ ์ญ์ ๋์ด text/csv
๊ฐ text/plain
๋ก ๋ณํ๋ฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ NGINX๋ text/plain
ํค๋ ๋ด์ฉ์ ํ์ธํฉ๋๋ค. ์ด ํค๋ ๋ด์ฉ์ ๋์ญํญ์ ์ ์ฝํ๊ธฐ ์ํด ํด๋ผ์ด์ธํธ์ ๋ณด๋ด๊ธฐ ์ ์ ์์ถํ๋๋ก ๊ตฌ์ฑ๋์ด ์์ต๋๋ค(์๋ชป ๊ตฌ์ฑ).
์์ฒญ๋! ๋ด๊ฐ ๋์ธ ์ ์๋์ง (๊ทธ๋ฆฌ๊ณ ์ด๋ป๊ฒ) ์๋ ค์ฃผ์ธ์.
๋ถํํ๋ NGINX๋ฅผ ์ฌ๊ตฌ์ฑํด๋ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์ง ์์์ต๋๋ค. ๋ฐ๋ผ์ ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ฒ๊ทธ๋ ์์ ํด์ผ ํ๋ฏ๋ก ์์ ํ๋ ๋ฐ ์๊ฐ์ด ์กฐ๊ธ ๋ ๊ฑธ๋ฆด ๊ฒ์ ๋๋ค. ๋