2017년 12월 20일 수요일

양태호: [크롤링] 유튜브 플레이 리스트 총 시간.

양태호: [크롤링] 유튜브 플레이 리스트 총 시간.: [크롤링] 유튜브 플레이 리스트 총 시간. https://www.youtube.com/playlist?list=PL9gStYgm-otNJae7Ng5HWre9yfcjdvCE0 와 같이 리스트 목록의 총 재생시간을 구하는 것.. ...

[크롤링] 유튜브 플레이 리스트 총 시간.

[크롤링] 유튜브 플레이 리스트 총 시간.

https://www.youtube.com/playlist?list=PL9gStYgm-otNJae7Ng5HWre9yfcjdvCE0

와 같이 리스트 목록의 총 재생시간을 구하는 것..

크롤링이라기에는 너무 별로지만... 뭔가 url 넣으면 총 재생시간 나오는 그런 식으로 디벨롭해야 쓸만해질듯....

const looper = (i,ele,list)=>{
//console.log("ee",i,ele);
return {
   idx: i,
   ele: ele.innerText
}
};
const times = document.getElementsByClassName('style-scope ytd-thumbnail-overlay-time-status-renderer');
let res = [];
let i = 0;
for (time of times) {
res.push(looper(i,time,times));
i++;
}
res.reduce((sum,item,idx,list)=>{ const arr = item.ele.split(':'); const currSec = Number(arr[0])*60+Number(arr[1]); return currSec + sum;},0)/(60*60);

2017년 3월 10일 금요일

[ 삽질 노트 ] 17-03-10 maven war 배포시 리소스 갱신 안됨.

[ 삽질 노트 ] 17-03-10 maven war 배포시 리소스 갱신 안됨. 한 줄 요약 메이븐 프로젝트 WAR 배포가 비 정상적으로 잘 안될 때는 maven clean 을 한 후 다시 maven package 를 해보자. TL;DR 사내 프로젝트 API 작업을 하고 있다. 로컬에서 maven run 을 하고 테스트도 다 돌려서 잘 돌아가는 걸 확인했다. 그런데 해당 프로젝트를 WAR 패키징해서 서버에 배포하고 WAS를 실행시키면 여지없이 뻗어버렸다. 에러 메시지는 과거엔 있었지만 존재하지 않는 sql 혹은 Alias 가 중복 정의 되었다는 그런 메시지 들이었다.
alias ‘어떤 이름’ is already mapped to the value ‘다른 이름'

작업한 내용이 mybatis 샘플 mapper.xml 등의 위치 변경. mybatis 샘플 mapper.xml 등의 삭제. mybatis alias 수정 등이었다. 관련된 내용에 대한 메시지였기에 이것 저것 건드려 봄. 결과적으로 안되는데 계속 시도해서 시간만 버림. 패키징된 WAR를 까보니 이미 없어야할 xml maven clean 명령으로 프로젝트의 target 폴더를 리셋하고 다시 패키징해서 배포하니 잘 된다... #maven, #메이븐, #배포, #WAR, #java, #api, #mybatis, #마이바티스

2017년 2월 25일 토요일

[삽질 노트] Spring boot - main 설정에서 여러 개의 basepackages 이용하기.excutable WAR 배포하기

[삽질 노트] Spring boot - main 설정에서 여러 개의 basepackages 이용하기.excutable WAR 배포하기
## 한 줄 요약 ##
Spring boot 에서 @ComponentScan 에 basepackages 혹은 value 에 basepackage를 명시해 줄 떄는 반드시 루트로 잡아주자.....

## 남은 삽질 ##
excutable WAR 배포하기 - 잘 아시는 분 있으면 볼만한 곳이라도 좀 알려주셨으면...

## maybe TL:DR ##
  현재 회사에서 API 개발 작업을 하고 있다.
  그런데 어제 그제 잘 돌아가던 api가 완전히 먹통이 돼서 초기 로딩도 안되고 있는 것이다...
설정 관련된 걸 다 갈아 엎어 보았지만 나아지질 않았다.

계속 @Mapper 선언 해 놓은 부분들을 읽어들이질 못했다...

뾰족한 원인을 찾지 못하고 이틀 째 삽질을 했다. 금요일 저녁 8시 문득 스캔 관련된 부분이 문제이겠단 생각이 들었다.
Spring boot 을 최초 실행시키도록 선언해놓은 Application 클래스의 @ComponentScan 부분을 수정해보았다.

@ComponentScan(value="com.greenmango.example","kr.co.gmango")

이 부분이었는데 문제는 간단했다.

"com.greenmango.example" 이 부분에서 실질적인 basepackage 는 com.greenmango 였기 때문에 왠지 모르게 com.greenmango.example 내부도 scan을 하지 않았던 것이다.
이 생각을 못했던 이유는 분명히 애노테이션이 잡힌 부분들은 com.greenmango.example 이하였기 떄문이다.

