본문 바로가기

javascript

(7)
Node.js 와 puppetter를 이용한 네이버 쇼핑 매크로 만들기 #1 네이버 쇼핑 매크로를 만들어 보자. 구글 크롬 브라우저의 헤드리스 버전인 Puppeteer를 이용하여 네이버 쇼핑 매크로를 만드는 과정을 공유해 보려 합니다. 네이버 쇼핑 매크로의 동작은 단순합니다. 네이버에 자동으로 로그인해서 원하는 상품 판매 페이지로 이동하여 재고 확인 후 상품 주문창으로 이동합니다. 결제수단을 선택하고 주문을 완료하는 것 까지가 매크로의 동작입니다. 네이버 로그인 상품 상세페이지 이동 재고확인 후 구매하기 클릭 결제수단 지정 후 결제하기 Puppeteer Puppeteer는 Node.js 환경에서 구동되는 백그라운드 작업용 크롬 브라우저 API입니다. 일반 브라우저와 다른 점은 화면을 제공하지 않고 프로그램 API로 동작을 제어할 수 있다는 점입니다. Puppeteer를 이용하면 ..
티스토리 블로그 발행일자를 과거일자로 수정하기 / 발행시각 감추는 방법 발행일을 과거로 돌릴 수 없다? 티스토리 블로그에서 글 등록 시 발행일을 과거 일자로 설정할 수는 없습니다. 그 이유는 납득이 갑니다. 만약 발행일자를 과거로 설정할 수 있다면 하루 만에 역사와 전통을 자랑하는 블로그를 뚝딱 만들어 낼 수 도 있을 테니까요. 정말 안될까? 과거에 발행했던 글을 수정하다가 잘못해서 현재일자로 발행을 눌러버렸습니다. 최초 발행일로 돌리고 싶었는데 방법이 없더라고요. 진짜로 발행일자 수정이 불가능한지 확인해 보았습니다. 먼저 티스토리 글 발행 시 서버로 전송되는 JSON 패킷을 확인해 봅니다. 티스토리는 글 발행 시 발행일자를 Epoch Time 형태로 변경하여 published 라는 키를 이용하여 전송합니다. 발행 시에 전송되는 데이터에서 published의 값을 과거 날짜..
ES6에 새롭게 추가된 자바스크립트 문법 톺아보기 #1 ECMAScript, ES6 그리고 Babel ES (ECMAScript) ECMAScript(줄여서 ES)는 ECMA International이라는 정보화 관련 국제 표준화 기구에서 정의한 자바스크립트 언어에 대한 표준화 명세입니다. ECMA International 이 매년 자바스크립트의 신규 문법이나 기능 명세(Spec)를 추가하면 구글, 마이크로소프트, 모질라 등의 브라우저 제조사에서 자사의 자바스크립트 엔진에 새로운 기능을 추가해서 배포합니다. 넷스케이프에서 최초로 자바스크립트를 자사의 브라우저에 탑재한 것이 1996년 이었고 ECMA Internaional 은 이듬해인 1997년 자바스크립트 표준화를 위해 ECMAScript 초판을 발행합니다. 2015년에 6판을 발행한 이후로는 매년 개정된 명세를 꾸준히 발행하고 있습니다. 가장 최근인 ..
티스토리 카테고리 링크 구글 애드센스 에러 해결하기 (광고 안보이는 현상) 애드센스 광고가 나왔다 안 나왔다 한다? 티스토리 블로그에 글을 꾸준히 작성해서 그 어렵다는 애드센스 고시를 어렵게 어렵게 통과했습니다. 이제 애드센스 사이트에서 광고 단위를 생성하고 어떻게 광고를 달아야 돈이 벌릴까를 고민하며 이리저리 만져보게 됩니다. 그런데 가끔씩 애드센스 광고가 나왔다 안 나왔다 하는 현상이 발견됩니다. 카테고리 목록에서 선택한 경우에 광고가 안나온다. 관련 카테고리 글 목록에서 클릭하여 본문을 열 경우에 애드센스 광고가 안 나오는 현상이 목격됩니다. 본문 하단의 카테고리의 다른 글 목록에서 클릭하여 오픈된 페이지에서도 광고가 나오지 않습니다. 저 말고 다른 티스토리 블로거의 사이트에서도 동일한 현상을 목격했습니다. 페이지 URL 이 오염되면 안 나온다? 검색엔진에서 유입되거나 블..
티스토리 블로그 본문 중간에 구글 애드센스 광고 자동으로 삽입하기 블로그 글 본문에 삽입된 애드센스 광고 글의 전체 맥락을 해치지 않는다면 블로그 글 본문에 구글 애드센스 광고를 삽입해도 무방하다고 생각하는 편입니다. 글의 길이가 충분히 길고 제공하는 콘텐츠의 내용이 풍부하다면 본문 중간에 삽입된 광고는 블로그 운영자와 방문자 모두에게 도움이 될 거라 생각합니다. 애드센스 광고 삽입 방법 블로그 글 본문에 애드센스 광고를 삽입하는 방법은 여러가지가 있습니다. 1) 티스토리 구글 애드센스 플러그인을 활용하는 방법도 있고, 2) 서식이나 외부 콘텐츠를 이용해서 직접 광고 코드를 본문 내에 삽입하는 방법도 있습니다. 두 가지 방법 모두 맘에 안 드는 부분이 있습니다. 구글 애드센스 플러그인의 경우 광고 삽입 위치를 내 마음대로 선택하는 것이 불가능 합니다. 광고 재게 위치를..
티스토리 블로그 이미지 그림자 효과 주기 이미지 그림자 효과 이미지에 box-shadow CSS 속성을 적용하여 테두리에 그림자 효과를 줄 수 있습니다. 티스토리 블로그 에디터에서 이미지에 효과를 줄 수는 없기 때문에 스킨의 CSS를 수정하거나 스킨에 Javascript 코드를 삽입하는 방법으로 이미지에 그림자 효과를 줄 수 있습니다. CSS box-shadow 속성 CSS box-shadow 속성의 문법은 다음과 같습니다. box-shadow: h-offset v-offset blur spread color h-offset 과 v-offset 은 필수로 지정해야 하는 속성 값이고 나머지 속성 값은 생략이 가능합니다. Value Description h-offset 그림자의 수평 위치 설정. 음수로 설정하면 왼쪽으로 이동시킵니다. (필수) v-..
운영 빌드 시 console.log 제거하기. 덤으로 no-console 에러도 해결 console.log JavaScript 프로그래밍 시 디버깅 목적으로 브라우저의 console.log 메서드를 자주 사용하게 됩니다. 사용하기 간편하고 애플리케이션의 동작에 직접적인 영향을 주지 않기 때문에 개발자 도구의 Debugger 보다 더 자주 사용하게 되는 것 같습니다. if(condition) { //... } else { console.log('이 메시지가 출력되면 절대 안된다!'); console.log('뭔가 잘못 되었다.'); } console.log 는 가장 간편한 디버깅 도구이긴 하지만 운영에 배포되는 어플리케이션에는 포함되지 않는 것이 좋습니다. 불필요한 코드 이기도 하고 보안 이슈가 발생할 가능성도 있습니다. 무엇보다 개발자가 신경을 안 썼다는 티가 나서 좋지 않습니다. no-..