python 두 번째 일기 : 크롤링 기초 (crawling basic)

2020. 8. 4. 16:45python/crawling

# 파이썬 크롤링 번째 : HTML의 이해

 

 

파이썬을 활용해 크롤링을 하기 위해서는 기본적인 html 코드에 대한 이해가 필요하다.

그 이유는 크롤링시에 원하는 데이터의 위치를 웹 소스에서 확인 후, 원하는 데이터를 가져와야 하기 때문이다.

 

만약 html을 몰라서, 복잡한 웹소스에서 원하는 데이터를 정확하게 찾아오지 못한다면

당연하게도 잘못된 데이터를 분석하고, 잘못된 결과를 도출하게 된다.

 

HTML의 기본코드에 대해서 공부한 내용을 다시 한번 적어본다.

 

HTML 기본구조

<!DOCTYPE html>

<html>

    <head>

        <title> '내용' </title>

    </head>

    <body>

        <b> '내용' </b><br>

        <img src = "" id = "">   #이미지 파일

        <table border="1"> #테이블의 경계 기본값

            <thead>

                    <tr>

                          <th> ' 내용' </th>  #행

                    </tr>

           </thead>

            <tbody>

                    <tr>

                          <td> '내용' </td> #열

                    </tr>         

    </body>

</html>

 

블로그 글에서 작성하기는 생각보다 힘들다.

컴파일러의 색구분이나 자동 완성 등이 없어서 위치를 맞추기 힘들다.

그래도 직접 하나하나 다시 처보니 새롭게 이해가 된다.

역시 백문이 불여일타.

 

앞으로도 시간이 들더라도 한 번이라도 더 직접 코드를 쳐봐야겠다.

 

 

파이썬에서 HTML 언어를 이해하고 데이터 가져오기

*태그로 검색 방법

soup = BeautifulSoup(html, "html.parser")

 

data = soup.find('h1') #h1은 HTML의 가져올 위치(태그)

 

print(data)

print(data.string)

print(data.get_text())

 

*같은 태그 문장이 두 개일 때 이 중에 하나를 선택하는 방법

data = soup.find('p', class_='cssstyle')

data = soup.find('p','cssstyle')

data = soup.find('p', attrs ={'align':'center'}

data = soup.find(id='body)

 

 

아직 정확한 이해는 하지 못했다.

하지만 앞으로 강의를 계속 들으며 계속해보면 이해될 것이다.

다음으로는 CSS 언어를 이해하는 수업을 듣는다.

 

웹 소는 대부분 HTML과 CSS가 함께 구성되어 있기 때문에

원활한 크롤링을 위해서는 두 언어의 기본을 알고 있어야 한다.

 

오늘은 여기까지!