何を見ればいいのか分からない? TEDの最高のビデオを見る

私は非常に興味深い投稿に出会いました。そこでは、小さなスクリプトで、人々がTEDで最も話題になったレポートを作成しました。 そして、シリーズはどんどんどんどんどんどんどんどんどんどんどんどんどくなってきているので、暇な時間をもっと便利なものでいっぱいにすることにしました。 実際、TEDでは時々、興味深く有用なことについて話します。



結果は、これらのビデオのほとんどがダウンロードした別のスクリプトです。



すべてのビデオを見る1つのオプションは、サイトからXLSファイルを開いて、上から下にリンクをクリックすることですが、これは非常に不便です。 10〜20のリンクをたどると、見たものと見なかったものについて混乱し、すべてをiPhoneにアップロードして、仕事の途中で見たり聞いたりしたいと思います。



長いGoogle Ruby構文の後、ファイルからレポートのアドレスを取得してパパにダウンロードする小さなスクリプトが作成されました。 便利なこと、誰かが役に立つかもしれません。



require 'rubygems' require 'nokogiri' require 'open-uri' require 'HTTParty' urls = IO.readlines("data.txt").map {|line| line.chomp} if !File.exists?("videos") Dir.mkdir("videos") end urls.each_with_index do |url, count| begin doc = Nokogiri.parse(open(url).read) node = doc.xpath("//dt/a[text()='Download video to desktop (MP4)']") video = "http://www.ted.com" + node.attribute("href").to_s videoName = "videos/(#{count+1})" + url.match(/http:\/\/www.ted.com\/talks\/(.*)\.html/i)[1] + ".mp4" puts "Downloading #{url} to #{videoName}" File.open( videoName, "w+") do |f| f << HTTParty.get( video ) end rescue puts "Failed to download #{url}" end end
      
      





したがって、宝石を配置する必要があります:nokogiriiとhttparty。

スクリプトとデータファイルはGitHubでスローされました



このサイトには一部のビデオのダウンロードリンクがありません。 彼らはそこで、またはYouTubeで見なければなりません。

ダウンロードしたすべての動画を急流のどこかに置くことは可能ですが、ソースからソースを自分で組み立てる方法はそれほど興味深いものではありません。

Rubyの第一人者からのコメントをお待ちしております。



PSはすべてを順番に見に行きました。



更新 :インストールを簡素化するためにGemfileを追加しました

Update2 :Rubyレッスンのために離された感謝

Update3 :ビデオフォルダーの作成を追加します(作成されていない場合)



All Articles