본문 바로가기

크롤링

(6)
구글 스프레드시트로 RE100 대시보드 만들기 (2. 데이터 수집) 지난 1편에서는 구글 스프레드시트 기반으로 RE100 현황을 확인할 수 있는 대시보드를 기능 위주로 살펴보았다. 이번 글에서는 이번 대시보드 제작 과정에서 첫 단계에 해당하는 "데이터 수집" 단계에 대해서 알아볼 예정이다. 구글시트에서 웹 데이터 수집방법 구글 스프레드시트에서 웹페이지 데이터를 수집하는 방법으로는 크게 2가지가 있다. 이번 대시보드에서는 1주일에 한번씩 RE100 웹페이지를 크롤링해서 새롭게 추가된 기업이 있는지 체크하고, 있는 경우 데이터를 대시보드에 자동으로 반영한다. 이처럼 자동 스케쥴링 기능을 위해서 (자동으로 1주일에 한번씩 데이터를 수집) 데이터 수집을 위해서 앱 스크립트를 이용하였다. * 앱 스크립트는 확장 프로그램 → Apps Script를 클릭하게 되면 새 창이 뜬다. 준..
파이썬 - 오늘이 개장일일 때만 실행 금융/증권 관련 크롤링을 할 때는 오늘이 개장일인지 아닌지 판단해서, 개장일인 경우에만 함수를 실행해야 하는 경우가 있다. exchange_calendars 라는 라이브러리를 이용하면 아래와 같이 간단하게 코드를 작성할 수 있다. import exchange_calendars as ecals from datetime import datetime, timedelta def main(): XKRX = ecals.get_calendar("XKRX") # 한국 코드 if not (XKRX.is_session(datetime.now().strftime("%Y-%m-%d"))): return # 오늘 장이 아니면 종료하기 run_myjob() if __name__ == "__main__": main()
[파이썬 크롤링] 크롤링 코드 작성 시간을 두배로 단축시키는 2가지 팁 크롤링 할 때 가장 많은 시간이 소요되는 부분은 크롬 탭을 통해 url, xml http request를 분석하는 것이다. 크롬 탭을 열어서, 화면 새로고침을 하면서 현재 클라이언트가 어떻게 서버로 요청을 보내고 있는지 살펴보고, header 및 data 정보를 가져와서 코드를 작성하는 것이 꽤나 번거롭다. 아래 3가지 팁으로 이 과정을 매우 효율적으로 수행할 수 있다. 1) F5가 아니라 Reply XHR 활용 빠르게 F12로 개발자 도구에 들어가서, 크롤링하고자 하는 XHR를 확인하기 위해 F5(새로고침)을 연타할 필요가 더이상 없다. 이미 로딩이 되어 있는 XHR이 있으면, Reply XHR를 활용하기 2) CURL to Python requests Converter 이용하기 크롤링하고 하는 XHR..
[파이썬] 일본 종목토론방 살펴보기 (ft. 전력회사 이렉스) 일본의 민자 전력발전사 이렉스 (eREX, 동경증시 1부 상장, T9517)의 최근 주가 심상치 않다... 6.21 기준 주당 2,027엔이었는데, 2주만에 2,774엔으로 급등했다. 2주간 무려 36%나 올랐다. 도대체 왜 이렇게 올랐을까, 일본 사람들은 어떤 생각으로 이 종목에 투자하는지 궁금해졌다. 우리나라 상장사의 경우 네이버 종목토론방을 통해서 간략하게나마 투자자들의 심리를 엿볼 수 있는데, 일본에도 그런 커뮤니티가 있을까 궁금했다. 찾아보니 있었다. 약 1개의 글 단위로 하나의 쓰레드 (Thread)가 있고, 이번에 급등한 주의 6.5 ~ 7.1 기간동안의 글들이 모인 쓰레드가 있다. 사람들이 글을 올리면, 다른 사람들은 공감/비공감을 클릭할 수 있다. 약 1,000개의 글이 올라와 있는데, ..
[파이썬] RE100 선언한 기업 리스트 가져오기 요즘 친환경, RE100이 대세다. RE100을 선언하는 기업이 하나 둘씩 늘어나고 있다. RE100 은 Renewable Energy 100%의 약자로, 그 기업이 사업활동을 수행하는 데 사용하는 모든 에너지를 재생에너지로 사용하겠다는 약속이다. '21.6월 기준으로 전 세계 약 300여개 기업들이 RE100과 관련된 자발적 공약을 선언하였다. 예를 들어 '2025년까지 70%, 2026까지 100% 달성할거다' 식이다. 무엇을 왜 만들었는가? RE100 선언한 기업의 현황을 체계적으로 파악하고 싶었다. 오늘 기준으로 몇개의 기업이 RE100을 선언했으면, 3개월 뒤 시점 기준으로는 기업이 몇 개 추가되었는지 궁금하다. 그럴러면 특정 시점 기준으로 RE100 기업 리스트를 정리하고, 저장해 두어야 한다..
[VBA] HTML Table 크롤링 (HTML Object Library, XML) 코드 'html table 뽑아내는 vba 코드 ​ Sub Get_table() Dim ws As Worksheet, results(), i As Long, s As Long Dim TK As String Dim LastRow As Long Dim html As MSHTML.HTMLDocument Dim data, trow, td As Object ​ Dim split1() As String, split2() As String, split3() As String, split4() As String 'LastRow = Worksheets("kmtc").Cells(Rows.Count, 3).End(xlUp).Row Dim URL1, URL2, URL3, FINAL As String ​ Set html = N..