youtube-downloader 1.1 → 1.2

Sign up to get free protection for your applications and to get access to all the features.
data/README CHANGED
@@ -11,6 +11,10 @@ COMMANDS:
11
11
  file will be not be removed.
12
12
  - rip or all
13
13
  Downloads the video and rips the audio
14
+ - download
15
+ prints the download url and title, separated with a tab
16
+ - url
17
+ prints the download url
14
18
 
15
19
  With no command set it will download the video.
16
20
 
@@ -49,11 +53,17 @@ with these values:
49
53
  :touch: true
50
54
 
51
55
  CHANGES
56
+ 1.2
57
+ * Youtubes new site design moved the script-tags around so we couldn't find the correct URL
58
+ * Fixed a bug where if you set your own filename instead of using the videos name from Youtube
59
+ it wouldn't be used
52
60
  1.1
53
61
  * Switched over to using hpricot for finding the parts of the document were
54
62
  the data I need to download the video are
55
63
  * Added the HTML Entities library to uncode the various HTML parts in
56
64
  the title of the video
65
+ * Using ffmpeg instead of lame/mplayer for audio ripping and encoding
66
+ * Extracted the url finding part of the script into a class of its own
57
67
 
58
68
  TODO
59
69
  2.0
@@ -36,7 +36,7 @@ the_vid = Youtube::Video.new(ARGV[0])
36
36
 
37
37
  # Extend the_vid with some helper functions
38
38
  class << the_vid
39
- def path(type = :download_dir)
39
+ def path(type = :download_dir)
40
40
  File.join(File.expand_path(ConfigYT[type]), "#{title}.#{type != :download_dir ? 'mp3' : ConfigYT[:file_extension]}")
41
41
  end
42
42
 
@@ -57,9 +57,7 @@ end
57
57
  puts 'To edit filename press up arrow'
58
58
  Readline::HISTORY.push the_vid.title
59
59
  name = Readline::readline("Filename: [#{the_vid.title}] ")
60
- if name.strip.empty?
61
- the_vid.title
62
- else
60
+ if not name.strip.empty?
63
61
  the_vid.title = name
64
62
  end
65
63
 
@@ -28,7 +28,7 @@ module Youtube
28
28
  def get_download_url(url)
29
29
  begin
30
30
  doc = Hpricot(open(url))
31
- doc.search('//head/script').each do |el|
31
+ doc.search('//script').each do |el|
32
32
  l = el.inner_html
33
33
 
34
34
  if x = l.match(/"t":\s+"([^"]+)/)
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8; mode: ruby -*-
2
2
  Gem::Specification.new do |s|
3
3
  s.name = "youtube-downloader"
4
- s.version = "1.1"
4
+ s.version = "1.2"
5
5
  s.date = Time.now.strftime('%Y-%m-%d')
6
6
  s.summary = "Downloads youtube videos and optionally rips audio"
7
7
  s.email = "gaqzi@sanitarium.se"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: youtube-downloader
3
3
  version: !ruby/object:Gem::Version
4
- version: "1.1"
4
+ version: "1.2"
5
5
  platform: ruby
6
6
  authors: []
7
7
 
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2010-01-23 00:00:00 +01:00
12
+ date: 2010-04-29 00:00:00 +02:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency