반응형
파이썬을 통해서 엑셀을 저장할 경우가 많은데요. 오늘은 이 때 사용할 수 있는 여러 기능에 대해서 알아보겠습니다. 판다스 엑셀에 저장하기 판다스에서 엑셀에 저장할 때 여러 데이터 프레임을 각각의 시트에 넣어 하나의 파일로 저장하거나 이쁘게 하기 위해서 열 넓이를 조절해야 할 경우가 있을 때 사용할 수 있는 코드입니다. writer를 통해서 순서대로 시트에 넣을 수 있는데요. 먼저 각각의 데이터 프레임(df1, df2)를 각각의 시트에 넣는 코드입니다. df.to_excel을 할 때 writer를 사용합니다. with pd.ExcelWriter(파일명.xlsx) as writer: # use to_excel function and specify the sheet_name and without index d..
파이썬에서 크롤링할때 Timeout 에러가 발생하는 경우가 있습니다. TimeOut 파이썬의 request에서 사이트를 크롤링 할 때 여러가지 이슈로 Timeout이 발생하게 됩니다. 예를 들어 서버가 응답을 주지 않거나, 아니면 서버에서 차단 당하는 형태 등으로 timeout이 발생하게 됩니다. connection이 established 될 때까지 기다리는 시간입니다. 위의 그림을 참고해보면 SYN을 보내고 상대방에게서 ACK가 올 때까지 기다리는 시간을 뜻하는데요. 즉 최초 연결을 하지 못하고 기다리다가 timeout이 생길 수 있습니다.. 이 외에도 접속후에도 동일한 이슈로 timeout이 발생할 수 있습니다. Request Timeout 처리방법 파이썬 공식문서에 따르면 request는 따로 타임..
네이버의 뉴스를 API로 크롤링하는 방법을 알아보겠습니다. 먼제 네이버 디벨로퍼에 들어가서 API를 신청해야 합니다. 네이버 API 신청하기 https://developers.naver.com/main/ NAVER Developers 네이버 오픈 API들을 활용해 개발자들이 다양한 애플리케이션을 개발할 수 있도록 API 가이드와 SDK를 제공합니다. 제공중인 오픈 API에는 네이버 로그인, 검색, 단축URL, 캡차를 비롯 기계번역, 음 developers.naver.com 그다음 하단에 서비스 API를 신청합니다. 이 후 검색 API에 대해서 등록을 합니다. 이 제 이 api를 파이썬으로 불러와야 하는데요. 방금 발급받은 클라이언트 ID와 패스워드를 저장해 놓습니다. # 네이버 검색 API 예제 - 블로..
텔레그램 챗봇은 botfather에서 설정이 가능한데요. /help를 누르면 각종 봇 설정을 할 수 있습니다. 챗봇 설정하기 각종 설정은 botfather에서 설정이 가능한데요. 예를 들어 setuserpic을 하면 사진을 변경할 수 잇습니다. 그리고 /setdescription을 입력하면 초기 시작할 때 화면을 추가할 수 있는데요. 이렇게 입력하면 채팅을 시작할때 아래와 같이 메시지가 나오게 됩니다. 이렇게 대기화면이 변경된 것을 확인할 수 있습니다. 이런 각각의 명령어를 통해서 챗봇의 설정을 변경하는 것이 가능합니다. 그리고 혹시 chatbot관련 메시지가 동작하지 않을 경우 버전을 낮춰서 실행할 필요가 있습니다.
youtube API 사용을 위해 설정을 하는 방법을 알아보겠습니다. youtube API 먼저 사용하기 위해서 구글 클라우드 플랫폼에 들어갑니다. https://console.cloud.google.com/ Google 클라우드 플랫폼 로그인 Google 클라우드 플랫폼으로 이동 accounts.google.com API키는 다시 안보이기 때문에 잘 저장해 놓습니다. 그리고 이를 통해서 다양한 서비스를 제공할 수 있습니다. 아래처럼 실시간 댓글 크롤링을 할 수 있습니다. import pytchat #실시간 댓글 크롤링 import pafy #유튜브 정보 import pandas as pd api_key = 'api' #gcp youtube data api 에서 api key 생성 pafy.set_api..
파이썬 판다스에서 합치기를 할 경우 append 에러가 발생하는데요. 판다스 Append AttributeError: 'DataFrame' object has no attribute 'append'. Did you mean: '_append'? 기본적으로 판다스에서 쉽게 합치는 방법은 append를 사용하는 것인데요. import pandas as pd, os base_dir = 'dir' df_sum = pd.DataFrame() # 빈 DataFrame을 만듦. for fname in os.listdir(base_dir): df_temp = pd.read_excel(os.path.join(base_dir, fname)) df_sum = df_sum.append(df_temp) 이 에러의 원인은 최근에..