๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Crawling

HTML ๊ตฌ์กฐ

by rubyda 2021. 1. 17.
728x90

HTML ๊ตฌ์กฐ

๐Ÿ‘‰ HTML์ด๋ž€?

HTML(HyperText Markup Language)์€ ์›น์„ ์ด๋ฃจ๋Š” ๊ฐ€์žฅ ๊ธฐ์ดˆ์ ์ธ ๊ตฌ์„ฑ ์š”์†Œ์ž…๋‹ˆ๋‹ค. HTML์€ ์›น ์ฝ˜ํ…์ธ ์˜ ์˜๋ฏธ์™€ ๊ตฌ์กฐ๋ฅผ ์ •์˜ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

 

์šฐ๋ฆฌ๋Š” F12๋ฅผ ๋ˆ„๋ฅด๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฐฝ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋ฐ”๋กœ HTML๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค. HTML์„ ๋ณด๋ฉด ์šฐ๋ฆฌ๋Š” ์›น์‚ฌ์ดํŠธ๊ฐ€ ์–ด๋– ํ•œ ํ˜•ํƒœ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋Š”์ง€ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ๊ณ , ์ด๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ์˜ ๊ตฌ์กฐ์™€ ์œ„์น˜๋ฅผ ํŒŒ์•…ํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

๐Ÿ‘‰ HTML ํƒœ๊ทธ

HTML์— ๋‹ด๊ฒจ์žˆ๋Š” ๊ตฌ์„ฑ ์š”์†Œ๋“ค์€ ๋งˆํฌ์˜ ์—ญํ• ์„ ํ•˜๋Š” 'ํƒœ๊ทธ'๋กœ ๊ฐ์‹ธ์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์œผ๋กœ HTML์€ ์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

<ํƒœ๊ทธ>๋‚ด์šฉ</ํƒœ๊ทธ>

<ํƒœ๊ทธ>๋‚ด์šฉ</ํƒœ๊ทธ>

์‹œ์ž‘๊ณผ ๋์ด ํ•˜๋‚˜์˜ ์Œ์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ ๊ทธ ์‚ฌ์ด์— ๋‚ด์šฉ๋“ค์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์„œ ์‹œ์ž‘๊ณผ ๋์— ์“ฐ์ธ ํƒœ๊ทธ๋Š” ์—„์ฒญ๋‚˜๊ฒŒ ๋งŽ์€ ์ข…๋ฅ˜๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค.

 

  • : ์›นํŽ˜์ด์ง€์˜ ์‹œ์ž‘๊ณผ ๋์„ ์˜๋ฏธํ•˜๋Š” ํƒœ๊ทธ์ž…๋‹ˆ๋‹ค.
  • <title> </title> : ๋ฌธ์„œ์˜ ์ œ๋ชฉ์„ ์˜๋ฏธํ•˜๋Š” ํƒœ๊ทธ์ž…๋‹ˆ๋‹ค.
  • : ์›น์—์„œ ์‹ค์ œ๋กœ ํ‘œ์‹œ๋˜๋Š” ๋‚ด์šฉ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ‘‰ HTML ์„ ํƒ์ž

์ˆ˜๋งŽ์€ ์š”์†Œ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ๋Š” ์›น ํŽ˜์ด์ง€๋Š” ์ˆ˜๋งŽ์€ ํƒœ๊ทธ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ์ค‘์—์„œ๋„ ์„œ๋กœ ๋™์ผํ•œ ํƒœ๊ทธ๊ฐ€ ์กด์žฌํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ๋ฅผ ์œ„ํ•ด ์„ ํƒ์ž(Selector) ๋Š” ๋™์ผํ•œ ํƒœ๊ทธ ์—ฌ๋Ÿฌ ๊ฐœ ์ค‘์—์„œ๋„ ๊ฐ ํƒœ๊ทธ๋ฅผ ๊ตฌ๋ณ„ํ•  ์ˆ˜ ์žˆ๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

์„ ํƒ์ž์˜ ํ•„์š”