어쩄든 내가 스프링의 스펙에 그만큼 미비한 부분이었다고 생각한다... 그래도 과장이나 됐는데 이러려고 개발자했나 자괴감 드는 이틀이었다... 시간이 너무나 없는 순간인데...

그래도 정신 바짝 차리고 달려보자!

2017년 2월 17일 금요일

Eclipse를 Windows 10 작업 표시 줄에 고정 - 아이콘 두 개 생기는 것 방지

Eclipse를 Windows 10 작업 표시 줄에 고정 - 아이콘 두 개 생기는 것 방지

  1. eclipse 바로 가기를 만들고 해당 바로 가기의 이름은 eclipse로 변경한다.
  2. 해당 바로 가기 우클릭 > 속성 > 바로 가기 > 대상(T) 에 아래 command line argument 를 추가
[기존 이클립스 경로]\eclipse.exe -vm "[JDK 위치]\jre\bin\server\jvm.dll"
  1. 시스템 > 고급 시스템 설정 > 환경 변수 > 시스템 변수(S) > 변수 Path 의 값에 [JDK 위치]\bin 추가

[JDK 위치] = C:\Java\jdk1.8.0_121 와 같이 실제 jdk 가 설치된 위치
[기존 이클립스 경로] = C:\dev\tools\eclipse 와 같이 실제 eclipse 가 설치된 위치


#이클립스 #윈도우 #윈도우즈 #윈도우10 #윈도우즈10 #환경설정

#eclipse #windows #windows10 #localSetting

2016년 5월 17일 화요일

[스크랩][IE11] 인터넷 익스플로러 11 빈 팝업창과 새 탭이 동시에 생성되는 오류 해결 방법



출처: http://mizaralcor.tistory.com/39


※ Internet Explorer 11 빈 팝업창과 새 탭이 동시에 생성 문제 해결 방법
    : "사용자 계정 컨트롤: 기본 제공 관리자 계정에 대한 관리자 승인 모드"를 '사용'으로 변경하여 해결


* 요약 해결 방법
 [시작] -> [제어판] -> [시스템 및 보안] -> [관리도구] -> [로컬 보안 정책] -> [로컬 정책] -> [보안 옵션]
  -> "사용자 계정 컨트롤: 기본 제공 관리자 계정에 대한 관리자 승인 모드"를 '사용'으로 변경


상세 해결 방법

  ① [시작] -> [제어판] -> [시스템 및 보안] -> [관리도구]
     

  ② [로컬 보안 정책]
     

  ③ [로컬 정책] -> [보안 옵션]
     

  ④ "사용자 계정 컨트롤: 기본 제공 관리자 계정에 대한 관리자 승인 모드"를 '사용'으로 변경
     


저작자 표시 비영리 변경 금지
posted by 북두자루

2016년 5월 10일 화요일

yyyymmddhhmmss 형태의 timestamp 문자열을 날짜로 변환 ie에서도 되게..

var t = new Date().toISOString().replace(/[-:T]/g,'').replace(/\.(?:\d{3})Z/g,'').replace(/^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})$/,'$1/$2/$3 $4:$5:$6'); //$1-$2-$3 $4:$5:$6 로 하면 ie에서 Date로 바꿔주지 못함. 날짜 구분자를 - 말고 / 로 해줘야 ie에서도 먹힘. === var t = new Date(); //toStirng 계통 /* t.toString() "Mon May 09 2016 12:06:58 GMT+0900 (대한민국 표준시)" t.toISOString() "2016-05-09T03:06:58.440Z" t.toTimeString() "12:06:58 GMT+0900 (대한민국 표준시)" t.toGMTString() "Mon, 09 May 2016 03:06:58 GMT" t.toJSON() "2016-05-09T03:06:58.440Z" t.toUTCString() "Mon, 09 May 2016 03:06:58 GMT" t.toLocaleTimeString() "12:06:58 PM" t.toLocaleString() "5/9/2016, 12:06:58 PM" t.getTime() 1462763218440 */ var q = t.toISOString().replace(/[-:T]/g,'').replace(/\.(?:\d{3})Z/g,''); var qqq = q.replace(/^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})$/,'$1-$2-$3 $4:$5:$6'); var tttt = new Date(qqq);




// timestamp 문자열을 날짜로 변환 ie에서도 되게.. yyyymmddhhmmss | since 16-05-10

크롬 에서 번역 옵션 뜨는 거 막는 방법

버그 같은게 아니고 저 옵션의 기본 값이 제공으로 바뀐듯... 번역 옵션 제공을 비활성화하면 안 뜸. Chrome에서 웹페이지 번역 모르는 언어로 작성된 페이지를 방문할 때 다음 단계에 따라 Chrome이 페이지를 번역하도록 할 수 있습...