내가 어떻게 NodeJS를 사용하여 dev.to에서 가장 좋은 발표 시간을 찾았는지 (+ 사용 가능한 코드)
20911 단어 showdevnodeproductivityjavascript
하지만 걱정하지 마세요. dev.to에 다른 라벨이 붙는 가장 좋은 발표 시간을 알 수 있는 방법을 찾았어요!
솔루션
NodeJS 스크립트를 만들었습니다.
비밀 번호
다음은 신기한 효과를 실현하는 코드입니다.
색인js
const puppeteer = require('puppeteer');
async function bestdays() {
const browser = await puppeteer.launch({});
days = []
var page = await browser.newPage();
const args = process.argv.slice(2)
await page.goto('https://dev.to/t/'+args[0]+'/top/year');
for(x = 0;x < 50;x++){
try{
let date1 = await page.$eval("#substories > div:nth-child("+x+") > div > div.crayons-story__top > div > div:nth-child(2) > a > time", element=> element.getAttribute("datetime"))
const d = new Date(date1);
let day = d.getDay();
days.push(day)
}
catch{}
}
function getAllIndexes(arr, val) {
var indexes = [], i = -1;
while ((i = arr.indexOf(val, i+1)) != -1){
indexes.push(i);
}
return indexes;
}
function max(input) {
if (toString.call(input) !== "[object Array]")
return false;
return Math.max.apply(null, input);
}
var indexes1 = getAllIndexes(days, 0);
var indexes2 = getAllIndexes(days, 1);
var indexes3 = getAllIndexes(days, 2);
var indexes4 = getAllIndexes(days, 3);
var indexes5 = getAllIndexes(days, 4);
var indexes6 = getAllIndexes(days, 5);
var indexes7 = getAllIndexes(days, 6);
dm = [indexes1.length, indexes2.length, indexes3.length, indexes4.length, indexes5.length, indexes6.length, indexes7.length]
dm2 = []
weekdays = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]
console.log("\n")
console.log("Best day: "+weekdays[dm.indexOf(max(dm))]+" with "+max(dm)+" top posts from last year")
for (j = 0; j < dm.length;j++){
if (j != dm.indexOf(max(dm))){
dm2.push(dm[j])
}
else{
dm2[j] = 0
}
}
console.log("Second best day: "+weekdays[dm2.indexOf(max(dm2))]+" with "+max(dm2)+" top posts from last year")
dm3 = []
for (j = 0; j < dm2.length;j++){
if (j != dm2.indexOf(max(dm2))){
dm3.push(dm2[j])
}
else{
dm3[j] = 0
}
}
console.log("Third best day: "+weekdays[dm3.indexOf(max(dm3))]+" with "+max(dm3)+" top posts from last year")
console.log("\n")
await page.close()
await browser.close()
}
bestdays();
스크립트를 실행하기 전에 NodeJS 및 Puppeteer가 설치되어 있는지 확인한 다음 터미널에 node index.js
및 게시 시점에 가장 적합한 태그(# 없음)를 입력하여 코드를 실행합니다.예:
node index.js webdev
.스크립트를 실행하면 다음과 같은 출력을 볼 수 있습니다.
가장 인기 있는 태그 20개의 게시일
스크립트를 직접 설정하고 싶지 않은 분들은 dev.to에서 가장 인기 있는 20개의 탭을 발표하기에 가장 좋은 날입니다.
Javascript
가장 좋은 날: 수요일, 작년 톱 댓글 10개
둘째 좋은 날: 목요일, 지난해 10위권
셋째 좋은 날: 토요일, 지난해 최고급 직위 10개
넥타이
네트워크 개발자
최고의 날: 수요일, 작년 14개 최고급 직위
둘째 좋은 날: 목요일, 지난해 11개 톱클래스
세 번째 좋은 날: 금요일, 작년에 7개의 최고급 직위가 있었다
지도의
가장 좋은 날: 수요일, 작년에 최고급 일자리 9개
두 번째 좋은 날: 토요일, 작년에 최고급 일자리 9개
셋째 좋은 날: 목요일, 지난해 최고급 직위 8개
리액션
베스트 데이: 수요일, 지난해 12개 톱클래스
둘째 좋은 날: 토요일, 지난해 최고급 직위 10개
세 번째 좋은 날: 목요일, 작년에 최고급 일자리 9개
활용단어참조
베스트 데이: 화요일, 지난해 12개 톱클래스
둘째 좋은 날: 일요일, 지난해 12개 톱클래스
셋째 좋은 날: 월요일, 지난해 최고급 직위 8개
생산성
베스트 데이: 수요일, 지난해 12개 톱클래스
둘째 좋은 날: 월요일, 지난해 11개 톱클래스
세 번째 좋은 날: 금요일, 지난해 최고급 직위 10개
CSS
최고의 날: 수요일, 작년 14개 최고급 직위
둘째 좋은 날: 화요일, 지난해 최고의 직위 8개
셋째 좋은 날: 목요일, 지난해 최고급 직위 8개
드워스
베스트 데이: 수요일, 지난해 12개 톱클래스
두 번째 좋은 날: 금요일, 작년에 최고급 일자리 9개
셋째 좋은 날: 토요일, 작년보다 7개 톱클래스
토론
베스트 데이: 금요일, 지난해 11개 톱클래스
둘째 좋은 날: 월요일, 지난해 최고급 직위 10개
세 번째 좋은 날: 수요일, 작년에 7개의 최고급 직위가 있었다
사업.
베스트 데이: 화요일, 지난해 11개 톱클래스
둘째 좋은 날: 월요일, 지난해 최고급 일자리 9개
셋째 좋은 날: 수요일, 지난해 최고의 직위 8개
개원
베스트 데이: 수요일, 지난해 11개 톱클래스
둘째 좋은 날: 월요일, 지난해 최고급 일자리 9개
세 번째 좋은 날: 금요일, 지난해 최고의 직위 8개
노트
가장 좋은 날: 일요일에 작년 최고급 댓글 14개
둘째 좋은 날: 화요일, 지난해 최고의 직위 8개
셋째 좋은 날: 목요일, 지난해 최고급 직위 8개
HTML
베스트 데이: 수요일, 지난해 11개 톱클래스
둘째 좋은 날: 화요일, 지난해 최고급 일자리 9개
세 번째 좋은 날: 목요일, 작년에 최고급 일자리 9개
코드 초보자
베스트 데이: 수요일, 지난해 12개 톱클래스
둘째 좋은 날: 월요일, 지난해 최고급 일자리 9개
세 번째 좋은 날: 화요일, 지난해 최고의 직위 8개
AWS
최적기: 월요일, 작년 12개 톱 직위
둘째 좋은 날: 수요일, 지난해 최고급 직위 10개
세 번째 좋은 날: 화요일, 작년에 최고급 일자리 9개
타자 원고
베스트 데이: 화요일, 지난해 10위권
둘째 좋은 날: 월요일, 지난해 최고급 일자리 8개
셋째 좋은 날: 토요일, 지난해 최고의 직위 8개
안드로이드
베스트 데이: 화요일, 지난해 10위권
둘째 좋은 날: 수요일, 지난해 최고급 직위 10개
세 번째 좋은 날: 금요일, 작년에 7개의 최고급 직위가 있었다
활용단어참조
가장 좋은 날: 일요일에 작년 최고급 댓글 14개
둘째 좋은 날: 수요일, 지난해 최고급 직위 8개
셋째 좋은 날: 월요일, 작년보다 7개 톱클래스
github
최고의 날: 월요일, 작년 14개 최고급 직위
둘째 좋은 날: 화요일, 지난해 최고급 일자리 9개
세 번째 좋은 날: 금요일, 작년에 최고급 직위 6개
블록 체인
최고의 날: 월요일, 지난해 최고급 일자리 9개
두 번째 좋은 날: 금요일, 작년에 최고급 일자리 9개
세 번째 좋은 날: 토요일, 작년에 최고급 일자리 9개
다른 넥타이
본문은 여기까지입니다. 여러분에게 도움이 되었으면 좋겠습니다!더 많은 프로그래밍 내용에 주목하세요.
Reference
이 문제에 관하여(내가 어떻게 NodeJS를 사용하여 dev.to에서 가장 좋은 발표 시간을 찾았는지 (+ 사용 가능한 코드)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/code_jedi/how-i-found-the-best-posting-times-on-devto-with-nodejs-usable-code-18m8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)