구글 스프레드시트에서 국내 종목의 주식 정보를 취득하는 함수입니다. 네이버 증권 개별 종목 메인 페이지와 일별 종목 페이지에서 가져왔습니다.google finance 함수처럼 직접 만든 것입니다. 사용법은 다음과 같습니다.
= get NaverStock (종목코드,x)
= get NaverStock (종목코드,x)
=getNaverStock(“종목코드”,”price”) 주가=getNaverStock(“종목코드”,”changepct”) 등락률=getNaverStock(“종목코드”,”change”) 전일대비=getNaverStock(“종목코드”,”volume”) 거래량=getNaverStock(“종목코드”,”yesterday”) 전일주가=getNaverStock(“종목코드”,”market”일시시장”)”
단점은 업데이트가 안된다는 점에서 업데이트를 수작업으로 해야 합니다. 종목 메인 페이지 이용
https://docs.google.com/spreadsheets/d/10xaMfpriT6G1d4hw94L6q_ozT0fogilVYb-S2dtw8-8/edit#gid=178704680
국내주가를 가져오는 국내주가 코스피, 현재가격, 전일대비, 임시등락률, 종목코드, 시장, 등락률, 총라인수, 2업데이트 일시, 21:08:06docs.google.com
사용한 내장 함수는 UrlFetchApp 클래스의 fetch 함수입니다. 이 함수는 웹 페이지를 텍스트로 긁어옵니다.자바스크립트 구문과 자바스크립트의 정규식 함수를 이용했습니다. 소스는 도구 메뉴의 스크립트 에디터에 있습니다. 제가 초보 프로그래머도 아니라서 소스는 허술하게 작성했어요. 소스를 공개했으니 정규식을 활용해서 다른 지표들도 수집할 수 있을 거예요.value 변수와 같이 return 값이 배열되면 구글 스프레드시트 아래 방향으로 셀이 채워집니다.item을 price와 change pct를 넣으면 그 값이 리턴됩니다.
IMPORTXML로 할 경우
=importxmlhttps://finance.naver.com/item/main.nhn?code=005930″,//div[@class=’new_totalinfo’]/dl[@class=’blind’]/dd”)
=importxmlhttps://finance.naver.com/item/main.nhn?code=005930″,//div[@class=’new_totalinfo’]/dl[@class=’blind’]/dd”)현재가 추출 부분 (A25는 IMPORTXML이 있는 셀 중 현재가 부분) = INDEX (REGEX EXTRACT (A25, “현재가 ([0-9,]+) 전일대비(상승|하락|보합)([0-9,]+)(플러스|마이너스)* ([0-9\.]+)%”, 1, 1)시트 함수로 할 경우 정규식 함수(REGEX EXTRACT)와 INDEX로 적절히 추출해야 합니다.인베스팅(Investing.com) 수집 함수인베스팅(investing) 주가정보 취득/구글 App 스크립트 함수로 구현 구글 스프레드시트에서 주가정보를 취득하기 위해 주로 사용되는 함수가 구글 파이낸스 함수입니다. 지원…m.blog.naver.com인베스팅(investing) 주가정보 취득/구글 App 스크립트 함수로 구현 구글 스프레드시트에서 주가정보를 취득하기 위해 주로 사용되는 함수가 구글 파이낸스 함수입니다. 지원…m.blog.naver.com인베스팅(investing) 주가정보 취득/구글 App 스크립트 함수로 구현 구글 스프레드시트에서 주가정보를 취득하기 위해 주로 사용되는 함수가 구글 파이낸스 함수입니다. 지원…m.blog.naver.com문제점 수정사항 주가 실시간 업데이트가 안되는 문제는 행을 삽입하여 삭제하는 방법으로 해결하였습니다.예약된 작업에 5~10분마다 실행할 수 있도록 등록해주세요.모든 종목의 시세가 필요한 사람이라면 다음 포스팅을 참고하세요.구글 스프레드시트에서 국내 주가를 가져오는 변경사항 구글 스프레드시트에서 국내 주가를 가져오는 방법에 대해 위에 포스팅에서 언급한 바 있습니다. 두…blog.naver.com@2021-01-31 하루 만에 실행할 수 있는 Urlfetch 함수의 실행 횟수가 정해진 것 같습니다. 오늘 갑자기 오류가 났어요. 이 방법으로 주가를 실시간으로 취득하는 것은 문제가 있다고 생각합니다. 위의 행을 삽입하고 삭제하는 방법으로 실시간 주가를 얻는 것은 사용하기 어려울 것입니다.@2021-03-23 코넥스 종목을 가져올 때 오류가 나는 것을 수정했습니다.수정한 부분은 117번 라인입니다.// <d>종목 코드 005930 코스피 </dd>varreg= /종목 코드 ([0-9A-Z]{6}) (코스피|코스닥)*/g;r =reg.exec(v); varmkt=r[2];// <d>종목 코드 005930 코스피 </dd>varreg= /종목 코드 ([0-9A-Z]{6}) (코스피|코스닥)*/g;r =reg.exec(v); varmkt=r[2];코넥스 종목은 <dd> 종목코드 005930 </dd> 다음과 같이 시장구분이 되어 있지 않으므로 (코스피|코스닥)*로 했습니다. * 는 정규식에서 앞에 있는 글자나 그룹이 없어도 된다는 뜻입니다.ABC*이렇게 하면 AB와 ABC 모두 검색됩니다.