tweetlr 0.1.1 → 0.1.2

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.
Files changed (4) hide show
  1. data/README.md +3 -1
  2. data/Rakefile +5 -5
  3. data/lib/tweetlr.rb +13 -3
  4. metadata +51 -53
data/README.md CHANGED
@@ -5,13 +5,15 @@ tweetlr crawls twitter for a given term, extracts photos out of the collected tw
5
5
  ## Supported image sharing services
6
6
 
7
7
  tweetlr supports
8
+
8
9
  - instagram
9
10
  - picplz
10
11
  - twitpic
11
12
  - yfrog
12
13
  - imgly
13
14
  - lockerz / the service formerly known as plixi
14
- - tco shortened links to pictures
15
+ - foursquare
16
+ - t.co shortened links to pictures
15
17
 
16
18
  ## Installation
17
19
 
data/Rakefile CHANGED
@@ -1,13 +1,13 @@
1
1
  require 'rubygems'
2
2
  require 'rake'
3
3
  require 'rake/clean'
4
- require 'rake/gempackagetask'
5
- require 'rake/rdoctask'
4
+ require 'rubygems/package_task'
5
+ require 'rdoc/task'
6
6
  require 'rake/testtask'
7
7
 
8
8
  spec = Gem::Specification.new do |s|
9
9
  s.name = 'tweetlr'
10
- s.version = '0.1.1'
10
+ s.version = '0.1.2'
11
11
  s.has_rdoc = true
12
12
  s.extra_rdoc_files = ['README.md', 'LICENSE']
