pulse-downloader 0.1.7 → 0.1.12

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5ae10b909855b29f8c3f0cd5b4c2bd38ee83fc69761ae7e109411b85add11957
4
- data.tar.gz: 7eedaf2bc8852e66a7db83a1830f2d369683092293ae16255b3c26746d69a32f
3
+ metadata.gz: 17c6b467560188e6ccbf9549fe0be00188726daf87352d295788ccbbb986ead3
4
+ data.tar.gz: a88019ce7c0708767b8c76bb5796ec34950f1ddf02cd7f2e8b83cb09126bcbb8
5
5
  SHA512:
6
- metadata.gz: f02637f88ecb337014b6141c4855540cf72a6c52c5123f528999590ec5f0c88a21da7a1e01c3c968c7d823b7da7240f63c433610da4fec947a4331d78a8c5f0f
7
- data.tar.gz: a4d222d168bcec0388c535749fd44f30616458fdb798a44a4229004c56bf6298ee6a4ba388e01afbc4fbccad1390f0cbaad0d618a441e134f6e870e39a77feb0
6
+ metadata.gz: b96d3ec2c08d342d4884c8d413d5133d1a71776f12e9dfc8c12829db9f1f0fc02f784f58f07481692f13b8d7a1a2dce66bd7e2c049077d1a337a676876a15c5b
7
+ data.tar.gz: b60ca5f1204ae2efd86c31c946dbcbff3d02c4279d83fd8f36c07d9909e4103db1df98b9009b5305b8271c3ba6c6fe7bda4daf708bb0505f15aab316e08af0a5
data/Gemfile.lock CHANGED
@@ -1,23 +1,24 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- pulse-downloader (0.1.4)
4
+ pulse-downloader (0.1.11)
5
5
  active_attr (~> 0.15)
6
6
  httparty (~> 0.18)
7
7
  nokogiri (~> 1.11)
8
+ progress_bar (~> 1.3.3)
8
9
 
9
10
  GEM
10
11
  remote: https://rubygems.org/
11
12
  specs:
12
- actionpack (6.1.3.1)
13
- actionview (= 6.1.3.1)
14
- activesupport (= 6.1.3.1)
13
+ actionpack (6.1.3.2)
14
+ actionview (= 6.1.3.2)
15
+ activesupport (= 6.1.3.2)
15
16
  rack (~> 2.0, >= 2.0.9)
16
17
  rack-test (>= 0.6.3)
17
18
  rails-dom-testing (~> 2.0)
18
19
  rails-html-sanitizer (~> 1.0, >= 1.2.0)
19
- actionview (6.1.3.1)
20
- activesupport (= 6.1.3.1)
20
+ actionview (6.1.3.2)
21
+ activesupport (= 6.1.3.2)
21
22
  builder (~> 3.1)
22
23
  erubi (~> 1.4)
23
24
  rails-dom-testing (~> 2.0)
@@ -26,9 +27,9 @@ GEM
26
27
  actionpack (>= 3.0.2, < 7.0)
27
28
  activemodel (>= 3.0.2, < 7.0)
28
29
  activesupport (>= 3.0.2, < 7.0)
29
- activemodel (6.1.3.1)
30
- activesupport (= 6.1.3.1)
31
- activesupport (6.1.3.1)
30
+ activemodel (6.1.3.2)
31
+ activesupport (= 6.1.3.2)
32
+ activesupport (6.1.3.2)
32
33
  concurrent-ruby (~> 1.0, >= 1.0.2)
33
34
  i18n (>= 1.6, < 2)
34
35
  minitest (>= 5.1)
@@ -45,6 +46,7 @@ GEM
45
46
  crass (1.0.6)
46
47
  erubi (1.10.0)
47
48
  hashdiff (1.0.1)
49
+ highline (2.0.3)
48
50
  httparty (0.18.1)
49
51
  mime-types (~> 3.0)
50
52
  multi_xml (>= 0.5.2)
@@ -69,6 +71,10 @@ GEM
69
71
  multi_xml (0.6.0)
