PYTHON

220928 = Beatifulsoup, table

K.Y.PARK 2022. 9. 29. 17:28

# 반복문 for를 이용해서 여러페이지 수집가능
for page_no in trange(1,10) = trange를 사용해서 해당 페이지 수집가능

# 미니프로젝트 진행하기 ( 데이터수집 )

# BeautifulSoup = HTML / XML 파일로부터 데이터를 뽑아오기 위해 필요한 함수를 모아놓은 라이브러리

https://www.crummy.com/software/BeautifulSoup/bs4/doc/ = BeautifulSoup의 Doc.

# html.find_all("a")[1] = find_all을 이용해 a코드 모두 불러오기 뒤에 []로 가져올 데이터 갯수 정해주기

# BeautifulSoup를 통해 table 찾기 ( body > table.Nnavi ) / ( table.Nnavi > tr > td )

# table = pd.read_html(response.text) =  read_html으로 넣어주면 테이블로 반환해줌

# 1) url을 만든다 / 2) requests를 통해 html문서를 받아온다 / 3) read_html을 통해 table 태그를 읽어온다
  4) 결측행을 제거한다 / 5) 데이터프레임반환

# 한 페이지의 일별 시세 수집 ( df_item = get_day_list(item_code, page_no) )

# 해당 데이터의 마지막 날짜를 가져옴 ( last_day = df_item.iloc[-1]["날짜"]

# 해당 데이터의 마지막 날짜와 이전 데이터의 마지막 날짜를 비교
   맨 첫 데이터에는 이전 데이터 날짜가 없기 때문에 반복문 밖에서 초기화를 해주었음
   이전 데이터의 마지막 날짜와 현재 데이터의 마지막 날짜가 같다면 반복문을 빠져나감
   ( if last_day == curr_day : / braek )

 

출처 : 멋쟁이사자처럼 강의자료