본문 바로가기

분류 전체보기57

정적 크롤링과 동적 크롤링의 차이 1. 정적 크롤링과 동적 크롤링의 차이 - 셀레니움을 이용할 경우 정적 페이지와 동적 페이지를 모두 크롤링 할 수 있다는 장점이 있지만, 상대적으로 속도가 느림구분정적 크롤링동적 크롤링사용 패키지requestsselenium수집 커버리지정적 페이지정적 / 동적 페이지수집 속도빠름상대적으로 느림파싱 패키지beautifulsoupbeautifulsoup / selenium 2. 셀레니움이란?- 다양한 브라우저 및 플랫폼에서 웹 응용 프로그램을 테스트할 수 있게 해주는 라이브러리- 웹 자동화 테스트 용도로 개발이 되었기에 실제 브라우저를 사용- 페이지가 변화하는 것도 관찰이 가능하기에 동적 크롤링에 사용할 수 있음 2024. 11. 5.
크롤링 실습: POST 방식 데이터 수집하기 # POST 방식 데이터 수집하기import requests as rqfrom bs4 import BeautifulSoupimport pandas as pdurl = 'https://kind.krx.co.kr/disclosure/todaydisclosure.do'payload = { 'method': 'searchTodayDisclosureSub', 'currentPageSize': '15', 'pageIndex': '1', 'orderMode': '0', 'orderStat': 'D', 'forward': 'todaydisclosure_sub', 'shose': 'S', 'todayFlag': 'N', 'selDate': '2024-11-05' }d.. 2024. 11. 5.
크롤링 실습: 테이블 형태의 데이터 수집하기 # 테이블 형태의 데이터 수집하기import pandas as pdurl = 'https://en.wikipedia.org/wiki/List_of_countries_by_stock_market_capitalization'tb1 = pd.read_html(url) # 테이블 형태의 데이터를 수집할 때는 pandas를 활용 2024. 11. 5.
크롤링 실습 : 금융 속보 제목 수집하기 # 크롤링 실습: 금융 속보 제목 수집하기import requests as rqfrom bs4 import BeautifulSoupurl = 'https://finance.naver.com/news/news_list.naver?mode=LSS2D&section_id=101&section_id2=258'data = rq.get(url) # HTML 가져오기html = BeautifulSoup(data.content) # HTML 요소에 접근하기 쉬운 BeautifulSoup 객체로 변경html_select = html.select('dl > dd.articleSubject > a')html_select[0]['title'][i['title'] for i in html_sel.. 2024. 11. 5.
크롤링 실습: 명언 수집하기 # 크롤링 실습: 명언 수집하기import requests as rqurl = 'https://quotes.toscrape.com/'quote = rq.get(url)quote # Response [200] -> 응답을 정상적으로 처리했다는 뜻quote.content # HTML 정보 확인from bs4 import BeautifulSoupquote_html = BeautifulSoup(quote.content) # HTML 요소에 접근하기 쉬운 BeautifulSoup 객체로 변경quote_htmlquote_div = quote_html.find_all('div', class_='quote') # 태그: div / class: quote 인 부분만 가져옴quote_div# 첫번째 .. 2024. 11. 5.
크롤링 사전 지식 크롤링을 하기 위해 사전에 알고 있으면 도움이 되는 지식 0. 크롤링  - 웹사이트의 정보를 수집하는 과정 1. 인코딩  - 인코딩은 사람이 사용하는 언어를 컴퓨터가 사용하는 0과 1로 변환하는 과정  - 디코딩은 이와 반대의 과정  - 인코딩 방법은 EUC-KR, CP949, UTF-8 등이 있음   1) EUC-KR    - 현대 한글에서 많이 쓰이는 문자 2,350개에 번호를 붙인 방법   2) CP949    - CP949는 11,720개 한글 문자에 번호를 붙인 방법    - 기존 EUC-KR보다 나타낼 수 있는 한글의 개수가 훨씬 많아짐   3) UTF-8    - 모음과 자음 각각에 코드를 부여한 후 조합해 한글을 나타냄    - 조합형은 한글뿐만 아니라 다양한 언어에 적용할 수 있다는 장점.. 2024. 11. 5.