gnip-client 0.2.3 → 0.2.4
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/.ruby-version +1 -1
- data/.travis.yml +2 -0
- data/gnip.gemspec +14 -14
- data/lib/gnip.rb +10 -10
- data/lib/gnip/gnip-full-archive/full_archive.rb +29 -18
- data/lib/gnip/version.rb +1 -1
- metadata +17 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2d078d397845d98b95bbfe9afbaa2fa1f99fc3e0
|
4
|
+
data.tar.gz: ec862b262151ef31e4c481bfa27fbf232411ddc7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 930a9773e72950ee4b7506185e2c037da2601bdfdf10e8f9fe1d88b5bfb545dc09d10382d0f4d52d875402a1cde369650b1f51a9905feef84bc5d975823064b6
|
7
|
+
data.tar.gz: b1be00e4531ecfdedb515e7622680c958a39bef921a02b948e01d1f9937bf07deca6cf70556b22e72c1ff5960039ed1695c81b7104fc6ad847a4b195407d66f6
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.3.3
|
data/.travis.yml
CHANGED
data/gnip.gemspec
CHANGED
@@ -4,26 +4,26 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
4
|
require 'gnip/version'
|
5
5
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
|
-
spec.name =
|
7
|
+
spec.name = 'gnip-client'
|
8
8
|
spec.version = Gnip::VERSION
|
9
|
-
spec.authors = [
|
10
|
-
spec.email = [
|
9
|
+
spec.authors = ['Duccio Giovannelli']
|
10
|
+
spec.email = ['giovannelli@extendi.it']
|
11
11
|
|
12
12
|
spec.summary = %q{A Ruby library for accessing the Gnip API. See https://gnip.com/ for full details and to sign up for an account.}
|
13
|
-
spec.homepage =
|
14
|
-
spec.license =
|
13
|
+
spec.homepage = 'https://github.com/giovannelli/gnip-client'
|
14
|
+
spec.license = 'MIT'
|
15
15
|
|
16
16
|
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
17
|
-
spec.bindir =
|
17
|
+
spec.bindir = 'exe'
|
18
18
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
19
|
-
spec.require_paths = [
|
19
|
+
spec.require_paths = ['lib']
|
20
20
|
|
21
|
-
spec.add_development_dependency
|
22
|
-
spec.add_development_dependency
|
23
|
-
spec.add_development_dependency
|
24
|
-
spec.add_development_dependency
|
21
|
+
spec.add_development_dependency 'bundler', '~> 1.9'
|
22
|
+
spec.add_development_dependency 'rake', '~> 10.0'
|
23
|
+
spec.add_development_dependency 'pry', '~> 0'
|
24
|
+
spec.add_development_dependency 'rspec', '~> 0'
|
25
25
|
|
26
|
-
spec.add_dependency 'httparty', '
|
27
|
-
spec.add_dependency 'em-http-request', '
|
28
|
-
spec.add_dependency 'activesupport', '
|
26
|
+
spec.add_dependency 'httparty', '~> 0'
|
27
|
+
spec.add_dependency 'em-http-request', '~> 1'
|
28
|
+
spec.add_dependency 'activesupport', '~> 4.2'
|
29
29
|
end
|
data/lib/gnip.rb
CHANGED
@@ -1,13 +1,13 @@
|
|
1
|
-
require
|
2
|
-
require
|
3
|
-
require
|
4
|
-
require
|
5
|
-
require
|
6
|
-
require
|
7
|
-
require
|
8
|
-
require
|
9
|
-
require
|
10
|
-
require
|
1
|
+
require 'active_support/core_ext/hash'
|
2
|
+
require 'httparty'
|
3
|
+
require 'gnip/version'
|
4
|
+
require 'gnip/power_track_client'
|
5
|
+
require 'gnip/gnip-rules/rules'
|
6
|
+
require 'gnip/gnip-full-archive/full_archive'
|
7
|
+
require 'gnip/gnip-stream/error_reconnect'
|
8
|
+
require 'gnip/gnip-stream/json_data_bufffer'
|
9
|
+
require 'gnip/gnip-stream/stream'
|
10
|
+
require 'gnip/gnip-stream/replay'
|
11
11
|
|
12
12
|
begin
|
13
13
|
require "pry"
|
@@ -16,15 +16,15 @@ module Gnip
|
|
16
16
|
@auth = { username: client.username, password: client.password }
|
17
17
|
end
|
18
18
|
|
19
|
-
#Search using the
|
20
|
-
#options[:query] query to twitter
|
21
|
-
#options[:per_page] default is 500
|
22
|
-
#options[:start_date] as datetime
|
23
|
-
#options[:end_date] as datetime
|
24
|
-
#options[:cursor_next] cursor to the next page
|
19
|
+
# Search using the full-archive search endpoint return an hash containing up to 500 results and the cursor to the next page
|
20
|
+
# options[:query] query to twitter
|
21
|
+
# options[:per_page] default is 500
|
22
|
+
# options[:start_date] as datetime
|
23
|
+
# options[:end_date] as datetime
|
24
|
+
# options[:cursor_next] cursor to the next page
|
25
25
|
def search(options = {})
|
26
26
|
search_options = {}
|
27
|
-
search_options[:query] = options[:query]||
|
27
|
+
search_options[:query] = options[:query]||''
|
28
28
|
search_options[:maxResults] = options[:per_page]||500
|
29
29
|
search_options[:fromDate] = Gnip.format_date(options[:date_from]) if options[:date_from]
|
30
30
|
search_options[:toDate] = Gnip.format_date(options[:date_to]) if options[:date_to]
|
@@ -32,16 +32,17 @@ module Gnip
|
|
32
32
|
url = [self.search_url, search_options.to_query].join('?')
|
33
33
|
begin
|
34
34
|
gnip_call = self.class.get(url, basic_auth: @auth)
|
35
|
+
response = gnip_call.response
|
35
36
|
parsed_response = gnip_call.parsed_response
|
36
37
|
parsed_response = (parsed_response||{}).with_indifferent_access
|
37
|
-
raise
|
38
|
+
raise response.message if !parsed_response.present?
|
38
39
|
if parsed_response[:error].present?
|
39
|
-
response = { results: [], next: nil, error: parsed_response[:error][:message] }
|
40
|
+
response = { results: [], next: nil, error: parsed_response[:error][:message], code: response.code.to_i }
|
40
41
|
else
|
41
|
-
response = { results: parsed_response[:results], next: parsed_response[:next] }
|
42
|
+
response = { results: parsed_response[:results], next: parsed_response[:next], code: response.code.to_i }
|
42
43
|
end
|
43
44
|
rescue Exception => e
|
44
|
-
response = { results: [], next: nil, error: e.message }
|
45
|
+
response = { results: [], next: nil, error: e.message, code: 500 }
|
45
46
|
end
|
46
47
|
return response
|
47
48
|
end
|
@@ -52,34 +53,44 @@ module Gnip
|
|
52
53
|
def total_by_time_period(options={})
|
53
54
|
response = options[:response]||{}
|
54
55
|
search_options = {}
|
55
|
-
search_options[:query] = options[:query]||
|
56
|
+
search_options[:query] = options[:query]||''
|
56
57
|
search_options[:bucket] = options[:bucket]||'day'
|
57
58
|
search_options[:fromDate] = Gnip.format_date(options[:date_from]) if options[:date_from]
|
58
59
|
search_options[:toDate] = Gnip.format_date(options[:date_to]) if options[:date_to]
|
59
|
-
search_options[:next] = options[:next_cursor] if options[:next_cursor]
|
60
|
+
search_options[:next] = options[:next_cursor] if options[:next_cursor]
|
61
|
+
|
60
62
|
url = [self.counts_url, search_options.to_query].join('?')
|
61
63
|
|
62
64
|
begin
|
63
65
|
gnip_call = self.class.get(url, basic_auth: @auth)
|
66
|
+
|
64
67
|
parsed_response = gnip_call.parsed_response
|
65
68
|
parsed_response = (parsed_response||{}).with_indifferent_access
|
69
|
+
|
66
70
|
raise gnip_call.response.message if !parsed_response.present?
|
71
|
+
|
67
72
|
if parsed_response[:error].present?
|
68
|
-
response = { results: [], next: nil, error: parsed_response[:error][:message] }
|
73
|
+
response = { results: [], next: nil, error: parsed_response[:error][:message], code: gnip_call.response.code.to_i, calls: calls }
|
69
74
|
else
|
70
75
|
parsed_response[:results].each_with_index do |item, i|
|
71
76
|
parsed_response[:results][i] = item.merge(timePeriod: DateTime.parse(item[:timePeriod]).to_s)
|
72
77
|
end
|
73
|
-
response = { results: (response[:results]||[]) + parsed_response[:results], next: parsed_response[:next] }
|
78
|
+
response = { results: (response[:results]||[]) + parsed_response[:results], next: parsed_response[:next], code: gnip_call.response.code.to_i, calls: (response[:calls]||0) + 1 }
|
74
79
|
end
|
75
80
|
rescue Exception => e
|
76
|
-
response = { results: [], next: nil, error: e.message }
|
81
|
+
response = { results: [], next: nil, error: e.message, code: 500 }
|
77
82
|
end
|
78
83
|
return response if !parsed_response[:next].to_s.present?
|
79
|
-
|
84
|
+
|
85
|
+
total_by_time_period(query: search_options[:query],
|
86
|
+
date_from: search_options[:fromDate],
|
87
|
+
date_to: search_options[:toDate],
|
88
|
+
bucket: search_options[:bucket],
|
89
|
+
next_cursor: parsed_response[:next],
|
90
|
+
response: response)
|
80
91
|
end
|
81
92
|
|
82
|
-
#return total contents in a specific date interval with a passed query
|
93
|
+
# return total contents in a specific date interval with a passed query
|
83
94
|
def total(options={})
|
84
95
|
extra = {}
|
85
96
|
response = total_by_time_period(options)
|
data/lib/gnip/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gnip-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Duccio Giovannelli
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-02-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -42,72 +42,72 @@ dependencies:
|
|
42
42
|
name: pry
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - "
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - "
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rspec
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - "
|
59
|
+
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - "
|
66
|
+
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: httparty
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - "
|
73
|
+
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '0'
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - "
|
80
|
+
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: em-http-request
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- - "
|
87
|
+
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 1
|
89
|
+
version: '1'
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - "
|
94
|
+
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 1
|
96
|
+
version: '1'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: activesupport
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- - "
|
101
|
+
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: 4.2
|
103
|
+
version: '4.2'
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- - "
|
108
|
+
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: 4.2
|
110
|
+
version: '4.2'
|
111
111
|
description:
|
112
112
|
email:
|
113
113
|
- giovannelli@extendi.it
|
@@ -156,7 +156,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
156
156
|
version: '0'
|
157
157
|
requirements: []
|
158
158
|
rubyforge_project:
|
159
|
-
rubygems_version: 2.
|
159
|
+
rubygems_version: 2.5.2
|
160
160
|
signing_key:
|
161
161
|
specification_version: 4
|
162
162
|
summary: A Ruby library for accessing the Gnip API. See https://gnip.com/ for full
|