- 아나콘다 가상환경 작성방법
- 파이썬에서 thumbnail만들면서 io 에러난 경우 해결방법
- libraw 라이브러리 사용방법
- 아나콘다 업데이트하기
- 우분투에서 python pip 인스톨하기
- 파이썬으로 웹 스크랩하기10/10
- 파이썬으로 웹 스크랩하기9/10
- 파이썬으로 웹 스크랩하기8/10
- 파이썬으로 웹 스크랩하기7/10
- 파이썬으로 웹 스크랩하기6/10
- 파이썬으로 웹 스크랩하기5/10 Curr
- 파이썬으로 웹 스크랩하기4/10
- 파이썬으로 웹 스크랩하기3/10
- 파이썬으로 웹 스크랩하기2/10
- 파이썬으로 웹 스크랩하기1/10
- 파이썬으로 파일 다루기 13 / 13
- 파이썬으로 파일 다루기 12 / 13
- 파이썬으로 파일 다루기 11 / 13
- 파이썬으로 파일 다루기 10 / 13
- 파이썬으로 파일 다루기 9 / 13
- 파이썬으로 파일 다루기 8 / 13
- 파이썬으로 파일 다루기 7 / 13
- 파이썬으로 파일 다루기 6 / 13
- 파이썬으로 파일 다루기 5 / 13
- 파이썬으로 파일 다루기 4 / 13
- 파이썬으로 파일 다루기 3 / 13
- 파이썬으로 파일 다루기 2 / 13
- 파이썬으로 파일 다루기 1 / 13
- 파이썬으로 문자열 다루기 2/2
- 파이썬으로 문자열 다루기1/2
- 파이썬에서 사전 데이터 유형 이용하기2
- 파이썬에서 사전 데이터 유형 이용하기
- 파이썬에서 문자열 연결 및 복제하기
- 파이썬에서 수학 연산자 사용하기
- 13. 데이터베이스 13.8 데이터 삭제
- 13. 데이터베이스 13.7 데이터 수정
- 13. 데이터베이스 13.6 데이터 검색
- 13. 데이터베이스 13.5 데이터 조회
- 13. 데이터베이스 13.4 데이터 입력
- 13. 데이터베이스 13.3 데이터베이스 테이블 생성하기
- 13. 데이터베이스 13.2 SQL 맛보기
- 13. 데이터베이스 13.1 데이터베이스 설치
- 12. 디버깅
- 11.표준 라이브러리 11.2 logging 모듈
- 11. 표준 라이브러리 11.1 sys 모듈
- 10. 예외처리 10.6 with
- 10. 예외처리 10.5. try finally
- 10. 예외처리 10.4 예외 발생시키기
- 10. 예외처리 10.3 예외 처리
- 10. 예외처리 10.2 예외
- 10. 예외처리 10.1 오류
- 9.입력과 출력 9.4 유니코드
- 9.입력과 출력 9.3 Pickle
- 9.입력과 출력 9.2 파일입출력
- 9. 입력과 출력 9.1 입출력
- 8.자료구조 8.7 넘파이(numpy)
- 8.자료구조 8.6 집합(Set)
- 8.자료구조 8.5 열거형(Enum)
- 8.자료구조 8.4 사전
- 8.자료구조 8.3 튜플
- 8.자료구조 8.2 리스트
- 8.자료구조 8.1 문자열
- 7. 클래스 7.4 상속
- 7. 클래스 7.3 객체 초기화
- 7. 클래스 7.2 클래스의 사용
- 7. 클래스 7.1 클래스 정의하기
- 6. 모듈 과 패키지 6.5 패키지
- 6. 모듈 과 패키지 6.4 모듈의 name속성
- 6. 모듈 과 패키지 6.3 바이트 컴파일된 .pyc 파일
- 6. 모듈 과 패키지 6.2 dir() 함수를 이용하여 모듈 정보 알아내기
- 2018년 3월 프로그래밍 인기순위
- 6. 모듈 과 패키지 6.1 모듈을 정의하고 불러오기
- 5. 함수 5.7 람다(lambda) 함수
- 5. 함수 5.6 파이썬 내장함수
- 5. 함수 5.5 DocString
- 5. 함수 5.4 VarArgs 매개 변수
- 5. 함수 5.3 키워드 인수
- 5. 함수 5.2 기본 인수값
- 5. 함수 5.1 지역변수
- 4. 제어문 다루기 4.3 for
- 4. 제어문 다루기 4.2 while
- 4. 제어문 다루기 4.1 if문
- 파이썬 Python - OS.PATH 기초 정리
- 3. 연산자와 수식
- 2. 파이썬 기초 2.2 파이썬 기초
- 2. 파이썬 기초 2.1 첫걸음
- python 메소드 및 함수정리 모음
- C급 개발자와 함께하는 파이썬 - 01. 파이선 시작하기 #4
- C급 개발자와 함께하는 파이썬 - 01. 파이선 시작하기 #3
- 파이썬으로 간단한 스케줄러 만들기
- C급 개발자와 함께하는 파이썬 - 01. 파이선 시작하기 #2
- C급 개발자와 함께하는 파이썬 - 01. 파이선 시작하기 #1
- 파이썬(python)으로 RSS 크롤링하기
- Ubuntu(우분투) 리눅스에서 파이썬 설치하기
- 유용한 파이썬 라이브러리 모듈
- 파이썬으로 오늘날짜 폴더 생성하기
- 파이썬 프로그래밍에 대해서
- 두뇌를 정복하는 방법
- 윈도에서 BeautifulSoup4 설치방법
- 파이썬 알고리즘 배우기 좋은 사이트
파이썬으로 웹 스크랩하기5/10
파이썬으로 웹 스크랩하기5/10
세번째는 Beautiful Soup을 이용해서 읽어온 html의 내용을 분석하는 방법에 대해서 알아보도록 하겠습니다.
html을 읽어오기 위해서는 DOM에 대해서 알아야 하는데요.
“문서 객체 모델(DOM; Document Object Model)은 객체 지향 모델로써 구조화된 문서를 표현하는 형식이다. DOM은 플랫폼/언어 중립적으로 구조화된 문서를 표현하는 W3C의 공식 표준이다. DOM은 또한 W3C가 표준화한 여러 개의 API의 기반이 된다.
DOM은 HTML 문서의 요소를 제어하기 위해 웹 브라우저에서 처음 지원되었다. DOM은 동적으로 문서의 내용, 구조, 스타일에 접근하고 변경하는 수단이었다. 브라우저 사이에 DOM 구현이 호환되지 않음에 따라, W3C에서 DOM 표준 규격을 작성하게 되었다.
DOM은 문서의 기반이 되는 데이터 구조에 제한을 두지 않는다. 잘 구조화된 문서는 DOM을 사용하여 트리 구조를 얻어낼 수 있다. 대부분의 XML 해석기와 XSL 처리기는 트리 구조의 이용에 대응해 개발되었다. 이 같은 구현에서는 문서의 전체 내용이 해석되어 메모리 저장되어야 한다. 때문에 DOM은 문서 요소가 임의적으로 접근되고 변경할 수 있어야 하는 응용 프로그램에 가장 적합하다. 한 번 해석 시 단 한 번의 선택적 읽기/쓰기가 이루어지는 XML 기반 응용 프로그램에서, DOM은 메모리에 상당한 부하를 가져온다. 이 경우처럼 속도와 효율적인 메모리 소비가 중요한 상황일 경우 SAX 모델이 장점을 가진다.”
위키백과에서는 위와 같이 설명하고 있습니다.
출처 : 위키백과
위와같이 하이라키 구조의 문서구조를 DOM이라고 합니다.
우리가 스크랩하기위한 웹페이지는 위와같은 DOM구조로 이루어져 있어서 이러한 구조를 잘 이해하는것은 웹페이지를 스크랩하는데 많은 도움이 될 것입니다.
Instead of wishing to see more doctors made by women joining what there are, I wish to see as few doctors, either male or female, as possible. For, mark you, the women have made no improvement - they have only tried to be "men" and they have only succeeded