Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- IOS
- pandas
- 다이어트
- python
- port
- PER
- node.js
- Unity
- sqlite
- Excel
- 함수
- 라즈베리파이
- swift
- 리눅스
- GIT
- PyQt5
- urllib
- PyQt
- ASP
- 날짜
- 맛집
- flutter
- javascript
- tensorflow
- MS-SQL
- mssql
- Linux
- MySQL
- ubuntu
- 유니티
Archives
아미(아름다운미소)
[BeautifulSoup]웹에서 정보 가져오기 본문
Python에는 requests라는 유명한 http request 라이브러리가 있습니다.
설치하기(pip로 간단하게 설치가 가능합니다.)
즉 Python이 이해하는 객체 구조로 만들어주지는 못합니다.
위에서 req.text는 python의 문자열(str)객체를 반환할 뿐이기 때문에 정보를 추출하기가 어렵습니다.
따라서 BeautifulSoup을 이용해야 합니다.
이 BeautifulSoup은 html 코드를 Python이 이해하는 객체 구조로 변환하는 Parsing을 맡고 있고,
이 라이브러리를 이용해 우리는 제대로 된 ‘의미있는’ 정보를 추출해 낼 수 있습니다.
설치하기 BeautifulSoup을 직접 쳐서 설치하는 것도 가능하지만,
bs4라는 wrapper라이브러리를 통해 설치하는 방법이 더 쉽고 안전합니다. (pip로 간단하게 설치가 가능합니다.)
이제 soup객체에서 원하는 정보를 찾아낼 수 있습니다.
설치하기(pip로 간단하게 설치가 가능합니다.)
pip install requestsRequests는 정말 좋은 라이브러리이지만, html을 ‘의미있는’,
즉 Python이 이해하는 객체 구조로 만들어주지는 못합니다.
위에서 req.text는 python의 문자열(str)객체를 반환할 뿐이기 때문에 정보를 추출하기가 어렵습니다.
따라서 BeautifulSoup을 이용해야 합니다.
이 BeautifulSoup은 html 코드를 Python이 이해하는 객체 구조로 변환하는 Parsing을 맡고 있고,
이 라이브러리를 이용해 우리는 제대로 된 ‘의미있는’ 정보를 추출해 낼 수 있습니다.
설치하기 BeautifulSoup을 직접 쳐서 설치하는 것도 가능하지만,
bs4라는 wrapper라이브러리를 통해 설치하는 방법이 더 쉽고 안전합니다. (pip로 간단하게 설치가 가능합니다.)
pip install bs4사용예제
import requests from bs4 import BeautifulSoup # HTTP GET Request req = requests.get('https://www,todaymart.com/49') # HTML 소스 가져오기 html = req.text # BeautifulSoup으로 html소스를 python객체로 변환하기 # 첫 인자는 html소스코드, 두 번째 인자는 어떤 parser를 이용할지 명시합니다. # 이 글에서는 Python 내장 html.parser를 이용했습니다. soup = BeautifulSoup(html, 'html.parser')
이제 soup객체에서 원하는 정보를 찾아낼 수 있습니다.
'랭귀지 > python' 카테고리의 다른 글
[PYTHON] 간단한 웹서버 구축하기 (0) | 2017.12.23 |
---|---|
[python]사용자의 홈 디렉토리 경로 얻는 법 (0) | 2017.12.23 |
[python]방대한 XLS (Excel) 파일을 읽고(쓰기) (0) | 2017.12.21 |
[python]crawler 샘플 (0) | 2017.12.21 |
Python 에서 Mysql 사용 하기 (0) | 2017.12.20 |
Comments