pdf_links_checker 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/lib/pdf_links_checker/invalid_link.rb +4 -0
- data/lib/pdf_links_checker/links.rb +1 -1
- data/lib/pdf_links_checker/url.rb +35 -21
- data/lib/pdf_links_checker/version.rb +1 -1
- metadata +2 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 244603c961f81cca8061c369527ea98836af422cc46045cae57ce420cc3d49c5
|
|
4
|
+
data.tar.gz: a8a5158995e37b40d9d0180a43a9a8196f93b30a927ae5c9fba22b726778ee59
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 94501c39b1043b98acfd2a65ceb23fe5d6438c1f889e0f6b90624cb2eb1df23b23203489871a1665e5787686210793835b2489c23b5d87ca513442c05f9b4266
|
|
7
|
+
data.tar.gz: f8587232058d13e9c9101c65549da9cc4323f4eafb45791c27d1bdc03f1f26344a3a53d8925022682f0fd6a50366fe4842369fcfbf9ae0d0c762f21480fe4cad
|
data/.gitignore
CHANGED
|
@@ -1,27 +1,41 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
@pdf_link = pdf_link
|
|
4
|
-
end
|
|
1
|
+
require "pdf_links_checker/invalid_link"
|
|
2
|
+
require "uri"
|
|
5
3
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
req.use_ssl = true if uri.include?("https")
|
|
11
|
-
|
|
12
|
-
begin
|
|
13
|
-
res = req.request_head(url.path)
|
|
14
|
-
true if res.code == "404"
|
|
15
|
-
rescue StandardError => e
|
|
16
|
-
true
|
|
4
|
+
module PdfLinksChecker
|
|
5
|
+
class URL
|
|
6
|
+
def initialize(pdf_link)
|
|
7
|
+
@pdf_link = pdf_link
|
|
17
8
|
end
|
|
18
|
-
end
|
|
19
9
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
10
|
+
def invalid?
|
|
11
|
+
begin
|
|
12
|
+
uri = to_s
|
|
13
|
+
rescue PdfLinksChecker::InvalidLink => e
|
|
14
|
+
return false
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
url = URI.parse(uri)
|
|
18
|
+
req = Net::HTTP.new(url.host, url.port)
|
|
19
|
+
req.use_ssl = true if uri.include?("https")
|
|
20
|
+
|
|
21
|
+
begin
|
|
22
|
+
res = req.request_head(url.path)
|
|
23
|
+
return true if res.code == "404"
|
|
24
|
+
rescue StandardError => e
|
|
25
|
+
return true
|
|
26
|
+
end
|
|
23
27
|
|
|
24
|
-
|
|
28
|
+
false
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def to_s
|
|
32
|
+
a = pdf_link[:A]
|
|
33
|
+
raise PdfLinksChecker::InvalidLink.new('Invalid Link') unless a.respond_to?(:key?) && a.key?(:URI)
|
|
34
|
+
a[:URI]
|
|
35
|
+
end
|
|
25
36
|
|
|
26
|
-
|
|
37
|
+
private
|
|
38
|
+
|
|
39
|
+
attr_reader :pdf_link
|
|
40
|
+
end
|
|
27
41
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: pdf_links_checker
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Andy Wendt
|
|
@@ -31,6 +31,7 @@ files:
|
|
|
31
31
|
- exe/pdf_links_checker
|
|
32
32
|
- lib/pdf_links_checker.rb
|
|
33
33
|
- lib/pdf_links_checker/annotations.rb
|
|
34
|
+
- lib/pdf_links_checker/invalid_link.rb
|
|
34
35
|
- lib/pdf_links_checker/links.rb
|
|
35
36
|
- lib/pdf_links_checker/page.rb
|
|
36
37
|
- lib/pdf_links_checker/pdf_document.rb
|