reddit_bot 1.5.2 → 1.5.3
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/examples/largeimages/Gemfile +2 -2
- data/examples/largeimages/Gemfile.lock +5 -5
- data/examples/largeimages/main.rb +6 -2
- data/examples/realtimeww2/Gemfile +2 -2
- data/examples/realtimeww2/Gemfile.lock +6 -6
- data/examples/realtimeww2/main.rb +10 -8
- data/lib/reddit_bot.rb +3 -2
- data/lib/reddit_bot/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 488688c825b8ab8f8f3e7ec10f0608dd3a3ee960
|
4
|
+
data.tar.gz: b91ae3dc0b8f4663e0b90b610a81f78e81d27a50
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: afb7b570aeddc5ce5115ea06d7d89c274eccedc3e2d1b0e8391855a6efcb53b5b21801defc133240f99df5ab619670ea3a9cc6bb37a329306ebe52442eda3c85
|
7
|
+
data.tar.gz: 9f406e4e8b3546925b164ac94bb1aaba1b0bac074d5243a66429925897901ae34b4181a5aa475f898424c32ed70fcfad3772a0a555b9a6f2b7cbe5f50c72bf98
|
@@ -2,9 +2,9 @@
|
|
2
2
|
|
3
3
|
gem "json"
|
4
4
|
|
5
|
-
gem "nethttputils", git: "git@github.com:Nakilon/nethttputils.git", tag: "v0.1.0.
|
5
|
+
gem "nethttputils", git: "git@github.com:Nakilon/nethttputils.git", tag: "v0.1.0.1"
|
6
6
|
|
7
|
-
gem "reddit_bot", "~>1.
|
7
|
+
gem "reddit_bot", "~>1.5.2"
|
8
8
|
gem "nokogiri"
|
9
9
|
|
10
10
|
gem "imgur2array", git: "git@github.com:Nakilon/imgur2array.git", tag: "v0.0.2.8"
|
@@ -15,10 +15,10 @@ GIT
|
|
15
15
|
|
16
16
|
GIT
|
17
17
|
remote: git@github.com:Nakilon/nethttputils.git
|
18
|
-
revision:
|
19
|
-
tag: v0.1.0.
|
18
|
+
revision: 9e357649157955d0fc476b88966aa9a4435ff57a
|
19
|
+
tag: v0.1.0.1
|
20
20
|
specs:
|
21
|
-
nethttputils (0.1.0.
|
21
|
+
nethttputils (0.1.0.1)
|
22
22
|
|
23
23
|
GIT
|
24
24
|
remote: git@github.com:Nakilon/url2dimensions.git
|
@@ -87,7 +87,7 @@ GEM
|
|
87
87
|
mini_portile2 (~> 2.1.0)
|
88
88
|
os (0.9.6)
|
89
89
|
public_suffix (2.0.5)
|
90
|
-
reddit_bot (1.
|
90
|
+
reddit_bot (1.5.2)
|
91
91
|
json
|
92
92
|
rly (0.2.3)
|
93
93
|
signet (0.8.1)
|
@@ -108,7 +108,7 @@ DEPENDENCIES
|
|
108
108
|
json
|
109
109
|
nethttputils!
|
110
110
|
nokogiri
|
111
|
-
reddit_bot (~> 1.
|
111
|
+
reddit_bot (~> 1.5.2)
|
112
112
|
url2dimensions!
|
113
113
|
|
114
114
|
BUNDLED WITH
|
@@ -37,6 +37,11 @@ EXCLUDE = %w{ foodporn powerwashingporn }
|
|
37
37
|
|
38
38
|
checked = []
|
39
39
|
|
40
|
+
search_url = lambda do |url|
|
41
|
+
JSON.load(NetHTTPUtils.request_data "https://www.reddit.com/r/largeimages/search.json", form: {q: "url:#{url}", restrict_sr: "on"}, header: ["User-Agent", "ajsdjasdasd"])["data"]["children"]
|
42
|
+
end
|
43
|
+
fail unless 1 == search_url["https://i.imgur.com/9JTxtjW.jpg"].size
|
44
|
+
|
40
45
|
loop do
|
41
46
|
begin
|
42
47
|
logger.warn "LOOP #{Time.now}"
|
@@ -99,8 +104,7 @@ loop do
|
|
99
104
|
resolution = "[#{width}x#{height}]"
|
100
105
|
# require "cgi"
|
101
106
|
next logger.warn "already submitted #{resolution} #{id}: '#{url}'" unless
|
102
|
-
Gem::Platform.local.os == "darwin" ||
|
103
|
-
(JSON.parse NetHTTPUtils.request_data "https://www.reddit.com/r/LargeImages/search.json?q=url%3A#{CGI.escape url}&restrict_sr=on", header: ["User-Agent", "ajsdjasdasd"])["data"]["children"].empty?
|
107
|
+
Gem::Platform.local.os == "darwin" || search_url[url].empty?
|
104
108
|
logger.warn "resolution #{resolution} got from #{id}: #{url}"
|
105
109
|
# next if Gem::Platform.local.os == "darwin" # prevent concurrent posting
|
106
110
|
title = "#{resolution}#{
|
@@ -1,15 +1,15 @@
|
|
1
1
|
GIT
|
2
2
|
remote: git@github.com:Nakilon/nethttputils.git
|
3
|
-
revision:
|
4
|
-
tag: v0.0.1
|
3
|
+
revision: 9e357649157955d0fc476b88966aa9a4435ff57a
|
4
|
+
tag: v0.1.0.1
|
5
5
|
specs:
|
6
|
-
nethttputils (0.0.1
|
6
|
+
nethttputils (0.1.0.1)
|
7
7
|
|
8
8
|
GEM
|
9
9
|
remote: https://rubygems.org/
|
10
10
|
specs:
|
11
11
|
json (2.1.0)
|
12
|
-
reddit_bot (1.
|
12
|
+
reddit_bot (1.5.2)
|
13
13
|
json
|
14
14
|
|
15
15
|
PLATFORMS
|
@@ -17,7 +17,7 @@ PLATFORMS
|
|
17
17
|
|
18
18
|
DEPENDENCIES
|
19
19
|
nethttputils!
|
20
|
-
reddit_bot
|
20
|
+
reddit_bot (~> 1.5.2)
|
21
21
|
|
22
22
|
BUNDLED WITH
|
23
|
-
1.
|
23
|
+
1.16.0
|
@@ -37,15 +37,16 @@ tweet2titleNtext = lambda do |tweet|
|
|
37
37
|
[CGI::unescapeHTML(tweet["full_text"]).sub(/( https:\/\/t\.co\/[0-9a-zA-Z]{10})*\z/, ""), text, contains_media]
|
38
38
|
end
|
39
39
|
[
|
40
|
-
[905764294687633408, true, "The Polish government & military high command is now evacuating Warsaw for Brest, 120 miles east: German armies are too close to the capital", "* [Image 1](https://pbs.twimg.com/media/DJHq71BXYAA6KJ0.jpg)\n\n" "^- ^WW2 ^Tweets ^from ^
|
41
|
-
[915534673471733760, true, "In east Poland (now Soviet Ukraine) industry & farms to be collectivised, political parties banned, aristocrats & capitalists \"re-educated\".", "* [Image 1](https://pbs.twimg.com/media/DLSh2J9W4AACcOG.jpg)\n\n* [Image 2](https://pbs.twimg.com/media/DLSh4sKX0AEBaXq.jpg)\n\n^- ^WW2 ^Tweets ^from ^
|
42
|
-
[915208866408824832, true, "For 1st time, RAF planes dropping propaganda leaflets on Berlin itself, entitled \"Germans: these are your leaders!\"", "* [Image 1](https://pbs.twimg.com/media/DLN5jJ-XkAEUz9M.jpg)\n\n* [Link 1](https://www.psywar.org/product_1939EH158.php)\n\n" "^- ^WW2 ^Tweets ^from ^
|
43
|
-
[914577848891006978, true, "\"In Poland, Russia pursued a cold policy of selfinterest. But clearly necessary for Russia… against Nazi menace.\"", "* [Link 1](https://www.youtube.com/watch?v=ygmP5A3n2JA)\n\n" "^- ^WW2 ^Tweets ^from ^
|
44
|
-
[926581977372942336, false, "Finland rejects Soviet demand to surrender land near Leningrad & give Red Navy base in Hanko; Soviets now claim Finns' manner \"warlike\".", "^- ^WW2 ^Tweets ^from ^
|
40
|
+
[905764294687633408, true, "The Polish government & military high command is now evacuating Warsaw for Brest, 120 miles east: German armies are too close to the capital", "* [Image 1](https://pbs.twimg.com/media/DJHq71BXYAA6KJ0.jpg)\n\n" "^- ^WW2 ^Tweets ^from ^1940 [^\\(@#{TWITTER}\\)](https://twitter.com/#{TWITTER}) ^| [^""September ^7, ^2017](https://twitter.com/#{TWITTER}/status/905764294687633408)"],
|
41
|
+
[915534673471733760, true, "In east Poland (now Soviet Ukraine) industry & farms to be collectivised, political parties banned, aristocrats & capitalists \"re-educated\".", "* [Image 1](https://pbs.twimg.com/media/DLSh2J9W4AACcOG.jpg)\n\n* [Image 2](https://pbs.twimg.com/media/DLSh4sKX0AEBaXq.jpg)\n\n^- ^WW2 ^Tweets ^from ^1940 [^\\(@#{TWITTER}\\)](https://twitter.com/#{TWITTER}) ^| [^" "October ^4, ^2017](https://twitter.com/#{TWITTER}/status/915534673471733760)"],
|
42
|
+
[915208866408824832, true, "For 1st time, RAF planes dropping propaganda leaflets on Berlin itself, entitled \"Germans: these are your leaders!\"", "* [Image 1](https://pbs.twimg.com/media/DLN5jJ-XkAEUz9M.jpg)\n\n* [Link 1](https://www.psywar.org/product_1939EH158.php)\n\n" "^- ^WW2 ^Tweets ^from ^1940 [^\\(@#{TWITTER}\\)](https://twitter.com/#{TWITTER}) ^| [^" "October ^3, ^2017](https://twitter.com/#{TWITTER}/status/915208866408824832)"],
|
43
|
+
[914577848891006978, true, "\"In Poland, Russia pursued a cold policy of selfinterest. But clearly necessary for Russia… against Nazi menace.\"", "* [Link 1](https://www.youtube.com/watch?v=ygmP5A3n2JA)\n\n" "^- ^WW2 ^Tweets ^from ^1940 [^\\(@#{TWITTER}\\)](https://twitter.com/#{TWITTER}) ^| [^" "October ^1, ^2017](https://twitter.com/#{TWITTER}/status/914577848891006978)"],
|
44
|
+
[926581977372942336, false, "Finland rejects Soviet demand to surrender land near Leningrad & give Red Navy base in Hanko; Soviets now claim Finns' manner \"warlike\".", "^- ^WW2 ^Tweets ^from ^1940 [^\\(@#{TWITTER}\\)](https://twitter.com/#{TWITTER}) ^| [^" "November ^3, ^2017](https://twitter.com/#{TWITTER}/status/926581977372942336)"],
|
45
45
|
].each do |id, contains_media_, title_, text_|
|
46
46
|
title, text, contains_media = tweet2titleNtext[ JSON.load NetHTTPUtils.request_data(
|
47
|
-
"https://api.twitter.com/1.1/statuses/show.json
|
48
|
-
|
47
|
+
"https://api.twitter.com/1.1/statuses/show.json",
|
48
|
+
form: { id: id, tweet_mode: "extended" },
|
49
|
+
header: { Authorization: "Bearer #{TWITTER_ACCESS_TOKEN}" },
|
49
50
|
) ]
|
50
51
|
unless contains_media_ == contains_media
|
51
52
|
puts "expected: #{contains_media_}"
|
@@ -88,7 +89,8 @@ loop do
|
|
88
89
|
timeout = 0
|
89
90
|
JSON.load( begin
|
90
91
|
NetHTTPUtils.request_data(
|
91
|
-
"https://api.twitter.com/1.1/statuses/user_timeline.json
|
92
|
+
"https://api.twitter.com/1.1/statuses/user_timeline.json",
|
93
|
+
form: { screen_name: TWITTER, count: 200, tweet_mode: "extended" },
|
92
94
|
header: { Authorization: "Bearer #{TWITTER_ACCESS_TOKEN}" }
|
93
95
|
) do |res|
|
94
96
|
next unless res.key? "x-rate-limit-remaining"
|
data/lib/reddit_bot.rb
CHANGED
@@ -112,7 +112,8 @@ module RedditBot
|
|
112
112
|
Enumerator.new do |e|
|
113
113
|
after = {}
|
114
114
|
loop do
|
115
|
-
|
115
|
+
# TODO maybe force lib user to prepend "r/" to @subreddit constructor?
|
116
|
+
args = [:get, "/#{subreddit || (@subreddit ? "r/#{@subreddit}" : fail)}/new", {limit: 100}.merge(after)]
|
116
117
|
result = cache.call(args){ json *args }
|
117
118
|
fail if result.keys != %w{ kind data }
|
118
119
|
fail if result["kind"] != "Listing"
|
@@ -206,7 +207,7 @@ module RedditBot
|
|
206
207
|
when "502", "503", "520", "500", "521", "504", "400", "522"
|
207
208
|
puts "LOL #{response.code} at #{Time.now}?"
|
208
209
|
p args
|
209
|
-
sleep
|
210
|
+
sleep 60
|
210
211
|
redo
|
211
212
|
when "409"
|
212
213
|
puts "Conflict (409)? at #{Time.now}?"
|
data/lib/reddit_bot/version.rb
CHANGED