3주차 : “파이썬으로 데이터 수집하기”발표자 : 이하린
2020.04.28
외부라이브러리사용
Requests, BeautifulSoup4
설치
파이참 Terminal 접속 : pip install 패키지이름
File>settings 에서도설치가능
업데이트
pip install - - upgrade 패키지이름
삭제
pip unstall패키지이름
데이터가져오기
Import패키지이름→설치한패키지에있는모든내용가져오기.
From패키지이름 import 하위모듈→특정한내용만가져오려면 from 명령어와함께사용
데이터가져오기
변수 = requests.get(“URL주소”)
변수→응답실패여부
변수.text → URL의소스코드
변수.elapsed →응답시까지걸린시간
변수 = BeautifulSoup(소스코드,‘html.parser’)
Html 소스코드를태그기준으로파싱하기
파싱 : 일련의문자열을유의미한단위로구분하기
* get함수를통해가져온소스코드는그냥문자열에불과함. 파싱을통해태그별로구분/ 데이터찾기가능.
데이터가져오기
선택자를이용해서선택자에해당하는데이터모두가져오기
→리스트형식으로변수에저장.
변수이름 = BS.select(“선택자”)
선택자 : div.inner/dt.title
여기서가져온데이터는소스코드임. →텍스트형식으로바꿔야함.
모든클립의데이터가져오기
임시변수만들고 for문이용해서가져오기
네이버뉴스에서데이터수집하기
코드로데이터에접근할경우브라우저에대한정보가없으면접속허가하지않음(anti-Crawling)
피하기위해서는 get에 headers = 추가해야함.
네이버뉴스에서데이터수집하기
한태그가여러개의클래스가질수도있음→검토필요
url→언론사까지선택되니까
Sp_each_title로해야함.
뒤에바로 .title 붙이면문자형태로저장가능
네이버뉴스에서데이터수집하기
여러페이지에있는기사데이터수집하기
이전의방법은한페이지안의기사만수집가능
네이버뉴스에서데이터수집하기
요청값을1,11,21…로증가시키면원하는만큼데이터수집가능.
변하는부분을변수로바꿔주는데문자와숫자는더할수없으므로문자형변환
네이버뉴스에서데이터수집하기
전체 for문안에서 n 증가시키기
Thank you
Top Related