Search

๊ธฐ๋ณธ ์ง€์‹

๋ชฉ์ฐจ

Web

1.
[Client] ๋ธŒ๋ผ์šฐ์ € ์‹คํ–‰
2.
[Client] URL ์ฃผ์†Œ ์ž…๋ ฅ
3.
[Client] ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์—๊ฒŒ ์ปจํ…์ธ  ์š”์ฒญ(request)
4.
[Server] ์„œ๋ฒ„๋Š” ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์š”์ฒญ๋ฐ›์€ ์ปจํ…์ธ ๋ฅผ ์‘๋‹ต(response)
5.
[Client] ๋ธŒ๋ผ์šฐ์ €๋Š” ์„œ๋ฒ„๊ฐ€ ์ „๋‹ฌํ•œ ์‘๋‹ต์„ ํ•ด์„ํ•˜์—ฌ ํ™”๋ฉด์— ํ‘œ์‹œ

HTML

โ€ข
์‹œ์ž‘์ค„, ํ—ค๋”(Header), ๋ณธ๋ฌธ(Body)์œผ๋กœ ์ด๋ฃจ์–ด์ง
โ—ฆ
ํ—ค๋”๋Š” ์ •์ฑ…์ ์ธ ๋ถ€๋ถ„, ๋ฐ”๋””๋Š” ํ™”๋ฉด์— ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•œ ๋ ˆ์ด์•„์›ƒ์„ ์„ค๋ช…ํ•˜๋Š” ๋ถ€๋ถ„

HTML ์ฃผ์š” ํƒœ๊ทธ

ํƒœ๊ทธ
์„ค๋ช…
H1~H6
์ œ๋ชฉ ํƒœ๊ทธ, h1 ~ h6 ์ˆœ์„œ๋กœ ํฌ๊ธฐ๊ฐ€ ์ž‘์•„์ง.
p
๋ฌธ๋‹จ(Paragraph) ํƒœ๊ทธ
ul
์ˆœ์„œ๊ฐ€ ์—†๋Š” ๋ชฉ๋ก
ol
์ˆœ์„œ๊ฐ€ ์žˆ๋Š” ๋ชฉ๋ก
li
ul ๋˜๋Š” ol ํ•˜์œ„์— ๊ฐ ํ•ญ๋ชฉ์„ ๋„ฃ๋Š” ํƒœ๊ทธ
a
ํ•˜์ดํผ๋งํฌ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ํƒœ๊ทธ
div
๋ ˆ์ด์•„์›ƒ์„ ๋‚˜๋ˆ„๋Š”๋ฐ(division) ์‚ฌ์šฉ(๋ฐ•์Šค ํ˜•ํƒœ๋กœ ๋ฌถ์Œ)
span
์ธ๋ผ์ธ ์š”์†Œ(inline-element)๋“ค์„ ํ•˜๋‚˜๋กœ ๋ฌถ์„ ๋•Œ ์‚ฌ์šฉ(๋ผ์ธ ๋ณ„๋กœ ๋ฌถ์Œ)

URL(Uniform Resource Loader)

โ€ข
์ธํ„ฐ๋„ท์— ์กด์žฌํ•˜๋Š” ๋ฆฌ์†Œ์Šค(ํŒŒ์ผ ๋“ฑ)์˜ ์œ„์น˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์‹๋ณ„์ž
โ€ข
์‚ฌ์šฉ์ž๊ฐ€ ๋ธŒ๋ผ์šฐ์ € ์ฃผ์†Œ์ฐฝ์— ์ง์ ‘ ์ฃผ์†Œ๋ฅผ ์ž…๋ ฅํ•˜๊ธฐ๋„ ํ•˜๊ณ , ๋ฒ„ํŠผ ํด๋ฆญ ๋“ฑ์˜ ์ด๋ฒคํŠธ๋ฅผ ํ†ตํ•ด ์ž๋™์œผ๋กœ URL์ด ์„œ๋ฒ„๋กœ ์ „๋‹ฌ๋˜๊ธฐ๋„ ํ•จ
โ€ข
HTML์—์„œ URL์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐฉ๋ฒ•
โ—ฆ
<a href =โ€œURL์ฃผ์†Œโ€ ></a>
โ€ข
ํฌ๋กค๋ง์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š”?
โ—ฆ
์›น ํŽ˜์ด์ง€์— ์žˆ๋Š” a ํƒœ๊ทธ์˜ href ์†์„ฑ์—์„œ ๋‹ค๋ฅธ ํŽ˜์ด์ง€์˜ URL์„ ์ถ”์ถœ
โ—ฆ
์ƒ๋Œ€ URL์„ ์ ˆ๋Œ€ URL๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ •์ด ํ•„์š”
โ–ช
์ƒ๋Œ€ URL : ์ ˆ๋Œ€ URL์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ƒ๋Œ€์ ์ธ ๊ฒฝ๋กœ๋ฅผ ์žก๋Š” URL(์˜ˆ. /articles/)
โ–ช
์ ˆ๋Œ€ URL : http:// ๋“ฑ์˜ ์Šคํ‚ค๋งˆ๋กœ ์‹œ์ž‘ํ•˜๋Š” URL(์˜ˆ: http://example.com/articles/)

ํฌ๋กค๋ง(Crawling)

