본문 바로가기

웹크롤링

파이썬 네이버 뉴스 기사 크롤링하기: 초보자도 실행할 수 있는 코드 이전에 뉴스 알림 봇을 만드는 내용을 작성했던 적이 있습니다. 당시에는 네이버 모바일 버전에서 뉴스 기사를 가져오는 방법을 사용했었는데, PC 버전에서는 어떻게 할 수 있는지 여쭤보시는 분이 계셔서 이번 글을 작성하게 되었습니다. 주피터 노트북만 설치되어 있다면 초보자도 따라서 실행할 수 있는 코드니까, 한번 실행해보시면 재미있을 거예요. 파이썬 설치 방법이 궁금하시다면 이 글은 참고해주세요. [파이썬] 파이썬 아나콘다 설치 방법, 파이썬 설치 방법 오늘은 파이썬 아나콘다를 설치하는 방법을 알아보겠습니다. 파이썬은 공식 홈페이지인 python.org에서 무료로 다운로드할 수 있지만 업무 자동화, 데이터 분석 등과 같은 일을 하기 위해서는 많은 추가 라이브러.. hogni.tistory.com 주피터 노트.. 더보기
[웹크롤링] URL에 한글을 넣었더니 문제가 발생했다: 퍼센트 인코딩(percent-encoding)을 알아보자 웹브라우저에서 지금 보고 있는 사이트의 주소를 복사해서 다른 곳에 붙여 넣었더니, 한글은 온데간데없이 사라지고 왠 %로 시작하는 이상한 문자가 대신 들어가 있는 것을 본 적이 있으신가요. 바로 URL 인코딩 때문입니다. 파이썬으로 크롤링을 진행할 때도 이 한글이 종종 문제가 되는데요. 오늘은 그 해결 방법을 알아보겠습니다. 퍼센트 인코딩이란 퍼센트 인코딩(percent-encoding)은 URL에 문자를 표현하는 문자 인코딩 방법으로 영문자, 숫자, 몇몇 기호만을 사용하여 문자를 나타냅니다. 이 외에 한글, 한자, 특수문자 등은 사용할 수 없습니다. 때문에 파이썬에서 한글 포함된 URL 주소에 요청을 보내면 오류가 발생하게 됩니다. 다행히 이 오류를 피하는 방법이 있습니다. 첫 번째 방법은 한글 텍스트를.. 더보기
크롤링이 차단되었다면 유저 에이전트(User Agent)를 지정해보자, 크롤링 차당 방지법 크롤링을 하다 보면 종종 페이지에서 아무것도 받아오지 못해서 막히는 경우가 생깁니다. 여러 가지 이유가 있을 수 있겠지만 본인이 잘못한 게 없다면 대개 서버에서 차단을 당했기 때문입니다. 서버는 User Agent 검사 등의 방법으로 일반 사용자(사람)와 봇을 구분하여 차단할 수 있습니다. 사람이 아니라고 의심이 되면 접속을 차단하는 것입니다. 봇이 악의적인 목적을 가지고 서버에 많은 부하를 주어 다른 사람들이 피해를 입으면 안 되니까요. 그렇다면 해결 방법은 사람인 척하는 것입니다. 이때 가장 쉬운 방법은 Header에 User Agent 정보를 만들어서 보내는 겁니다. 유저 에이전트란 브라우저가 웹사이트에 연결을 시작할 때 전달되는 기기 정보로 브라우저의 유형, 운영체제 등의 정보가 담겨있습니다. 예.. 더보기