멋쟁이 사자처럼 AI 스쿨 TIL-10

김영민·2022년 10월 4일
0

마지막 페이지과 그 내용들까지 스크래핑

콘다에서 Requests, BeautifulSoup4, Tqdm 설치

Requests
-> conda install –c anaconda requests
BeautifulSoup4 : 읽어온 웹 사이트의 HTML 문서를 해석하는 목적
-> conda install –c anaconda beautifulsoup4
Tqdm : 진행상황을 시각화 한 것, 반복되는 오래 걸리는 작업을 할 때 주로 사용
-> conda install –c conda-forge tqdm

더 쉽게 스크래핑 하는 방법
json 형식으로 되어있는 페이지는 api로 수집
->preview

with -> 파일 업로드할 때 주로 사용
lxml과 html은 BeautifulSoup을 사용

네이버 증권 게시판에 글을 쓰면 그 글의 저작권 네이버에 있다 =>1 나에게 있다=>2
-> 데이터베이스권은 네이버에 있으며 저작권은 글쓴이에게 있다.

callback 은 지워도 된다.

Referer : 어디서 왔는지 설정해주는 것.

웹스크래핑 하기 전 수두
1) network에서 페이지 링크 형식 복사해 가져오기
2) 첫 번째 페이지의 HTML문서 읽기
3) selector로 페이지 내의 목록 번호, 링크 위치 파악 후 데이터 가져오기 / 리스트에 저장
4) 링크 하나씩 문서 가져오기 반복 (for문)
5) selector로 페이지 내의 분류 정보와 내용 위치 파악 후 데이터 가져오기
6) f-string을 사용하여 페이지를 바꾸는 query string을 수정해서 다른 페이지 불러오기
7) 3~6 과정 반복 / 페이지가 없으면 멈추기(get에서 오류 발생 시)

서울 120 목록을 수집할 때 tqdm을 사용할 수 없다면 ?
-> while로 수집할 경우 범위가 정해져있지않아서 어렵기 때문이다.

테이블이 있는지 확인
table = pd.read_html(base_url, encoding="utf-8")
table[0]
상세정보(링크) 까지 추출하려면 requests 이용
태그에 링크 정보
status_code를 통한 응답코드 확인 200 == OK
html 태그를 파싱해 올 수 있도록 합니다.
html = bs(response.text)
태그안에서는 띄어쓰기가 가능하지만, BeautifulSoup에서는 .으로 연결

try except 구문

T == transpose()
-> 전치 행렬 : 행과 열을 바꿔줌

profile
배운걸 다 흡수하는 제로민

0개의 댓글