<div> 
	<div> 
      <span> ํŒŒ์ด์ฌ </span> 
      <span> ํฌ๋กค๋ง </span> 
    </div> 
    
    <div> 
      <span> C์–ธ์–ด </span> 
      <span> ๊ฒŒ์ž„ </span> 
    </div> 
<div>

๋‹ค์Œ๊ณผ ๊ฐ™์ด ํƒœ๊ทธ๊ณผ ๋˜์–ด์žˆ๋‹ค๊ณ  ํ•˜๋ฉด ํƒœ๊ทธ๊ฐ€ 4๊ฐœ๋‚˜ ์กด์žฌํ•˜์—ฌ ์›ํ•˜๋Š” ๊ฐ’์„ ์ถ”์ถœํ•˜๊ธฐ ์–ด๋ ค์šด ์ƒํƒœ์ž…๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ ์ž ์„ ํƒ์ž๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

<div id = "contents"> 
	<div class = "metadata1"> 
    	<span class = "language"> ํŒŒ์ด์ฌ </span> 
        <span class = "project" > ํฌ๋กค๋ง </span> 
    </div> 
    
    <div class = "metadata2"> 
        <span class = "language"> c์–ธ์–ด </span> 
        <span class = "project"> ๊ฒŒ์ž„ </span> 
    </div> 
<div>

์˜ˆ๋ฅผ๋“ค์–ด ์šฐ๋ฆฌ๊ฐ€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์–ธ์–ด์™€ ๊ด€๋ จ๋œ ๋‚ด์šฉ๋งŒ ๊ฐ€์ ธ์˜จ๋‹ค๊ณ  ๊ฐ€์ •์„ ํ•ด๋ด…์‹œ๋‹ค.

๊ทธ๋Ÿฌ๋ฉด ์šฐ๋ฆฌ๋Š” "class = 'language'" ๋ผ๋Š” ์„ ํƒ์ž๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ”„๋กœ๊ทธ๋ž˜๋ฐ์–ธ์–ด์™€ ๊ด€๋ จ๋œ ํŒŒ์ด์ฌ, C์–ธ์–ด๋งŒ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

id์™€ class

์„ ํƒ์ž์˜ ํƒœ๊ทธ๋Š” ์ฃผ๋กœ id์™€ class๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ฃผ๋กœ ๋กœ๊ทธ์ธ์„ํ• ๋•Œ id๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰ id๋Š” ๊ณ ์œ ํ•œ ๊ฐ’์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

 

๋งˆ์ฐฌ๊ฐ€์ง€๋กœ HTML์—์„œ๋„ id๋Š” ๊ณ ์œ ํ•œ ๊ฐ’์ž…๋‹ˆ๋‹ค. ์ฆ‰ ํ•˜๋‚˜์˜ HTML ์ฝ”๋“œ์— id๋Š” ์ค‘๋ณต๋˜์ง€ ์•Š๋Š” ๊ฐ’์„ ๊ฐ€์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

class๋„ ์„ ํƒ์ž๋กœ ์‚ฌ์šฉ์ด ๋˜๋Š” ์•„์ด์ง€๋งŒ id์ฒ˜๋Ÿผ ๊ณ ์œ ํ•œ ๊ฐ’์€ ์•„๋‹™๋‹ˆ๋‹ค.

class๋Š” ๊ฐ™์€ ์†์„ฑ์„ ์ง€๋‹Œ ๋‚ด์šฉ๋“ค์„ ๋ฌถ์–ด์ฃผ๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— HTML์€ ํ•œ ํƒœ๊ทธ๊ฐ€ ์—ฌ๋Ÿฌ๊ฐœ์˜ class๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

'Crawling' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

selenium ๋‚ด์žฅํ•จ์ˆ˜  (0) 2021.01.25
์ •์  ํฌ๋กค๋ง  (0) 2021.01.25
ํฌ๋กค๋ง ์ข…๋ฅ˜(์ •์  VS ๋™์ )  (0) 2021.01.17