ページ

2010年4月6日火曜日

YouTubプラグインの2010.4.1仕様変更対応

2010.4.1 よりYouTubeのプレイヤーが変わったため、Ubuntu9.04のYouTubeプラグインがうまく動かなくなりました。
そのため、/etc/lib/plugin/youtube/youtube.py 以下のような修正を施しました。

■YouTubeクラスのresolve_t_param関数を以下に置き換え

1. この変更はyoutube-dl.pyを元にしている。
2. この変更はyanbe.diffさんのパッチを当てた上で行っている。
    - http://subtech.g.hatena.ne.jp/y_yanbe/20090423/1240550210
3. 以下はタブを空白4文字で記述している。使うときにはタブに変換する必要がある。
    こんな感じ? %s/ {4}/\t/g


    def resolve_t_param (self, youtube_id):
        """We have to get the t parameter from the actual video page, since Google changed how their URLs work"""

        print "Start resolve_t_param()"
        # Get video info
        video_info_url = 'http://www.youtube.com/get_video_info?&video_id=%s&el=detailpage&ps=default&eurl=&gl=US&hl=en' % youtube_id
        print "T:   video_info_url = ", video_info_url

        stream = urllib2.urlopen(video_info_url)
        video_info_webpage = stream.read ()
        if video_info_webpage == "":
            print "Error : get_video_info url=", video_info_url
            return ""

        mobj = re.search(r'(?m)&token=([^&]+)(?:&|$)', video_info_webpage)
        if (mobj == None):
            print "Error :get token"
            print video_info_webpage
            return ""

        token = urllib.unquote(mobj.group(1))

        if self.debug:
            print "t_param = ", token
        return token

1 件のコメント:

  1. はじめまして。
    http://tweetbuzz.jp/entry/19083082/www.myx17.com/jp/x17-07-moleskine-notebook-sketch-book-date-book-A7-A6-A5.html
    のTweetを拝見しコメントをさせていただいております。
    私はドイツX47及びX17社のハルツと申します。
    弊社では「ブックバイブックシステム」というまったく新しいシステムを採用したシステム手帳を開発し、主にドイツ国内で成果を収めております。詳しくは弊社ホームページをご覧ください。http://www.myx17.com/jp/X17-02-advantages.html (もしくはwww.myx17.com から日本語サイト)
    このたび、日本での事業拡大を考えるにあたり製品テスター(無料)になっていただける方を探しております。
    製品テスターに興味をお持ちいただけたようでしたら、japan@x47.com 担当ハルツまでご連絡ください。
    よろしくお願いいたします。
    なお、貴記事と関係のない内容の書き込みになってしまったことをお許しください。

    返信削除