โ€ข
์›น ํŽ˜์ด์ง€์˜ ํ•˜์ดํผ๋งํฌ๋ฅผ ์ˆœํšŒํ•˜๋ฉด์„œ ์›น ํŽ˜์ด์ง€๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๋Š” ์ž‘์—…
ํฌ๋กค๋Ÿฌ๋Š” ์›น ํŽ˜์ด์ง€์— ์กด์žฌํ•˜๋Š” ํ•˜์ดํผ๋งํฌ๋ฅผ ๋”ฐ๋ผ ๋Œ์•„๋‹ค๋‹ˆ๋ฏ€๋กœ, URL์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ํ•„์š”
โ€ข
์ธํ„ฐ๋„ท ์ƒ์˜ ์ •๋ณด๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ˆ˜์ง‘ํ•˜์—ฌ ์ €์žฅ
โ€ข
๋ฐฉ๋ฌธํ•  URL ๋ฆฌ์ŠคํŠธ๋ฅผ ํ†ตํ•ด ์›น ํŽ˜์ด์ง€๋ฅผ ๋‚ด๋ ค ๋ฐ›์•„ ํ•ด๋‹น ๋งํฌ์˜ ์กด์žฌ์™€ HTML ์ฝ”๋“œ์˜ ์œ ํšจ์„ฑ์„ ๊ฒ€์‚ฌํ•˜์—ฌ, ์œ ํšจ์„ฑ์ด ํ†ต๊ณผ๋˜๋ฉด ํ…์ŠคํŠธ ์ •๋ณด์™€ ๋ฉ”ํƒ€์ •๋ณด๋ฅผ ์ €์žฅ

ํฌ๋กค๋ง ์‚ฌ๋ก€

โ€ข
๊ตฌ๊ธ€: ์ˆ˜๋งŽ์€ ์›น์‚ฌ์ดํŠธ๋ฅผ ํฌ๋กค๋งํ•˜์—ฌ ๊ฒ€์ƒ‰ ์„œ๋น„์Šค ์ œ๊ณต
โ€ข
์ฟ ์ฐจ: ๊ฐ์ข… ์†Œ์…œ ์ปค๋จธ์Šค ์‚ฌ์ดํŠธ๋ฅผ ํฌ๋กค๋งํ•˜์—ฌ ์ตœ์ €๊ฐ€ ์ •๋ณด ์ œ๊ณต

ํฌ๋กค๋ง ์ฃผ์˜์‚ฌํ•ญ

โ€ข
ํฌ๋กค๋ง ๋Œ€์ƒ ์›น ์‚ฌ์ดํŠธ์˜ ์„ฑ๋Šฅ ์ €ํ•˜
โ—ฆ
๋™์‹œ ์ ‘์† ์ˆ˜ ๊ณ ๋ ค : ํ•œ ์›น์‚ฌ์ดํŠธ๊ฐ€ ๋™์‹œ์— ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ ‘์† ์ˆ˜๋Š” ์ œํ•œ
โ—ฆ
์ ‘์† ์‹œ๊ฐ„ ๊ฐ„๊ฒฉ : ์—ฐ์†์ ์œผ๋กœ ์›น ํŽ˜์ด์ง€๋ฅผ ์ถ”์ถœํ•˜๋ฉด ์„œ๋ฒ„์— ๊ณผ๋ถ€ํ•˜๊ฐ€ ๊ฑธ๋ฆผ
โ–ช
๋‹จ์ผ ์ ‘์†์œผ๋กœ 1์ดˆ ์ด์ƒ์˜ ์‹œ๊ฐ„ ๊ฐ„๊ฒฉ์„ ๋‘๊ณ  ์›น์‚ฌ์ดํŠธ๋ฅผ ํฌ๋กค๋ง ํ•˜๋Š” ๊ฒƒ์ด ๋ฌด๋‚œํ•จ
โ€ข
์ €์ž‘๊ถŒ ์นจํ•ด
โ—ฆ
์ €์ž‘๊ถŒ์ด ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ฌด๋‹จ์œผ๋กœ ์ˆ˜์ง‘ํ•ด์„œ ์‚ฌ์šฉ ์‹œ, ๋ฌธ์ œ ๋ฐœ์ƒ
โ€ข
์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ
โ—ฆ
HTTP ํ†ต์‹  ์˜ค๋ฅ˜ ์‹œ, ์ผ์‹œ์ ์ธ ์˜ค๋ฅ˜์ธ์ง€ ์•„๋‹Œ์ง€๋ฅผ ํŒ๋‹จํ•˜์—ฌ ์žฌ์‹œ๋„ ์—ฌ๋ถ€ ๊ฒฐ์ •
โ€ข
์—ฐ๋ฝ์ฒ˜ ๋ช…์‹œ
โ—ฆ
ํฌ๋กค๋Ÿฌ์˜ User-Agent ํ—ค๋”์— ์—ฐ๋ฝ์ฒ˜ URL ๋˜๋Š” ๋ฉ”์ผ ์ฃผ์†Œ๋ฅผ ์ž‘์„ฑ
โ—ฆ
robots.txt

์Šคํฌ๋ž˜ํ•‘(Scraping)

โ€ข
๋‹ค์šด๋กœ๋“œํ•œ ์›น ํŽ˜์ด์ง€์—์„œ ํ•„์š”ํ•œ ์ •๋ณด๋ฅผ ์ถ”์ถœํ•˜๋Š” ์ž‘์—…
โ€ข
Parser์™€ ๋ฐ์ดํ„ฐ ์ „์ฒ˜๋ฆฌ์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ํ•„์š”

ํŒŒ์‹ฑ(Parsing)

โ€ข
์ผ๋ จ์˜ ๋ฌธ์ž์—ด์„ ์˜๋ฏธ์žˆ๋Š” ํ† ํฐ์œผ๋กœ ๋ถ„ํ•ดํ•˜๊ณ  ์ด๋“ค๋กœ ์ด๋ฃจ์–ด์ง„ ํŒŒ์Šค ํŠธ๋ฆฌ(parse tree)๋ฅผ ๋งŒ๋“œ๋Š” ๊ณผ์ •
parse tree