웹페이지는 HTML 기본 구조를 가집니다.
<!DOCTYPE html> // 이 문서는 HTML 언어를 사용
<html> // 여기서부터 HTML 문서 시작
<head></head> // 문서 전체 정보 (제목..)
<body></body> // 문서 실제 내용
</html>
웹브라우저로 HTML을 오픈했는데 글자가 깨지면 다음 태그를 head 태그 안에 넣자.
<meta charset='utf-8'>
HTML 이해를 기반으로 크롤링 하기
from bs4 import BeautifulSoup
html = "<html> \
<body> \
<h1 id='title'>[1]크롤링이란?</h1> \
<p class='cssstyle'>웹페이지에서 필요한 데이터를 추출하는 것</p> \
<p id='body' align='center'>파이썬을 중심으로 다양한 웹크롤링 기술 발달</p> \
</body> \
</html>"
soup = BeautifulSoup(html, 'html.parser')
# 태그로 검색 방법
data = soup.find('h1')
print(data) // <h1 id="title">[1]크롤링이란?</h1>
print(data.string) // [1]크롤링이란?
print(data.get_text()) // [1]크롤링이란?
p 태그 문장이 2개 이상인데 이 중에 하나를 선택하려면? 클래스/속성 명시
- data = soup.find('p', class_='cssstyle')
- data = soup.find('p', 'cssstyle')
- data = soup.find('p', attrs={'align': 'center'})
- data = soup.find(id='body')
p 태그 문장을 모두 가져오려면? find_all 함수 이용
paragraph = soup.find_all('p')
for p in paragraph:
print(p.get_text())
CSS란?
HTML 문서를 꾸미는 언어
CSS 적용하기
1) 적용할 태그에 style 속성으로 넣기
<td style="text-align: center; color: blue">
- 프로퍼티와 값을 연속해서 사용 가능 (;로 연결)
- style 속성은 따옴표로 묶음
2) HTML 문서 <head> 안에 <style> 태그로 넣기
<style type="text/css">
td {
font-size: 2em;
font-family: Gulim;
text-align: center;
}
</style>
- 특정 속성에 전체적으로 한번에 적용하고 싶을 때 사용
3) HTML 문서 <head> 안에 CSS 파일로 링크하기
<head>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
...
<tr class="highlight">
<td>안녕</td>
<td>안녕</td>
<td>안녕</td>
</tr>
css/style.css
td {
font-size: 2em;
font-family: Gulim;
text-align: center;
}
// 내 css style 정의, 속성 덮어쓰기
.highlight {
font-size: 14px;
background-color: #FFF59D;
}
'Python > [강의] 파이썬입문과 크롤링기초' 카테고리의 다른 글
Open API를 활용한 크롤링 (0) | 2022.09.13 |
---|---|
크롤링 시 문제상황 대처 (0) | 2022.09.12 |
CSS selector 사용해서 크롤링하기 (0) | 2022.09.11 |
실전 크롤링과 크롤링 기술팁 (0) | 2022.09.11 |
크롤링 코드 패턴으로 익히기 (0) | 2022.09.11 |