본문 바로가기
반응형

전체 글77

파이썬을 이용한 웹스크레이핑(웹크롤링) 예제/requests와 beautifulsoup로 웹페이지 정보 추출하기 1. 시작하기 전에 앞서 requests와 beautifulsoup의 기본적인 사용법을 소개했다. 여기에서는 이를 활용한 실제 웹스크레이핑 예제를 다룬다. 참고로 앞선 글과 여기에서 소개하는 방법은 URL 주소를 통해 내가 원하는 웹페이지에 곧바로 접근이 가능할 때에만 사용할 수 있다. 무슨 말인지 예시를 한번 보자. 아래 URL은 코딩을 공부해본 사람이라면 누구나 한번쯤 들어가봤을 stackoverflow에서 태그가 python이고, 빈도(frequent) 기준으로 정렬한 질문 목록을 보여주는 페이지이다. https://stackoverflow.com/questions/tagged/python?tab=frequent&page=1&pagesize=50 URL의 구조를 자세히 보면, "/tagged/"와 .. 2021. 11. 30.
파이썬으로 웹 페이지에서 정보 추출하기(웹스크레이핑, 웹크롤링)/Request와 Beautifulsoup 이용하기 서론 파이썬 입문 콘텐츠에서 가장 흔히 보이는 것이 바로 웹페이지에 게시된 정보들을 추출하여 활용하는 웹스크레이핑 방법인 것 같다. 이미 이에 대해 잘 설명하고 있는 수많은 자료들이 있으나, 필자 스스로 필요할 때 찾아볼 목적으로 이 포스팅을 한다. 본론 1. 필요한 라이브러리 웹스크레이핑을 하는 데 가장 기본적인 라이브러리는 requests와 beautifulsoup이다. requests는 이름 그대로 HTTP 요청을 간단하게 할 수 있는 라이브러리이다. HTTP 요청은 GET, POST, DELETE 등으로 다양한데, 웹스크레이핑을 할 때는 GET을 사용하여 웹페이지를 HTML 소스 형태로 불러온다. 그리고 beautifulsoup는 requests로 불러온 HTML 소스를 분석(parsing)하고,.. 2021. 11. 29.
삼성인터넷(안드로이드) 업데이트 후 주피터노트북 커널 연결 오류 발생시 해결법 1. 현황 삼성인터넷 업데이트 이후 파이드로이드를 이용해 주피터노트북을 사용하려 하니 제대로 연결이 안되고 있다.(파이드로이드 사용법, 파이드로이드에서 주피터노트북 사용하기 참조) 2. 해결방법 다행히 크롬 브라우저에서는 정상적으로 실행이 된다. 파이드로이드를 이용해 주피터노트북을 크롬 브라우저에서 실행하는 방법은 두 가지가 있다. 1. 기본 웹브라우저를 변경하는 방법 이 방법이 훨씬 간단하다. 설정>애플리케이션>Chrome으로 들어가, 기본 브라우저 앱을 Chrome으로 바꿔준다. 그런 다음 파이드로이드에서 주피터노트북을 실행해보면, 크롬 브라우저가 열리고, 커널 연결도 정상적으로 될 것이다. 2. 기본 웹브라우저를 변경하지 않는 방법 기본 웹브라우저를 변경하고 싶지 않다면 조금 번거롭지만 다른 방법이.. 2021. 11. 29.
파이썬을 이용한 데이터 분석 예제/코로나19 확진자 통계는 정말 조작되고 있을까?(판다스, 벤포드 법칙) 서론 요즘은 잠잠하지만 국가별 코로나19 확진자 수에 대해서 한동안 말이 많았다. 특히 중국 등 몇몇 국가들에 대해서 확진자 수를 조작, 은폐하는 것 아니냐는 의심의 눈초리들이 있었다. 우리가 알 수 있는 것은 공식적으로 발표된 통계 자료뿐이기 때문에 무엇이 진실인지는 알기 어렵다. 그런데 "벤포드 법칙"에 따르면 숫자 데이터들의 앞자리가 무엇인지를 분석하여 부정이나 조작을 탐지할 수 있다고 한다. 상당히 흥미로운 내용인 데, "벤포드 법칙"을 간편하게 적용해볼 수 있는 파이썬 라이브러리가 있다는 것을 알게 되었다. 코로나19 확진자 통계 자료에 이를 적용해보자. 본론 벤포드 법칙 소개 1. 벤포드 법칙이란 무엇인가? 벤포드 법칙은 정말 단순하다. 현실 세계에서는 수많은 수치 데이터들이 존재하는데, 그 .. 2021. 11. 27.
회사에서 pip install 오류날 때(SSLCertVerificationError) 업무에 사용할 만한 이런저런 파이썬 프로그램들을 만들어서 회사에서 사용하려는 사람들이 많을 것이다. 그런데 회사 PC에는 보안 프로그램이 많이 깔려 있고 네트워크 관련 보안 장치도 많다보니 파이썬이나 코드 편집 등을 설치하는 것부터가 쉽지 않다. 그 단계를 겨우겨우 지나서 프로그램 실행에 필요한 패키지를 설치하려다 보면 또 다른 장벽에 부딪친다. 필자의 경우 회사에서 pip install을 하려고 하면 아래와 같은 에러 메시지가 뜬다. WARNING: ... connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certifi.. 2021. 11. 26.
파이썬에서 코드 한줄로 리스트(딕셔너리, 집합, 제너레이터) 만들기/리스트컴프리헨션, list comprehension 서론 파이썬의 기초를 배우고 있는 사람이라면 아래와 같은 코드를 한번쯤 보았을 것이다. 반복문을 이용해 리스트를 만드는 방법으로, 대부분의 튜토리얼에서 이 방법을 먼저 선보이고 있는 것 같다. text = 'abc' my_list = [] for i in text: my_list.append(i) 예제에서는 문자열 'abc'의 각 문자를 my_list라는 리스트에 담고 있는데, 그러기 위해서 먼저 빈 리스트를 my_list 변수로 선언한 뒤에, 문자열 'abc'의 각 문자를 순회하면서 list의 append 함수를 이용해 리스트에 더해주고 있다. 여기에서, 리스트에 담을 원데이터는 예제와 같은 문자열뿐만 아니라 무엇이든 될 수 있다. 리스트의 리스트, 데이터프레임의 리스트 등등 활용도는 무궁무진하다. 크.. 2021. 11. 26.
반응형