본문 바로가기

앱스스크립트4

[GAS] cheerio를 이용한 Daum뉴스 크롤링 더보기 function getContent_(url) { return UrlFetchApp.fetch(url).getContentText() } function scraper() { const content = getContent_("https://news.daum.net/"), // 다음 뉴스 검색 URL $ = Cheerio.load(content), // 크롤링을 위한 Cheerio 선언 daum_news = $('.list_newsissue > li').toArray(); // 다음 뉴스 메인기사 태그를 daum_news에 배열에 담아라 let sht = SpreadsheetApp.getActiveSheet(), // 현재시트를 sht로 선언 titles = []; // 최종 배열들을 담을 tit.. 2023. 4. 19.
[GAS] sheets데이터를 html 문서를 작성해보자 https://www.youtube.com/watch?v=K6lRjCrdqis&t=1003s 오늘은 sheets에 있는 데이터를 html 문서화 하는 코드를 작성해보려고 한다. 나중에 웹앱을 시트에 있는 데이터를 통해 구성하려고 하면 시트에 있는 내용을 템플릿화해서 html 코드에 입혀주는 작업을 해야 하는데 오늘은 그 작업의 초기 단계라고 보면 된다. sales.html을 열어보면 태그 사이사이에 이런 것들이 있을 것이다. 이것은 gs에서 템플릿화하여서 키워드에 치환되게 된다. 이 사이에 들어가는 [치환]에 앱스스크립트의 내용이 템플릿트.evauate() 명령어로 html에 들어가게 된다. https://yeoncoding.tistory.com/46 [javascript] join() 함수 - 배열의 .. 2023. 4. 19.
[GAS] 중복없는 로또번호 만들기 https://www.youtube.com/watch?v=dX3krhu1PqM&list=PLxmyPu_Id2smCXbzw2IgsRpizPIaR8G-i&index=5 앱스 스크립트로 로또번호를 생성하는 코드이다. 기존에 본인이 했던 VBA로 만드는 코드에서는 Colection을 통해서 중복된 수가 나오면 중복된 수가 없을 때 까지 무한반복해서 로또 번호를 추출하곤 했다. 이 코드에서는 1부터 45까지 배열을 만든 후 이것을 복사하여 번호가 추출이 되면 그 번호를 빼곤 다시 추출하여 중복되는 수가 애초에 발생하지 않도록 하고 있다. EXCEL AND VBA님은 이것을 위해 JSON.stringify로 배열을 String화 한 후 다시 JSON.parse를 통해 배열의 사본을 위해 복사하는 코드를 만들었지만,.. 2023. 4. 17.
[GAS] 시트통합 매크로 https://www.youtube.com/watch?v=pdCE4gCr6q8&list=PLxmyPu_Id2smCXbzw2IgsRpizPIaR8G-i&index=2&ab_channel=EXCELANDVBA EXCEL AND VBA님의 시트를 통합하는 매크로이다. 엑사남님 유튜브 강의를 보면서 공부했듯 VBA GAS 님의 강의를 리뷰하면서 성장해 나가려 한다. 시트를 통합하는 매크로는 VBA에서 많이 하는 형태이다. 시트를 통합하기 위해서는 메인시트를 제외한 모든 시트를 순환하면서 데이터를 가져오는것이 포인트이다. 각 데이터 시트마다 헤드값 + 데이터로 구성이 되기 때문에 헤드는 최초에 한번만 들어가야 한다. if (first){ // 통합시트의 말머리를 가져오기 위한 작업 result = result.c.. 2023. 4. 3.