본문 바로가기

크롤링

파이썬 크롤링 (2) - 동적 웹사이트 파이썬 크롤링 지난 글에서 설명한 것과 같이 정적인 웹사이트는 requests만으로도 쉽게 HTML문서 전체를 볼 수 있다. 하지만, 동적으로 로딩되는 데이터가 있는 사이트는 requests로 크롤링 했을 때 내용이 거의 없게 된다. 그럴 때는 실제 브라우저에서 해당 페이지를 로딩하면서 크롤링을 수행하면 된다. pip install selenium selenium은 크롬, 엣지, 파이어폭스 등의 브라우저를 다 지원하긴 하지만, 설치되어 있고 사용할 브라우저에 맞는 브라우저 드라이버파일을 받아서 연동해주어야 한다. 크롬 등을 사용한 예는 많기 때문에 엣지로 하는걸 써보려고 한다. 먼저 edgedriver를 아래처럼 다운 받는다. PC에 설치되어 있는 edge브라우저의 버전과 일치하는지도 확인해준다. 압축을 풀고 msed.. 더보기
파이썬 크롤링 (1) - 파이썬 크롤링을 위한 기본 세팅 서버가 아닌 개인PC 윈도우에서도 많이들 하기 때문에 이 기준으로 간단히 써보고자 한다. 크롤링은 사실 모든 프로그래밍 언어로 다 가능하고, 크롤링의 기본은 웹페이지에 접속해서 해당 웹페이지를 읽는 것이기 때문에 아주 단순하다. 그런데 보통 크롤링이라고 했을 때는, 해당 크롤링 이후에 웹문서를 분석하고 필요 정보를 추출하고, 정보를 보관하고 배포하는 정도까지도 뭉뚱그려서 표현하기 때문에 쉽다가도 어려워지기도 한다. 이글에서는 단순히 웹페이지를 읽고, 필요 텍스트를 추출하는 정도까지만 다루려고 한다. 1. 소프트웨어 설치 파이썬 크롤링이니까 파이썬을 설치해야 된다. cmd창에서 python이나 python3, py 같은 명령을 실행시켜서 작동이 안되면 python이 설치되어 있지 않거나 python이 어딘.. 더보기
파이썬 웹크롤링 브라우저별 속도 테스트 Edge vs Chrome vs Firefox 크롤링이나 매크로를 만들기 위한 간단한 브라우저 테스트를 진행했다. 조건은 파이썬에서 bs4와 lxml, selenium을 사용하고 윈도우10에서 대충 돌려보는거다. 첫번째 시험에서는 edge 7.08초 chrome 6.85초 firefox 8.50초가 나왔다. 두번째 시험은 역순으로 진행했고 위와 같은 결과가 나왔다. 크롬과 edge가 거의 비슷한 속도가 나오고 파이어폭스가 가장 느리다. 이번엔 같은 브라우저로 3번씩 연속으로 시험해보기로 했다. 파이어폭스는 7.74 ~ 7.88초가 나왔다. 크롬의 경우 6.62 ~ 6.95초로 나왔다. Edge의 경우 6.40 ~ 6.53초로 가장 빠른 속도가 나왔다. 시험에 사용한 브라우저의 버전은 아래와 같다. 시험조건에 따라 시간은 단축되거나 더 늘어날 수도 있.. 더보기