일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- cluster
- Apple
- 나스닥
- 티스토리챌린지
- 애플
- esp32
- 배당
- Home Assistant
- 오블완
- SK텔레콤
- Python
- RS-485
- MQTT
- 월패드
- matter
- homebridge
- 힐스테이트 광교산
- 코스피
- 홈네트워크
- 현대통신
- 국내주식
- 파이썬
- 해외주식
- 매터
- 미국주식
- raspberry pi
- Espressif
- ConnectedHomeIP
- 공모주
- Bestin
- Today
- Total
목록Data Analysis/Data Engineering (19)
YOGYUI
Web Crawling - Get historical data of stock index from Yahoo Finance 야후 파이낸스 (yahoo finance)는 개발자들이 API로 만들어놓은게 워낙 많아서 굳이 직접 구현할 필요는 없다 (파이썬만 해도 yfinance, Yahoo_fin 등 다양한 종류의 패키지가 존재하므로 사용자 입맛에 맞게 선택해 사용하면 된다) 어차피 야후에서 공식적으로 제공하는 Web API는 없어서 대다수 패키지는 야후 파이낸스 홈페이지 HTML에서 원하는 정보를 웹스크래핑해오는 방식을 취하고 있으므로 웹페이지 변경 시 패키지도 같이 업데이트해야하는 단점이 있으므로, 웹크롤링을 직접 구현해보도록 하자 (어차피 크롤링 연습 포스팅의 일환 ㅎㅎ) ※ 이 글에서는 여러 주가 지..
https://biz.chosun.com/topics/topics_social/2022/03/23/HWGCTNQ6ORCTXBUVDU3PZ72CDU/ 코로나19 신규 확진 49만881명…국민 1000만명 감염됐다 코로나19 신규 확진 49만881명국민 1000만명 감염됐다 biz.chosun.com COVID-19 오미크론 변이의 국내 확산세가 좀처럼 누그러들지 않더니, 3월 23일 기준 누적 확진자가 결국 1,000만명을 돌파했다고 한다 2022년 3월 23일 오전 9시 18분 기준 통계 누적확진자: 1,0427,121명 누적사망자: 13,432명 일전에 작성한 공공데이터포털::코로나19 감염현황 데이터 조회 (REST API) 글에서 작성한 파이썬 코드를 재활용해서 대한민국 코로나19 확진 및 사망자 ..
앞서 공공데이터포털에서 대기오염정보를 조회하는 예시를 작성해봤는데(링크), API의 서비스 중 "측정소별 실시간 측정정보"를 호출하기 위해서는 '측정소 이름'을 정확히 기재해야 결과가 제대로 나왔다 API 명세서에 측정소 이름에 대한 정보는 없으며, 에어코리아 홈페이지의 "측정소 정보"에서 지역별 측정소의 이름과 주소 정보를 확인할 수 있다 URL: https://airkorea.or.kr/web/stationInfo?pMENU_NO=93 전체 조회 후 엑셀로 저장하는 방법(a.k.a. 노가다)이 가장 보편적이겠지만, 간단한 자바스크립트 및 파이썬으로 스마트하게 자동화할 수 있다 1. 웹페이지 소스 확인 브라우저의 개발자 도구에서 제어하고자 하는 컨트롤들에 해당하는 태그들을 찾아보자 (구글 크롬: 단축키..
공공데이터포털에서 전국의 대기오염정보를 가져와보자 공공데이터포털 관련 글을 많이 쓰다보니 서론 쓰는 것도 힘들다 1. API 활용신청 정식 데이터 타이틀은 "한국환경공단_에어코리아_대기오염정보" URL: https://www.data.go.kr/tcs/dss/selectApiDataDetailView.do?publicDataPk=15073861 2020년 12월에 공공데이터포털에 등록되었는데, 8000건이 넘게 활용신청된 아주 따끈따끈하고 핫한 API !! 미세먼지가 1년 내내 우리를 괴롭히니 어쩔 수가 없는건가 ㅠㅠ API 활용신청(방법은 링크 참고)하고 인증키 획득 인증키를 메모장에 복사해두자 2. API 명세 확인 API 명세서는 워드 문서로 제공되는데, 상세하게 기입되어 있어 문서 한장만으로도 충..
Get Corporations List Classified by Sectors from DART(fss) [시리즈] 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (1) 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (2) 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (3) 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (Final) 11. 기업 객체 정보 가져오도록 스크립트 수정 테이블에서 기업 이름 및 기업 고유 코드 (8자리 문자열), 섹터 id를 함께 가져오도록 javascript를 수정하도록 하자 [run_code.js] /* * 필요한 함수 선언 */ // jsTree 노드의 부모 노드들의 id와 text 어레이로 반환 function fnG..
Get Corporations List Classified by Sectors from DART(fss) [시리즈] 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (1) 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (2) 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (3) 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (Final) 7. 업종에 기업이 존재하지 않을 경우에 대한 예외처리 전체 트리노드를 크롤링하다보니 미처 고려하지 못했던 문제를 발견했다 특정 업종의 경우 해당 업종에 속하는 기업이 아예 없는 경우가 있는데, 이 경우 테이블 아래의 페이지 탐색 태그 () 자체가 없어서 코드에 예외가 발생했다 앞서 javascript에서 함수 두 개를 다..
Get Corporations List Classified by Sectors from DART(fss) [시리즈] 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (1) 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (2) 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (3) 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (Final) 4. 트리 노드 위계구조 파악 업종 정보 트리의 위계구조(hierarchy)를 함께 가져와야 나만의 서비스를 만들기 편하다 jsTree 노드 객체의 부모 노드의 정보는 객체 내부에 parents 속성으로 조회할 수 있다 예를 위해 '곡물 및 기타 식량작물 재배업' 최하위 노드에 접근해보자 var tree = $j("#bus..
Get Corporations List Classified by Sectors from DART(fss) [시리즈] 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (1) 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (2) 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (3) 웹크롤링 - DART 기업개황 업종별 기업 리스트 가져오기 (Final) 주식 투자할 때, 뉴스나 소셜미디어 혹은 입소문 등으로 유망한 업종(섹터)을 알게되면 해당 업종에서 활동하는 기업들을 리스트 업한 뒤에 성장가능성이 높은 종목을 택해서 투자하는게 아주 일반적인 프로세스다 업종별 기업 리스트는 각 증권사 HTS나 MTS 앱을 통해 쉽게 알아볼 수 있고, 포털사이트나 증권 정보 사이트 등에서도..
공공데이터포털(data.go.kr)에서 한국예탁결제원이 제공하는 국내 주식시장과 관련된 다양한 정보들을 가져와보자 (KSD 증권정보포털인 SEIBro의 API, api.seibro.or.kr) 1. 공공데이터포털 API 활용신청 데이터 타이틀은 "한국예탁결제원_주식정보서비스", URL은 아래 링크 참고 https://www.data.go.kr/data/15001145/openapi.do 1.1 활용신청 활용신청 버튼을 클릭 1.2. 활용목적 기입 1.3. 상세기능정보 선택 특별한 사유가 아니라면 전부 선택해주자 (서버 과부하를 우려해서 그런가, 일일 트래픽이 기능별로 100회로 한정되어 있다 ㅠ) 1.4. 활용신청 저작자표시 동의 체크박스 클릭 수 활용신청 2. 인증키 확인 [마이페이지 - 오픈API -..
금융감독원의 전자공시시스템(DART) 홈페이지(https://dart.fss.or.kr/)에서 '최근공시' 메뉴를 활용하면 최근에 전자공시된 모든 유형의 문서를 확인할 수 있다 (시간 - 회사명 - 제출인 정보 제공) 기능은 '최근공시'이지만 검색하고자 하는 날짜를 선택할 수 있기 때문에 특정 요일에 공시된 모든 문서를 리스트업할 수 있다 글을 쓰고 있는 2021년 10월 1일 현재까지는 OpenAPI인 OPENDART로는 제공되지 않는 기능이기 때문에 DART 웹페이지에서 Python을 활용해서 크롤링하는 코드를 작성해보자 1. 웹구조 분석 1.1. URL 특정 날짜를 선택하면 URL이 다음과 같이 변경된다 https://dart.fss.or.kr/dsac001/mainY.do?selectDate=20..
배경 설명을 하자면 너무 길어지니 방법론에 대해서만 기술하도록 한다 URL request 후 javascript가 렌더링된 결과를 얻기 위해 requests-HTML 라이브러리를 사용한다 https://docs.python-requests.org/projects/requests-html requests-HTML v0.3.4 documentation Requests-HTML: HTML Parsing for Humans (writing Python 3)! This library intends to make parsing HTML (e.g. scraping the web) as simple and intuitive as possible. When using this library you automaticall..
대한민국 금융감독원의 기업정보전자공시시스템(Data Analysis, Retrieval and Transfer system, DART)는 개인, 기업, 기관 누구든지 공시되어 있는 공시보고서 원문을 쉽게 열람할 수 있는 OpenAPI 서비스인 OPENDART를 제공하고 있다 연혁을 보면 OPENDART는 2020년 4월부터 개시된 서비스이니 상당히 따끈따끈한 신종 Open API라 할만하다 공시자료 읽지 않는 자, 주식투자하지 말라 심지어 파이썬 패키지로도 개발되어 있다 https://dart-fss.readthedocs.io/en/latest/ DART-FSS — dart-fss documentation v0.3.10 documentation © Copyright 2021, Sungwoo Jo Revi..
공공데이터포털 Open API 목록을 훑어보던 중, 한국전력공사에서 제공하는 '전기차 충전소 운영정보'가 있어서 한번 구현해봤다 내년에 새 집 입주할 때 잔금 다 치르고 자금상황이 좀 안정화되면 전기차 한 대 뽑을까 계획중인데, 충전소 관련된 어플을 직접 만들어볼까 고민중~ 1. 공공데이터포털 API 활용신청 데이터 타이틀은 "한국전력공사_전기차 충전소 운영정보", URL은 아래 링크 참고 https://www.data.go.kr/iim/api/selectAPIAcountView.do API 활용신청(방법은 링크 참고)하고 인증키 획득 서비스 URL: http://openapi.kepco.co.kr/service/EvInfoServiceV2/getEvSearchList 요청 변수는 다음과 같다 특정 주소..
회사에서 사원별 공수(Man Hour) 관리 프로그램을 하나 만들었는데, 공휴일에는 입력이 안되게 만드는 기능이 필요하게 됐다 파이썬 써드파티 라이브러리 종류도 몇 개 있어 찾아봤는데, 중국의 국경일을 기반으로 한국의 실정에 맞게 변환해야 하는 경우가 대부분이라 번거로울 뿐만 아니라 대통령 선거같은 이벤트나 임시공휴일은 유저가 따로 입력해야 하는 불편함이 있다 확실한 건 웹크롤링인데, (ex: 주식시장 개장일) 공공데이터포털에서도 API 몇 개가 공개되어 있어서 그 중 한개를 사용하도록 했다 1. 공공데이터포털 API 활용신청데이터 타이틀은 "특일 정보", URL은 아래 링크 참고https://www.data.go.kr/tcs/dss/selectApiDataDetailView.do?publicDataPk..
1. Introduction 지난 2월 24일 빅데이터분석기사 필기시험 1회 응시 접수자를 대상으로 2회 시험 고사장 우선 변경 이벤트가 있었다 (1회 시험은 코로나19 확산때문에 취소됐었는데... 2회도 무사히 치러질지도 의문 ㅠ) www.dataq.or.kr/www/board/view.do?bbsKey=eyJiYnNhdHRyU2VxIjoxLCJiYnNTZXEiOjUwODA1MX0=&boardKind=notice 데이터자격시험 www.dataq.or.kr ※ 경기 지역 거주자들은 서울에서 치뤄야만 하는 슬픈 현실... 수원에서 제일 가까운 수험장을 찾아야하는데, 사이트가 제공하는 웹 UI는 한번에 하나의 고사장만, 그것도 아주 좁은 지역만 확대된 채로 보여줘서 (줌아웃도 안된다...뭔 API를 쓴거야...