70
72
  nokogiri (1.11.3-x86_64-linux)
71
73
  racc (~> 1.4)
74
+ options (2.3.2)
75
+ progress_bar (1.3.3)
76
+ highline (>= 1.6, < 3)
77
+ options (~> 2.3.0)
72
78
  pry (0.14.1)
73
79
  coderay (~> 1.1)
74
80
  method_source (~> 1.0)
@@ -25,6 +25,8 @@ module Pulse
25
25
  # TODO: Validation
26
26
  # TODO: Retry
27
27
  # TODO: DNS
28
+ # TODO: Multiple filetypes
29
+ # TODO: lib/pulse/downloader/file_downloader.rb:13: warning: URI.escape is obsolete
28
30
  def initialize(url:,
29
31
  file_type:,
30
32
  save_data: false,
@@ -10,11 +10,11 @@ module Pulse
10
10
  private
11
11
 
12
12
  def compute_save_path(url)
13
- "#{save_path}/#{compute_filename(url)}".gsub('//', '/')
13
+ "#{save_path}/#{compute_filename(url)}".gsub('//', '/').gsub(' ', '')
14
14
  end
15
15
 
16
16
  def compute_filename(file_path)
17
- file_path.scan(/[\/]\S+/).last
17
+ file_path.scan(/[\/]\S+/).last.split('/').last
18
18
  end
19
19
 
20
20
  def list_files_in(path)
@@ -1,8 +1,6 @@
1
1
  module Pulse
2
2
  module Downloader
3
3
  module FileDownloader
4
- require 'uri'
5
-
6
4
  # save_path and verify_ssl are defined in client.rb
7
5
  def download(file_path, progress_bar=nil)
8
6
  raise "save_path is undefined" if save_data && save_path == ''
@@ -10,7 +8,7 @@ module Pulse
10
8
 
11
9
  @start_time = get_micro_second_time
12
10
 
13
- file_data = HTTParty.get(compute_file_link(file_path), verify: verify_ssl)
11
+ file_data = HTTParty.get(escape(compute_file_link(file_path)), verify: verify_ssl)
14
12
 
15
13
  @end_time = get_micro_second_time
16
14
 
@@ -68,6 +66,37 @@ module Pulse
68
66
  def section?(file_path)
69
67
  file_path[0] == '#'
70
68
  end
69
+
70
+ def escape(str)
71
+ str.gsub("Space", "%20")
72
+ str.gsub("$", "\%24")
73
+ str.gsub("&", "\%26")
74
+ str.gsub("`", "\%60")
75
+ str.gsub(":", "\%3A")
76
+ str.gsub("<", "\%3C")
77
+ str.gsub(">", "\%3E")
78
+ str.gsub("[", "\%5B")
79
+ str.gsub("]", "\%5D")
80
+ str.gsub("{", "\%7B")
81
+ str.gsub("}", "\%7D")
82
+ str.gsub("“", "\%22")
83
+ str.gsub('"', "\%22")
84
+ str.gsub("+", "\%2B")
85
+ str.gsub("#", "\%23")
86
+ str.gsub("\%", "\%25")
87
+ str.gsub("@", "\%40")
88
+ str.gsub("/", "\%2F")
89
+ str.gsub(";", "\%3B")
90
+ str.gsub("=", "\%3D")
91
+ str.gsub("?", "\%3F")
92
+ str.gsub("\\", "\%5C")
93
+ str.gsub("^", "\%5E")
94
+ str.gsub("|", "\%7C")
95
+ str.gsub("~", "\%7E")
96
+ str.gsub("‘", "\%27")
97
+ str.gsub(",", "\%2C")
98
+ str
99
+ end
71
100
  end
72
101
  end
73
102
  end
@@ -1,5 +1,5 @@
1
1
  module Pulse
2
2
  module Downloader
3
- VERSION = "0.1.7"
3
+ VERSION = "0.1.12"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pulse-downloader
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - trex22
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-04-22 00:00:00.000000000 Z
11
+ date: 2021-05-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty