vyplay 1.2

Yahoo動画をBackGroundvideoとして、ランダムに再生するPerlスクリプトをバージョンアップ。 といっても、YahooのHTMLデータにちょっと違うものが見つかったので対応しただけ。 使い方 1. 目的の動画の「動画を見る」ボタンがあるページのURLを見つける。 ブラウザを使って自力で探します。 2. タイトルとURLを定義ファイルyvplay.datに登録する。 エディタで開いて、記入する。 タイトルとURLをタブで区切って記入する。 (1.1とは順番が逆になります) もちろん、複数のURLを指定することができます。その場合は1行1URLで指定します。
夕刊フジ	TVhttp://streaming.yahoo.co.jp/p/t/00039/v00575/
3. 動画をランダム再生する > perl yvplay.pl

ソース

たいしたものではないので、そのまま載せる。

ypplay.pl

#!/usr/bin/perl
# yvplay.pl Rev.1.2
# Copyright (c) YAMAGISHI Norimasa nor@rally.or.jp
#		http://rally.jp/comp/archives/

use LWP::Simple;

$IE='"C:\Program Files\Internet Explorer\IEXPLORE.EXE"';

$SRC_FILE='yvplay.dat';

open SRC_FILE, "<$SRC_FILE";
while(<SRC_FILE>) {
    chop;
    push(@URLS, $_);
}

while ( @URLS ) {
    push( @play_list, splice(@URLS , rand @URLS , 1) );
}

while(@play_list) {
    $item =  shift(@play_list);
    if ($item =~ /^$/) {next;};
    if ($item =~ /^#.*/) {next;};
    ($item_title, $item_url) = split /\t/, $item, 2;
    print STDERR "Now playing ";
    if (!($item_title =~ /^$/)) {
	print STDERR $item_title . " ";
	}
    print STDERR $item_url . "\n";
    $play_url = &get_play_url($item_url);
    print STDERR "player url = [" . $play_url . "]\n\n";
    $cmd_line = $IE . " \"" . $play_url . "\"";
    system $cmd_line;
}
print STDERR "## All list up items are END ##\n";

sub get_play_url {
    my($item_url)=@_;
    my $src_html, @lines_html, $line, $play_url;

    $src_html=get($item_url);
    @lines_html = split(/\n/,$src_html);

    foreach $line (@lines_html) {
	$line =~ s/\\//g;
        if ($line =~ /document\.write\([\'\"]<a href=\"#\"/) {
	    chop;
            $line =~ s/^.*onClick="wo\('//;
            $line =~ s/'.*$//;
	    $play_url = $line;
	    last;
	}
    }
    return $play_url;
}

このブログ記事について

このページは、norが2008年2月21日 14:50に書いたブログ記事です。

ひとつ前のブログ記事は「インストール: tamago CVS 080214」です。

次のブログ記事は「インストール: Wnn6 Client for Windows」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

アーカイブ

ウェブページ

Powered by Movable Type 6.8.5