reddit_media_checker 0.0.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 +7 -0
- data/bin/reddit_media_checker +5 -0
- data/lib/reddit_media_checker.rb +50 -0
- metadata +48 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: 8d1f46deb90f6d522fa2326ed422abd542873505
|
|
4
|
+
data.tar.gz: 7e2bdc8d94699e46e63648d10465e42f901ed033
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 12bcebc2ab30ba2c67641141d7fcb68285492cedb6ed9e5e3e163ed734df532a8cb362cfe25acbc03dcd4639903302954607f4192e5f121150f40bac9bfa4c04
|
|
7
|
+
data.tar.gz: 22ea5ef89269d4ec6c4eb38fd44a328f9fe768084881807d61924f44af06a580df6454d12757b5c4db8c4c10ce4747a960846084859bc44bf54486161403f486
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
require 'uri'
|
|
2
|
+
require 'net/http'
|
|
3
|
+
require 'json'
|
|
4
|
+
|
|
5
|
+
class RedditMediaChecker
|
|
6
|
+
|
|
7
|
+
def initialize(url, pages)
|
|
8
|
+
if !url.end_with?(".json")
|
|
9
|
+
url = url + ".json"
|
|
10
|
+
end
|
|
11
|
+
if pages <= 0
|
|
12
|
+
puts "Must be given an integer number of pages greater than zero."
|
|
13
|
+
else
|
|
14
|
+
@url = url
|
|
15
|
+
@pages = pages
|
|
16
|
+
getJson(@url)
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def getJson(url)
|
|
21
|
+
uri = URI.parse(url)
|
|
22
|
+
request = Net::HTTP::Get.new(uri)
|
|
23
|
+
response = Net::HTTP.new(uri.hostname, uri.port()).start { |http|
|
|
24
|
+
http.request(request)
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
if(response.is_a? Net::HTTPSuccess)
|
|
28
|
+
@pages-=1
|
|
29
|
+
parseJson(response.body)
|
|
30
|
+
else
|
|
31
|
+
puts "Connection Failed!"
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def parseJson(redditJson)
|
|
36
|
+
parsed = JSON.parse(redditJson)
|
|
37
|
+
links = parsed["data"]["children"]
|
|
38
|
+
|
|
39
|
+
for link in links
|
|
40
|
+
data = link["data"]
|
|
41
|
+
if data["media"] != nil
|
|
42
|
+
puts data["domain"] + " -> " + data["permalink"]
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
if @pages > 0 && parsed["data"]["after"] != nil
|
|
47
|
+
getJson(@url + "?after=" + parsed["data"]["after"])
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: reddit_media_checker
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.0.1
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- Kenneth Baldauf
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: bin
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2014-08-31 00:00:00.000000000 Z
|
|
12
|
+
dependencies: []
|
|
13
|
+
description: This gem fetches a list of domains and permalinks from a certain number
|
|
14
|
+
of pages of a Reddit feed that contain a valid media field.
|
|
15
|
+
email:
|
|
16
|
+
executables:
|
|
17
|
+
- reddit_media_checker
|
|
18
|
+
extensions: []
|
|
19
|
+
extra_rdoc_files: []
|
|
20
|
+
files:
|
|
21
|
+
- lib/reddit_media_checker.rb
|
|
22
|
+
- bin/reddit_media_checker
|
|
23
|
+
homepage: https://github.com/kbaldauf/RedditMediaChecker
|
|
24
|
+
licenses:
|
|
25
|
+
- Apache v2.0
|
|
26
|
+
metadata: {}
|
|
27
|
+
post_install_message:
|
|
28
|
+
rdoc_options: []
|
|
29
|
+
require_paths:
|
|
30
|
+
- lib
|
|
31
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
32
|
+
requirements:
|
|
33
|
+
- - '>='
|
|
34
|
+
- !ruby/object:Gem::Version
|
|
35
|
+
version: '0'
|
|
36
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - '>='
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '0'
|
|
41
|
+
requirements: []
|
|
42
|
+
rubyforge_project:
|
|
43
|
+
rubygems_version: 2.0.14
|
|
44
|
+
signing_key:
|
|
45
|
+
specification_version: 4
|
|
46
|
+
summary: Fetch list of Reddit links which contain a media.
|
|
47
|
+
test_files: []
|
|
48
|
+
has_rdoc:
|