ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Youtube 검색 스크립트
    IRC-Script 2009. 3. 20. 03:48
    반응형

    꽤 오래전에 만든 스크립트인데 이제서야 공개하게 되었다.
    단, $mircdir 에 utf8.dll 파일이 필요하니 첨부파일을 다운로드 할것.


    이 스크립트를 가져다 쓸 사람은 아래부터 복사해서 쓰면 된다. (mIRC 6.3 에서 정상작동 확인함)

    ; ------------------------------------------------------------
    ; | Made by Xeriars                                                               |
    ; | (변경해서 쓰는건 니맘대로지만 이 부분은 지우지 말아주세요.)  |
    ; ------------------------------------------------------------
    on *:text:*:#: {
        if ($1 == @유튜브) {
          if (!$2) { msg $chan Usage : @유튜브 검색어 | halt }
          unset %youtube.*
          set %youtube.chan $chan
          set %youtube.word $2-
          set %youtube.url $urlencode($dll(utf8.dll,convertutf8,%youtube.word))
          set %youtube.count 1
          set %youtube.nick $nick
          sockclose youtube
          sockopen youtube www.youtube.com 80
          halt
        }
    }

    on *:sockopen:youtube*: {
      sockwrite -nt $sockname GET /results?search_type=&search_query= $+ %youtube.url $+ &aq=f HTTP/1.1
      sockwrite -nt $sockname User-Agent: Mozilla/4.0
      sockwrite -nt $sockname Host: www.youtube.com
      sockwrite -nt $sockname Connection: Close
      sockwrite -nt $sockname $crlf
    }
    on *:sockread:youtube: {
      sockread %tmp
      set %youtube.search0 약 <strong>
      set %youtube.search0 $dll(utf8.dll,convertutf8,%youtube.search0)
      set %youtube.search1 <div class="v120WideEntry"><div class="v120WrapperOuter">
      set %youtube.search2 class="video-description">
      set %youtube.search3 <button class="master-sprite ratingVS ratingVS-
      set %youtube.search4 class="video-date-added">
      set %youtube.search5 class="video-view-count">
      set %youtube.search6 <span class="video-username">
      set %youtube.error <div style="margin-top: 10px"><span
      set %youtube.error2 icn_cycds_warning-vfl33982.gif

      if (%youtube.count == 2) {
        set %youtube.describe $dll(utf8.dll,convertlocal,$replace($remove(%tmp,$chr(9)),<b>,,</b>,))
        set %youtube.count 1
      }

      if (%youtube.error isin %tmp) {
        msg %youtube.chan " $+ %youtube.word $+ " 의 검색결과가 존재하지 않습니다.
        sockclose $sockname
        unset %youtube.* 
      }
      if (%youtube.error2 isin %tmp) {
        msg %youtube.chan " $+ %youtube.word $+ " 의 검색결과가 존재하지 않습니다.
        sockclose $sockname
        unset %youtube.* 
      }
      if (%youtube.search0 isin %tmp) {
        set %youtube.amount $remove($gettok(%tmp,1,47),%youtube.search0,<,$chr(9))
      }
      if (%youtube.search1 isin %tmp) {
        set %youtube.id $remove($gettok(%tmp,8,34),$chr(9),video-url-)
        set %youtube.video https://www.youtube.com/watch?v= $+ %youtube.id
        set %youtube.subject $dll(utf8.dll,convertlocal,$remove($gettok(%tmp,14,34),$chr(9)))
      }
      if (%youtube.search3 isin %tmp) { set %youtube.ratio $gettok(%tmp,4,34) $+ 점 }
      if (%youtube.search4 isin %tmp) { set %youtube.added $dll(utf8.dll,convertlocal,$remove($gettok(%tmp,5,34),</span>,>)) }
      if (%youtube.search5 isin %tmp) { set %youtube.vcount $remove($dll(utf8.dll,convertlocal,$remove($gettok(%tmp,5,34),</span>,>)),조회,수,$chr(32)) }
      if (%youtube.search6 isin %tmp) { set %youtube.user $remove($gettok(%tmp,9,34),</a>,</span>,>) | set %youtube.count 77 } 
      if (%youtube.count == 77) {
        if (!%youtube.ratio) { set %youtube.ratio 평점없음 }
        msg %youtube.chan $chr(91) $+ %youtube.subject $+ $chr(93) - %youtube.video ( $+ 약 %youtube.amount $+ 개의 동영상 검색)
        msg %youtube.chan 설명 : %youtube.describe
        msg %youtube.chan 등록일 : %youtube.added / 평점 : %youtube.ratio / 조회 수 : %youtube.vcount / 등록자 : %youtube.user
        notice %youtube.nick 더 많은 결과를 보시려면 https://www.youtube.com/results?search_type=&search_query= $+ %youtube.url $+ &aq=f 를 참조하십시요.
        sockclose $sockname
        unset %youtube.*
      }
      if (%youtube.search2 isin %tmp) { set %youtube.count 2 }
    }

    반응형

    댓글 1

Copyright 2006-2021. Xeriars.com All rights reserved .