홈 > IT > 자료실
자료실

powershell을 이용한 웹툰 따오기

개별다운로드 // 다중다운로드 // 웹툰검색 가능


ps1을 notepad++ 로 열어보면  주석으로 설명처럼 달아놨습니다


이걸이용해서 네이버 다음 카카오페이지 다가능합니다.



httprequest 를 좋아하는 이유중하나입니다 ㅎㅎ


powershell도 공부해보면 꾀나 흥미로운 언어입니다


사용방법입니다.

1. ttest.bat을 실행시킨다 or powershell ise를 실행후 코드를 붙여넣기한다.
2. 웹툰목록이 나오면 원하는거 더블클릭
3. 개별다운로드면 개별다운로드 : 옆에 숫자넣기(에피소드) // 다중다운로드면 다운받은범위 : 옆에 1 3 (1~3화) 써놓기
4. 원하는대로 다운로드버튼 누르기 끝
5. 저장되는 위치는 실행한위치의 하위폴더생성 (새로 추가시킴.)

3 Comments
2 Selovic 01.30 22:29  
파워쉘 ISE에서 오픈하니까 한글이 모두 깨져서 나오네요 ㅠㅠ
게시글 본문에 사용법같은것도 첨부해주실 수 있나요?? 코드를 보기전에 돌려보고 싶은데..ㅎㅎ
1 리브 02.02 21:00  
수정됬습니다
2 Selovic 02.02 22:56  
"1"개의 인수가 있는 "Create"을(를) 호출하는 동안 예외가 발생했습니다. "잘못된 URI: URI 형식을 확인할 수 없습니다."
위치 줄:7 문자:42
+ $g1 = [system.net.httpwebrequest]::create <<<< ($url) #requset 형식생성
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException
 
이 개체에 'method' 속성이 없습니다. 해당 속성이 있는지 그리고 설정 가능한지 확인하십시오.
위치 줄:8 문자:5
+ $g1. <<<< method = "GET"  # request의 method 설정 ↓useragent 설정
    + CategoryInfo          : InvalidOperation: (method:String) [], RuntimeException
    + FullyQualifiedErrorId : PropertyNotFound
 
이 개체에 'useragent' 속성이 없습니다. 해당 속성이 있는지 그리고 설정 가능한지 확인하십시오.
위치 줄:9 문자:5
+ $g1. <<<< useragent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.97 Safari/537.36"
    + CategoryInfo          : InvalidOperation: (useragent:String) [], RuntimeException
    + FullyQualifiedErrorId : PropertyNotFound
 
이 개체에 'cookiecontainer' 속성이 없습니다. 해당 속성이 있는지 그리고 설정 가능한지 확인하십시오.
위치 줄:10 문자:5
+ $g1. <<<< cookiecontainer = $c1  #.net의 자랑 세션 유지용 cookie php에는 없어서 불편 ...
    + CategoryInfo          : InvalidOperation: (cookiecontainer:String) [], RuntimeException
    + FullyQualifiedErrorId : PropertyNotFound
 
null 값 식에서 메서드를 호출할 수 없습니다.
위치 줄:11 문자:22
+ $g2 = $g1.GetResponse <<<< () #request의 정보를 보낸후 반환받습니다.
    + CategoryInfo          : InvalidOperation: (GetResponse:String) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull
 
null 값 식에서 메서드를 호출할 수 없습니다.
위치 줄:12 문자:28
+ $g3 = $g2.getresponsestream <<<< () #반환받은 값을 stream형식으로 얻어옵니다.
    + CategoryInfo          : InvalidOperation: (getresponsestream:String) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull
 
null 값 식에서 메서드를 호출할 수 없습니다.
위치 줄:14 문자:26
+ $str  = $stream.readtoend <<<< ()  # string 형식으로 읽습니다.
    + CategoryInfo          : InvalidOperation: (readtoend:String) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull
 
fail...
  다운로드 완료

라고 뜨면서 안됩니다..

P.S 완료메세지 표시전 실제다운로드 여부를 확인해서 완료메시지가 뜨는게 좋을것같아
조건문을 걸어서 파일존재여부 체크라던지....

P.S2 프록시 사용시 서버인증창을 못띄우는듯
Category
State
  • 현재 접속자 78(2) 명
  • 오늘 방문자 519 명
  • 어제 방문자 329 명
  • 최대 방문자 628 명
  • 전체 방문자 25,219 명
  • 전체 게시물 541 개
  • 전체 댓글수 91 개
  • 전체 회원수 30 명
Facebook Twitter GooglePlus KakaoStory NaverBand