13
13
  s.summary = %{tweetlr crawls twitter for a given term, extracts photos out of the collected tweets' short urls and posts the images to tumblr.}
@@ -23,13 +23,13 @@ spec = Gem::Specification.new do |s|
23
23
  s.add_dependency('curb')
24
24
  end
25
25
 
26
- Rake::GemPackageTask.new(spec) do |p|
26
+ Gem::PackageTask.new(spec) do |p|
27
27
  p.gem_spec = spec
28
28
  p.need_tar = true
29
29
  p.need_zip = true
30
30
  end
31
31
 
32
- Rake::RDocTask.new do |rdoc|
32
+ RDoc::Task.new do |rdoc|
33
33
  files =['README.md', 'LICENSE', 'lib/**/*.rb']
34
34
  rdoc.rdoc_files.add(files)
35
35
  rdoc.main = "README.md" # page to start on
data/lib/tweetlr.rb CHANGED
@@ -5,7 +5,9 @@ require 'json'
5
5
 
6
6
  class Tweetlr
7
7
 
8
+ VERSION = '0.1.2'
8
9
  GENERATOR = %{tweetlr - http://github.com/5v3n/tweetlr}
10
+ USER_AGENT = %{Mozilla/5.0 (compatible; tweetlr/#{VERSION};)}
9
11
  LOCATION_START_INDICATOR = 'Location: '
10
12
  LOCATION_STOP_INDICATOR = "\r\n"
11
13
 
@@ -141,9 +143,15 @@ class Tweetlr
141
143
  url = image_url_imgly link if link.index 'img.ly'
142
144
  url = image_url_tco link if link.index 't.co'
143
145
  url = image_url_lockerz link if link.index 'lockerz.com'
146
+ url = image_url_foursquare link if link.index '4sq.com'
144
147
  end
145
148
  url
146
149
  end
150
+ #find the image's url for a foursquare link
151
+ def image_url_foursquare(link_url)
152
+ response = http_get "http://api.embed.ly/1/oembed?url=#{link_url}"
153
+ response['url'] if response
154
+ end
147
155
  #find the image's url for a lockerz link
148
156
  def image_url_lockerz(link_url)
149
157
  response = http_get "http://api.plixi.com/api/tpapi.svc/json/metadatafromurl?details=false&url=#{link_url}"
@@ -224,12 +232,14 @@ class Tweetlr
224
232
 
225
233
  private
226
234
 
227
- #convenience method for curl http get calls
235
+ #convenience method for curl http get calls and parsing them to json.
228
236
  def http_get(request)
229
237
  tries = 3
230
238
  begin
231
- res = Curl::Easy.http_get(request)
232
- JSON.parse res.body_str
239
+ curl = Curl::Easy.new request
240
+ curl.useragent = USER_AGENT
241
+ curl.perform
242
+ JSON.parse curl.body_str
233
243
  rescue Curl::Err::ConnectionFailedError => err
234
244
  @log.error "Connection failed: #{err}"
235
245
  tries -= 1
metadata CHANGED
@@ -1,91 +1,89 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: tweetlr
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.2
4
5
  prerelease:
5
- version: 0.1.1
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Sven Kraeuter
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
-
13
- date: 2011-06-02 00:00:00 Z
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
12
+ date: 2011-06-06 00:00:00.000000000 +02:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
16
  name: daemons
17
- prerelease: false
18
- requirement: &id001 !ruby/object:Gem::Requirement
17
+ requirement: &2156428160 !ruby/object:Gem::Requirement
19
18
  none: false
20
- requirements:
21
- - - ">="
22
- - !ruby/object:Gem::Version
23
- version: "0"
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
22
+ version: '0'
24
23
  type: :runtime
25
- version_requirements: *id001
26
- - !ruby/object:Gem::Dependency
27
- name: eventmachine
28
24
  prerelease: false
29
- requirement: &id002 !ruby/object:Gem::Requirement
25
+ version_requirements: *2156428160
26
+ - !ruby/object:Gem::Dependency
27
+ name: eventmachine
28
+ requirement: &2156427180 !ruby/object:Gem::Requirement
30
29
  none: false
31
- requirements:
32
- - - ">="
33
- - !ruby/object:Gem::Version
34
- version: "0"
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
35
34
  type: :runtime
36
- version_requirements: *id002
37
- - !ruby/object:Gem::Dependency
38
- name: curb
39
35
  prerelease: false
40
- requirement: &id003 !ruby/object:Gem::Requirement
36
+ version_requirements: *2156427180
37
+ - !ruby/object:Gem::Dependency
38
+ name: curb
39
+ requirement: &2156426180 !ruby/object:Gem::Requirement
41
40
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- version: "0"
41
+ requirements:
42
+ - - ! '>='
43
+ - !ruby/object:Gem::Version
44
+ version: '0'
46
45
  type: :runtime
47
- version_requirements: *id003
48
- description: tweetlr crawls twitter for a given term, extracts photos out of the collected tweets' short urls and posts the images to tumblr.
46
+ prerelease: false
47
+ version_requirements: *2156426180
48
+ description: tweetlr crawls twitter for a given term, extracts photos out of the collected
49
+ tweets' short urls and posts the images to tumblr.
49
50
  email: mail@svenkraeuter.com
50
- executables:
51
+ executables:
51
52
  - tweetlr
52
53
  extensions: []
53
-
54
- extra_rdoc_files:
54
+ extra_rdoc_files:
55
55
  - README.md
56
56
  - LICENSE
57
- files:
57
+ files:
58
58
  - LICENSE
59
59
  - README.md
60
60
  - Rakefile
61
61
  - bin/tweetlr
62
62
  - lib/tweetlr.rb
63
+ has_rdoc: true
63
64
  homepage: http://github.com/5v3n/tweetlr
64
65
  licenses: []
65
-
66
66
  post_install_message:
67
67
  rdoc_options: []
68
-
69
- require_paths:
68
+ require_paths:
70
69
  - lib
71
- required_ruby_version: !ruby/object:Gem::Requirement
70
+ required_ruby_version: !ruby/object:Gem::Requirement
72
71
  none: false
73
- requirements:
74
- - - ">="
75
- - !ruby/object:Gem::Version
76
- version: "0"
77
- required_rubygems_version: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ! '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ required_rubygems_version: !ruby/object:Gem::Requirement
78
77
  none: false
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: "0"
78
+ requirements:
79
+ - - ! '>='
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
83
82
  requirements: []
84
-
85
83
  rubyforge_project:
86
- rubygems_version: 1.7.2
84
+ rubygems_version: 1.6.2
87
85
  signing_key:
88
86
  specification_version: 3
89
- summary: tweetlr crawls twitter for a given term, extracts photos out of the collected tweets' short urls and posts the images to tumblr.
87
+ summary: tweetlr crawls twitter for a given term, extracts photos out of the collected
88
+ tweets' short urls and posts the images to tumblr.
90
89
  test_files: []
91
-