rafaels-picasa 0.2.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.
@@ -0,0 +1,5 @@
1
+ README.rdoc
2
+ lib/**/*.rb
3
+ bin/*
4
+ features/**/*.feature
5
+ LICENSE
@@ -0,0 +1,5 @@
1
+ *.sw?
2
+ .DS_Store
3
+ coverage
4
+ rdoc
5
+ pkg
data/.rvmrc ADDED
@@ -0,0 +1 @@
1
+ rvm use 1.8.7@picasa
data/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2009 Wojciech Wnętrzak
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,54 @@
1
+ = Picasa
2
+
3
+ Simple google picasa managment.
4
+ Only for public albums so far.
5
+
6
+ = Installation
7
+
8
+ gem install rafaels-picasa
9
+
10
+ == Usage
11
+
12
+ user = Picasa::User.new('google_username')
13
+
14
+ Get an array of albums
15
+
16
+ user.albums
17
+
18
+ Get all photos from album with album_id
19
+
20
+ user.photos(:album_id => 1234567)
21
+
22
+ Get all photos from album object
23
+
24
+ user.albums.first.photos
25
+
26
+ Get all photos tagged with all given tags (tags separated by commas)
27
+ user.photos_by_tag('ruby, rails')
28
+
29
+ == Picasa::User
30
+
31
+ The google user.
32
+
33
+ user = Picasa::User.new('google_username')
34
+
35
+ == Picasa::Album
36
+
37
+ The album object. It has the following attributes:
38
+
39
+ id, title, summary, photos_count, photo, thumbnail, google_user and photos
40
+
41
+ Try it:
42
+
43
+ Picasa::Album.all('google_username')
44
+
45
+ == Picasa::Photo
46
+
47
+ Has the following attributes:
48
+
49
+ src, title, tags, thumbnail_1, thumbnail_2 and thumbnail_3
50
+
51
+ so, you can call:
52
+
53
+ user.photos_by_tag('ruby').first.src
54
+
@@ -0,0 +1,63 @@
1
+ # encoding: UTF-8
2
+
3
+ require 'rubygems'
4
+ require 'rake'
5
+
6
+ begin
7
+ require 'jeweler'
8
+ Jeweler::Tasks.new do |gem|
9
+ gem.name = "rafaels-picasa"
10
+ gem.description = %Q{Simple Google Picasa managment}
11
+ gem.summary = %Q{simple google picasa managment}
12
+ gem.email = "rafael@maisweb.org"
13
+ gem.homepage = "http://github.com/rafaels/picasa"
14
+ gem.authors = ["Wojciech Wnętrzak", "Rafael Souza", "Anderson Dias"]
15
+ gem.add_dependency('xml-simple')
16
+ gem.add_development_dependency 'test-unit', '>=2.0.6'
17
+ gem.add_development_dependency 'fakeweb'
18
+
19
+ # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
20
+ end
21
+ rescue LoadError
22
+ puts "Jeweler not available. Install it with: sudo gem install technicalpickles-jeweler -s http://gems.github.com"
23
+ end
24
+
25
+ require 'rake/testtask'
26
+ Rake::TestTask.new(:test) do |test|
27
+ test.libs << 'lib' << 'test'
28
+ test.pattern = 'test/**/*_test.rb'
29
+ test.verbose = true
30
+ end
31
+
32
+ begin
33
+ require 'rcov/rcovtask'
34
+ Rcov::RcovTask.new do |test|
35
+ test.libs << 'test'
36
+ test.pattern = 'test/**/*_test.rb'
37
+ test.verbose = true
38
+ end
39
+ rescue LoadError
40
+ task :rcov do
41
+ abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
42
+ end
43
+ end
44
+
45
+
46
+ task :default => :test
47
+
48
+ require 'rake/rdoctask'
49
+ Rake::RDocTask.new do |rdoc|
50
+ if File.exist?('VERSION.yml')
51
+ require 'yaml'
52
+ config = YAML.load(File.read('VERSION.yml'))
53
+ version = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}"
54
+ else
55
+ version = ""
56
+ end
57
+
58
+ rdoc.rdoc_dir = 'rdoc'
59
+ rdoc.title = "picasa #{version}"
60
+ rdoc.rdoc_files.include('README*')
61
+ rdoc.rdoc_files.include('lib/**/*.rb')
62
+ end
63
+
@@ -0,0 +1,5 @@
1
+ ---
2
+ :major: 0
3
+ :minor: 2
4
+ :patch: 3
5
+ :build:
data/console ADDED
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env ruby
2
+ require 'rubygems'
3
+ require 'picasa'
4
+ require 'irb'
5
+ IRB.start
@@ -0,0 +1,7 @@
1
+ require 'net/http'
2
+ require 'xmlsimple'
3
+
4
+ require 'picasa/connection'
5
+ require 'picasa/album'
6
+ require 'picasa/photo'
7
+ require 'picasa/user'
@@ -0,0 +1,50 @@
1
+ module Picasa
2
+ class Album
3
+ attr_accessor :id, :title, :summary, :photos_count, :photo, :thumbnail, :google_user, :photos
4
+
5
+ def self.parse_xml(google_user, xml_entry)
6
+ album = new(google_user)
7
+ album.id = xml_entry['id'][1]
8
+ album.title = xml_entry['title'][0]['content']
9
+ album.summary = if xml_entry['subtitle']
10
+ xml_entry['subtitle'][0]['content']
11
+ elsif xml_entry['summary']
12
+ xml_entry['summary'][0]['content']
13
+ end
14
+ album.photos_count = xml_entry['numphotos'][0].to_i
15
+ #has *group* when called from albums list
16
+ if xml_entry['group']
17
+ album.photo = xml_entry['group'][0]['content']['url']
18
+ album.thumbnail = xml_entry['group'][0]['thumbnail'][0]['url']
19
+ #has *entry* when called from find
20
+ elsif xml_entry['entry']
21
+ album.photos = xml_entry['entry'].map do |photo_xml_entry|
22
+ Photo.parse_xml(photo_xml_entry)
23
+ end
24
+ end
25
+ album
26
+ end
27
+
28
+ def self.all(google_user)
29
+ data = Picasa::Connection.stablish("/data/feed/api/user/#{google_user}")
30
+ xml = XmlSimple.xml_in(data)
31
+ xml['entry'].map do |album_xml_entry|
32
+ Picasa::Album.parse_xml(google_user, album_xml_entry)
33
+ end if xml['entry']
34
+ end
35
+
36
+ def self.find(google_user, album_id)
37
+ data = Picasa::Connection.stablish("/data/feed/api/user/#{google_user}/albumid/#{album_id}")
38
+ xml = XmlSimple.xml_in(data)
39
+ Album.parse_xml(google_user, xml)
40
+ end
41
+
42
+ def photos
43
+ @photos ||= Photo.find_all_by_album_id(self.google_user, self.id)
44
+ end
45
+
46
+ def initialize(google_user)
47
+ self.google_user = google_user
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,9 @@
1
+ module Picasa
2
+ module Connection
3
+ def self.stablish(url)
4
+ full_url = "http://picasaweb.google.com" + url
5
+ Net::HTTP.get(URI.parse(full_url))
6
+ end
7
+ end
8
+ end
9
+
@@ -0,0 +1,34 @@
1
+ module Picasa
2
+ class Photo
3
+ attr_accessor :title, :thumbnail_1, :thumbnail_2, :thumbnail_3, :tags, :src
4
+
5
+ def self.find_all_by_album_id(google_user, album_id)
6
+ data = Picasa::Connection.stablish("/data/feed/api/user/#{google_user}/albumid/#{album_id}")
7
+ Photo.parse_all_xml(data)
8
+ end
9
+
10
+ def self.find_all_by_tags(google_user, tags)
11
+ tags = tags.gsub(' ', '')
12
+ data = Picasa::Connection.stablish("/data/feed/api/user/#{google_user}?kind=photo&tag=#{tags}")
13
+ Photo.parse_all_xml(data)
14
+ end
15
+
16
+ def self.parse_xml(xml_entry)
17
+ photo = new
18
+ photo.title = xml_entry['group'][0]['description'][0]['content']
19
+ photo.thumbnail_1 = xml_entry['group'][0]['thumbnail'][0]['url']
20
+ photo.thumbnail_2 = xml_entry['group'][0]['thumbnail'][1]['url']
21
+ photo.thumbnail_3 = xml_entry['group'][0]['thumbnail'][2]['url']
22
+ photo.tags = xml_entry['group'][0]['keywords'][0]
23
+ photo.src = xml_entry['content']['src']
24
+ photo
25
+ end
26
+
27
+ def self.parse_all_xml(xml_data)
28
+ xml = XmlSimple.xml_in(xml_data)
29
+ xml['entry'].map do |photo_xml_entry|
30
+ Photo.parse_xml(photo_xml_entry)
31
+ end if xml['entry']
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,21 @@
1
+ module Picasa
2
+ class User
3
+ def initialize(google_user)
4
+ raise ArgumentError.new("You must specify a google user") unless google_user
5
+ @google_user = google_user
6
+ end
7
+
8
+ def albums
9
+ @albums ||= Picasa::Album.all(@google_user)
10
+ end
11
+
12
+ def photos(options = {})
13
+ raise ArgumentError.new("You must specify album_id") unless options[:album_id]
14
+ Picasa::Photo.find_all_by_album_id(@google_user, options[:album_id])
15
+ end
16
+
17
+ def photos_by_tags(tags)
18
+ Picasa::Photo.find_all_by_tags(@google_user, tags)
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,72 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{rafaels-picasa}
8
+ s.version = "0.2.3"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Wojciech Wn\304\231trzak", "Rafael Souza", "Anderson Dias"]
12
+ s.date = %q{2010-08-02}
13
+ s.description = %q{Simple Google Picasa managment}
14
+ s.email = %q{rafael@maisweb.org}
15
+ s.extra_rdoc_files = [
16
+ "LICENSE",
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ ".gitignore",
22
+ ".rvmrc",
23
+ "LICENSE",
24
+ "README.rdoc",
25
+ "Rakefile",
26
+ "VERSION.yml",
27
+ "console",
28
+ "lib/picasa.rb",
29
+ "lib/picasa/album.rb",
30
+ "lib/picasa/connection.rb",
31
+ "lib/picasa/photo.rb",
32
+ "lib/picasa/user.rb",
33
+ "rafaels-picasa.gemspec",
34
+ "test/album_test.rb",
35
+ "test/fixtures/albums",
36
+ "test/fixtures/first_album",
37
+ "test/fixtures/photos_by_tags",
38
+ "test/fixtures/second_album",
39
+ "test/test_helper.rb",
40
+ "test/user_test.rb"
41
+ ]
42
+ s.homepage = %q{http://github.com/rafaels/picasa}
43
+ s.rdoc_options = ["--charset=UTF-8"]
44
+ s.require_paths = ["lib"]
45
+ s.rubygems_version = %q{1.3.7}
46
+ s.summary = %q{simple google picasa managment}
47
+ s.test_files = [
48
+ "test/user_test.rb",
49
+ "test/album_test.rb",
50
+ "test/test_helper.rb"
51
+ ]
52
+
53
+ if s.respond_to? :specification_version then
54
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
55
+ s.specification_version = 3
56
+
57
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
58
+ s.add_runtime_dependency(%q<xml-simple>, [">= 0"])
59
+ s.add_development_dependency(%q<test-unit>, [">= 2.0.6"])
60
+ s.add_development_dependency(%q<fakeweb>, [">= 0"])
61
+ else
62
+ s.add_dependency(%q<xml-simple>, [">= 0"])
63
+ s.add_dependency(%q<test-unit>, [">= 2.0.6"])
64
+ s.add_dependency(%q<fakeweb>, [">= 0"])
65
+ end
66
+ else
67
+ s.add_dependency(%q<xml-simple>, [">= 0"])
68
+ s.add_dependency(%q<test-unit>, [">= 2.0.6"])
69
+ s.add_dependency(%q<fakeweb>, [">= 0"])
70
+ end
71
+ end
72
+
@@ -0,0 +1,42 @@
1
+ require "test_helper"
2
+
3
+ class AlbumTest < Test::Unit::TestCase
4
+ test "Should return all albums" do
5
+ albums = Picasa::Album.all("some.user")
6
+
7
+ assert_equal 2, albums.count
8
+ assert_equal "Copa", albums.first.title
9
+ assert_equal 1, albums[1].photos_count
10
+ assert_equal "5500679996869508145", albums.first.id
11
+ assert_equal "http://lh6.ggpht.com/_dWuTCTElt7M/TFZWYvDOe6E/AAAAAAAAABI/i6nzid5qDaw/Povo.jpg", albums[1].photo
12
+ assert_equal "Jogos da copa na casa de Ítalo!", albums.first.summary
13
+ assert_equal "http://lh6.ggpht.com/_dWuTCTElt7M/TFZWYvDOe6E/AAAAAAAAABI/i6nzid5qDaw/s160-c/Povo.jpg", albums[1].thumbnail
14
+ assert_equal "some.user", albums.first.google_user
15
+ end
16
+
17
+ test "Should find an album with user and id" do
18
+ album = Picasa::Album.find("some.user", "5500679996869508145")
19
+
20
+ assert_equal "5500679996869508145", album.id
21
+ assert_equal "Copa", album.title
22
+ assert_equal 3, album.photos_count
23
+ assert_equal "Jogos da copa na casa de Ítalo!", album.summary
24
+ assert_equal "some.user", album.google_user
25
+ end
26
+
27
+ test "Should find photos" do
28
+ photo = Picasa::Album.all("some.user")[1].photos.first
29
+
30
+ assert_equal "Luisa", photo.title
31
+
32
+ src = "http://lh6.ggpht.com/_dWuTCTElt7M/TFZWdxf0nSI/AAAAAAAAAA8/kcmV4QBFitM/DSC08628.jpg"
33
+ assert_equal src, photo.src
34
+
35
+ assert_equal "Praia, Povo", photo.tags
36
+
37
+ assert_not_nil photo.thumbnail_1
38
+ assert_not_nil photo.thumbnail_2
39
+ assert_not_nil photo.thumbnail_3
40
+ end
41
+ end
42
+
@@ -0,0 +1,16 @@
1
+ HTTP/1.1 200 OK
2
+ Set-Cookie: _rtok=AziiH0EtTyNj; Path=/; HttpOnly
3
+ Set-Cookie: S=photos_html=xofVMm768HlBTGmKQ1JSkA; Domain=.google.com; Path=/; HttpOnly
4
+ Content-Type: application/atom+xml; charset=UTF-8
5
+ Expires: Wed, 20 May 2009 10:51:15 GMT
6
+ Date: Wed, 20 May 2009 10:51:15 GMT
7
+ Cache-Control: private, must-revalidate, max-age=0
8
+ Vary: Accept, X-GData-Authorization, GData-Version, Cookie
9
+ GData-Version: 1.0
10
+ Last-Modified: Mon, 02 Aug 2009 05:28:42 GMT
11
+ Transfer-Encoding: chunked
12
+ X-Content-Type-Options: nosniff
13
+ Server: GFE/2.0
14
+
15
+ <?xml version='1.0' encoding='UTF-8'?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:gphoto='http://schemas.google.com/photos/2007' xmlns:media='http://search.yahoo.com/mrss/' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>http://picasaweb.google.com/data/feed/api/user/rafaelmkin</id><updated>2010-08-02T06:41:35.469Z</updated><category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/photos/2007#user'/><title type='text'>113547798794418356618</title><subtitle type='text'/><icon>http://lh6.ggpht.com/_dWuTCTElt7M/AAAATEEz0YA/AAAAAAAAAAA/gnrXtZbb3aY/s64-c/113547798794418356618.jpg</icon><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618'/><link rel='alternate' type='text/html' href='http://picasaweb.google.com/113547798794418356618'/><link rel='http://schemas.google.com/photos/2007#slideshow' type='application/x-shockwave-flash' href='http://picasaweb.google.com/s/c/bin/slideshow.swf?host=picasaweb.google.com&amp;RGB=0x000000&amp;feed=http%3A%2F%2Fpicasaweb.google.com%2Fdata%2Ffeed%2Fapi%2Fuser%2F113547798794418356618%3Falt%3Drss'/><link rel='self' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618?start-index=1&amp;max-results=1000'/><author><name>Rafael Souza</name><uri>http://picasaweb.google.com/113547798794418356618</uri></author><generator version='1.00' uri='http://picasaweb.google.com/'>Picasaweb</generator><openSearch:totalResults>2</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>1000</openSearch:itemsPerPage><gphoto:user>113547798794418356618</gphoto:user><gphoto:nickname>Rafael Souza</gphoto:nickname><gphoto:thumbnail>http://lh6.ggpht.com/_dWuTCTElt7M/AAAATEEz0YA/AAAAAAAAAAA/gnrXtZbb3aY/s64-c/113547798794418356618.jpg</gphoto:thumbnail><entry><id>http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500679996869508145</id><published>2010-06-28T02:54:23.000Z</published><updated>2010-08-02T06:39:42.045Z</updated><category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/photos/2007#album'/><title type='text'>Copa</title><summary type='text'>Jogos da copa na casa de Ítalo!</summary><rights type='text'>public</rights><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618/albumid/5500679996869508145'/><link rel='alternate' type='text/html' href='http://picasaweb.google.com/113547798794418356618/Copa'/><link rel='self' type='application/atom+xml' href='http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500679996869508145'/><author><name>Rafael Souza</name><uri>http://picasaweb.google.com/113547798794418356618</uri></author><gphoto:id>5500679996869508145</gphoto:id><gphoto:name>Copa</gphoto:name><gphoto:location/><gphoto:access>public</gphoto:access><gphoto:timestamp>1277693663000</gphoto:timestamp><gphoto:numphotos>3</gphoto:numphotos><gphoto:user>113547798794418356618</gphoto:user><gphoto:nickname>Rafael Souza</gphoto:nickname><gphoto:commentingEnabled>true</gphoto:commentingEnabled><gphoto:commentCount>0</gphoto:commentCount><media:group><media:content url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZXUDSA_DE/AAAAAAAAABw/y2RCbqJE_xY/Copa.jpg' type='image/jpeg' medium='image'/><media:credit>Rafael Souza</media:credit><media:description type='plain'>Jogos da copa na casa de Ítalo!</media:description><media:keywords/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZXUDSA_DE/AAAAAAAAABw/y2RCbqJE_xY/s160-c/Copa.jpg' height='160' width='160'/><media:title type='plain'>Copa</media:title></media:group></entry><entry><id>http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500678977826487201</id><published>2010-02-27T02:39:45.000Z</published><updated>2010-08-02T05:27:52.068Z</updated><category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/photos/2007#album'/><title type='text'>Povo</title><summary type='text'/><rights type='text'>public</rights><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618/albumid/5500678977826487201'/><link rel='alternate' type='text/html' href='http://picasaweb.google.com/113547798794418356618/Povo'/><link rel='self' type='application/atom+xml' href='http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500678977826487201'/><author><name>Rafael Souza</name><uri>http://picasaweb.google.com/113547798794418356618</uri></author><gphoto:id>5500678977826487201</gphoto:id><gphoto:name>Povo</gphoto:name><gphoto:location/><gphoto:access>public</gphoto:access><gphoto:timestamp>1267238385000</gphoto:timestamp><gphoto:numphotos>1</gphoto:numphotos><gphoto:user>113547798794418356618</gphoto:user><gphoto:nickname>Rafael Souza</gphoto:nickname><gphoto:commentingEnabled>true</gphoto:commentingEnabled><gphoto:commentCount>0</gphoto:commentCount><media:group><media:content url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZWYvDOe6E/AAAAAAAAABI/i6nzid5qDaw/Povo.jpg' type='image/jpeg' medium='image'/><media:credit>Rafael Souza</media:credit><media:description type='plain'/><media:keywords/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZWYvDOe6E/AAAAAAAAABI/i6nzid5qDaw/s160-c/Povo.jpg' height='160' width='160'/><media:title type='plain'>Povo</media:title></media:group></entry></feed>
16
+
@@ -0,0 +1,16 @@
1
+ HTTP/1.1 200 OK
2
+ Set-Cookie: _rtok=AziiH0EtTyNj; Path=/; HttpOnly
3
+ Set-Cookie: S=photos_html=xofVMm768HlBTGmKQ1JSkA; Domain=.google.com; Path=/; HttpOnly
4
+ Content-Type: application/atom+xml; charset=UTF-8
5
+ Expires: Wed, 20 May 2009 10:51:15 GMT
6
+ Date: Wed, 20 May 2009 10:51:15 GMT
7
+ Cache-Control: private, must-revalidate, max-age=0
8
+ Vary: Accept, X-GData-Authorization, GData-Version, Cookie
9
+ GData-Version: 1.0
10
+ Last-Modified: Mon, 02 Aug 2009 05:30:17 GMT
11
+ Transfer-Encoding: chunked
12
+ X-Content-Type-Options: nosniff
13
+ Server: GFE/2.0
14
+
15
+ <?xml version='1.0' encoding='UTF-8'?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:exif='http://schemas.google.com/photos/exif/2007' xmlns:gphoto='http://schemas.google.com/photos/2007' xmlns:media='http://search.yahoo.com/mrss/' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>http://picasaweb.google.com/data/feed/api/user/rafaelmkin/albumid/5500679996869508145</id><updated>2010-08-02T06:39:42.045Z</updated><category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/photos/2007#album'/><title type='text'>Copa</title><subtitle type='text'>Jogos da copa na casa de Ítalo!</subtitle><rights type='text'>public</rights><icon>http://lh6.ggpht.com/_dWuTCTElt7M/TFZXUDSA_DE/AAAAAAAAABw/y2RCbqJE_xY/s160-c/Copa.jpg</icon><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618/albumid/5500679996869508145'/><link rel='alternate' type='text/html' href='http://picasaweb.google.com/113547798794418356618/Copa'/><link rel='http://schemas.google.com/photos/2007#slideshow' type='application/x-shockwave-flash' href='http://picasaweb.google.com/s/c/bin/slideshow.swf?host=picasaweb.google.com&amp;RGB=0x000000&amp;feed=http%3A%2F%2Fpicasaweb.google.com%2Fdata%2Ffeed%2Fapi%2Fuser%2F113547798794418356618%2Falbumid%2F5500679996869508145%3Falt%3Drss'/><link rel='http://schemas.google.com/photos/2007#report' type='text/html' href='http://picasaweb.google.com/lh/reportAbuse?uname=113547798794418356618&amp;aid=5500679996869508145'/><link rel='self' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618/albumid/5500679996869508145?start-index=1&amp;max-results=1000'/><author><name>Rafael Souza</name><uri>http://picasaweb.google.com/113547798794418356618</uri></author><generator version='1.00' uri='http://picasaweb.google.com/'>Picasaweb</generator><openSearch:totalResults>3</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>1000</openSearch:itemsPerPage><gphoto:id>5500679996869508145</gphoto:id><gphoto:name>Copa</gphoto:name><gphoto:location/><gphoto:access>public</gphoto:access><gphoto:timestamp>1277693663000</gphoto:timestamp><gphoto:numphotos>3</gphoto:numphotos><gphoto:user>113547798794418356618</gphoto:user><gphoto:nickname>Rafael Souza</gphoto:nickname><gphoto:commentingEnabled>true</gphoto:commentingEnabled><gphoto:commentCount>0</gphoto:commentCount><gphoto:allowPrints>true</gphoto:allowPrints><gphoto:allowDownloads>true</gphoto:allowDownloads><entry><id>http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500679996869508145/photoid/5500680017463624946</id><published>2010-08-02T05:27:49.000Z</published><updated>2010-08-02T05:27:49.390Z</updated><category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/photos/2007#photo'/><title type='text'>OgAAADdURh92k5AUxNHLq_Dl_BY7kBnqgXJ_7Py-LBlR3ssljOeS5ArttCF_o5md16rv4boPtXbEOQQDs6mTC49ahzIAm1T1UMCqJLx31-8Mwd7mP3yXCLvXJifC.jpg</title><summary type='text'/><content type='image/jpeg' src='http://lh6.ggpht.com/_dWuTCTElt7M/TFZXVQACRPI/AAAAAAAAABY/Dvz3r7w4iJQ/OgAAADdURh92k5AUxNHLq_Dl_BY7kBnqgXJ_7Py-LBlR3ssljOeS5ArttCF_o5md16rv4boPtXbEOQQDs6mTC49ahzIAm1T1UMCqJLx31-8Mwd7mP3yXCLvXJifC.jpg'/><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618/albumid/5500679996869508145/photoid/5500680017463624946'/><link rel='alternate' type='text/html' href='http://picasaweb.google.com/113547798794418356618/Copa#5500680017463624946'/><link rel='http://schemas.google.com/photos/2007#canonical' type='text/html' href='http://picasaweb.google.com/lh/photo/W05EFJRdfLdkplck5-HIxQ'/><link rel='self' type='application/atom+xml' href='http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500679996869508145/photoid/5500680017463624946'/><link rel='http://schemas.google.com/photos/2007#report' type='text/html' href='http://picasaweb.google.com/lh/reportAbuse?uname=113547798794418356618&amp;aid=5500679996869508145&amp;iid=5500680017463624946'/><gphoto:id>5500680017463624946</gphoto:id><gphoto:version>1</gphoto:version><gphoto:position>1.0</gphoto:position><gphoto:albumid>5500679996869508145</gphoto:albumid><gphoto:access>public</gphoto:access><gphoto:width>800</gphoto:width><gphoto:height>600</gphoto:height><gphoto:size>56711</gphoto:size><gphoto:client>picasa</gphoto:client><gphoto:checksum>13fde047</gphoto:checksum><gphoto:timestamp>1277693663000</gphoto:timestamp><gphoto:imageVersion>22</gphoto:imageVersion><gphoto:commentCount>0</gphoto:commentCount><gphoto:license id='0' name='All Rights Reserved' url=''>ALL_RIGHTS_RESERVED</gphoto:license><exif:tags><exif:imageUniqueID>5ed7634d4463af0d0b531a9302b3a33e</exif:imageUniqueID></exif:tags><media:group><media:content url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZXVQACRPI/AAAAAAAAABY/Dvz3r7w4iJQ/OgAAADdURh92k5AUxNHLq_Dl_BY7kBnqgXJ_7Py-LBlR3ssljOeS5ArttCF_o5md16rv4boPtXbEOQQDs6mTC49ahzIAm1T1UMCqJLx31-8Mwd7mP3yXCLvXJifC.jpg' height='600' width='800' type='image/jpeg' medium='image'/><media:credit>Rafael Souza</media:credit><media:description type='plain'/><media:keywords/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZXVQACRPI/AAAAAAAAABY/Dvz3r7w4iJQ/s72/OgAAADdURh92k5AUxNHLq_Dl_BY7kBnqgXJ_7Py-LBlR3ssljOeS5ArttCF_o5md16rv4boPtXbEOQQDs6mTC49ahzIAm1T1UMCqJLx31-8Mwd7mP3yXCLvXJifC.jpg' height='54' width='72'/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZXVQACRPI/AAAAAAAAABY/Dvz3r7w4iJQ/s144/OgAAADdURh92k5AUxNHLq_Dl_BY7kBnqgXJ_7Py-LBlR3ssljOeS5ArttCF_o5md16rv4boPtXbEOQQDs6mTC49ahzIAm1T1UMCqJLx31-8Mwd7mP3yXCLvXJifC.jpg' height='108' width='144'/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZXVQACRPI/AAAAAAAAABY/Dvz3r7w4iJQ/s288/OgAAADdURh92k5AUxNHLq_Dl_BY7kBnqgXJ_7Py-LBlR3ssljOeS5ArttCF_o5md16rv4boPtXbEOQQDs6mTC49ahzIAm1T1UMCqJLx31-8Mwd7mP3yXCLvXJifC.jpg' height='216' width='288'/><media:title type='plain'>OgAAADdURh92k5AUxNHLq_Dl_BY7kBnqgXJ_7Py-LBlR3ssljOeS5ArttCF_o5md16rv4boPtXbEOQQDs6mTC49ahzIAm1T1UMCqJLx31-8Mwd7mP3yXCLvXJifC.jpg</media:title></media:group></entry><entry><id>http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500679996869508145/photoid/5500698524635169330</id><published>2010-08-02T06:39:38.000Z</published><updated>2010-08-02T06:39:38.064Z</updated><category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/photos/2007#photo'/><title type='text'>OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg</title><summary type='text'/><content type='image/jpeg' src='http://lh6.ggpht.com/_dWuTCTElt7M/TFZoKgllAjI/AAAAAAAAABs/ztVJi9aAm-M/OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg'/><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618/albumid/5500679996869508145/photoid/5500698524635169330'/><link rel='alternate' type='text/html' href='http://picasaweb.google.com/113547798794418356618/Copa#5500698524635169330'/><link rel='http://schemas.google.com/photos/2007#canonical' type='text/html' href='http://picasaweb.google.com/lh/photo/pwybn-WyT1M-FkNuioXKEQ'/><link rel='self' type='application/atom+xml' href='http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500679996869508145/photoid/5500698524635169330'/><link rel='http://schemas.google.com/photos/2007#report' type='text/html' href='http://picasaweb.google.com/lh/reportAbuse?uname=113547798794418356618&amp;aid=5500679996869508145&amp;iid=5500698524635169330'/><gphoto:id>5500698524635169330</gphoto:id><gphoto:version>1</gphoto:version><gphoto:position>2.0</gphoto:position><gphoto:albumid>5500679996869508145</gphoto:albumid><gphoto:access>public</gphoto:access><gphoto:width>800</gphoto:width><gphoto:height>600</gphoto:height><gphoto:size>50497</gphoto:size><gphoto:client>picasa</gphoto:client><gphoto:checksum>13f1e047</gphoto:checksum><gphoto:timestamp>1277693631000</gphoto:timestamp><gphoto:imageVersion>27</gphoto:imageVersion><gphoto:commentCount>0</gphoto:commentCount><gphoto:license id='0' name='All Rights Reserved' url=''>ALL_RIGHTS_RESERVED</gphoto:license><exif:tags><exif:imageUniqueID>af0867c2621e4e4361df587fdd993816</exif:imageUniqueID></exif:tags><media:group><media:content url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZoKgllAjI/AAAAAAAAABs/ztVJi9aAm-M/OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg' height='600' width='800' type='image/jpeg' medium='image'/><media:credit>Rafael Souza</media:credit><media:description type='plain'/><media:keywords/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZoKgllAjI/AAAAAAAAABs/ztVJi9aAm-M/s72/OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg' height='54' width='72'/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZoKgllAjI/AAAAAAAAABs/ztVJi9aAm-M/s144/OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg' height='108' width='144'/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZoKgllAjI/AAAAAAAAABs/ztVJi9aAm-M/s288/OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg' height='216' width='288'/><media:title type='plain'>OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg</media:title></media:group></entry><entry><id>http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500679996869508145/photoid/5500698543963113938</id><published>2010-08-02T06:39:42.000Z</published><updated>2010-08-02T06:39:42.045Z</updated><category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/photos/2007#photo'/><title type='text'>OgAAACuzsxMo94iZU_4mzkq2cW7d-7OmKEgh65uP21X0_HA-blEfbJg9uXG---rdZVlJ83nSsll7L0aY4MRvHYz4B0UAm1T1UFmcuUuJoIb9fHOSMyTKUaVVb4fb.jpg</title><summary type='text'/><content type='image/jpeg' src='http://lh3.ggpht.com/_dWuTCTElt7M/TFZoLoluCdI/AAAAAAAAABw/KFc_e7eKeps/OgAAACuzsxMo94iZU_4mzkq2cW7d-7OmKEgh65uP21X0_HA-blEfbJg9uXG---rdZVlJ83nSsll7L0aY4MRvHYz4B0UAm1T1UFmcuUuJoIb9fHOSMyTKUaVVb4fb.jpg'/><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618/albumid/5500679996869508145/photoid/5500698543963113938'/><link rel='alternate' type='text/html' href='http://picasaweb.google.com/113547798794418356618/Copa#5500698543963113938'/><link rel='http://schemas.google.com/photos/2007#canonical' type='text/html' href='http://picasaweb.google.com/lh/photo/LX2K0rSOUjFrLSGEczbN_A'/><link rel='self' type='application/atom+xml' href='http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500679996869508145/photoid/5500698543963113938'/><link rel='http://schemas.google.com/photos/2007#report' type='text/html' href='http://picasaweb.google.com/lh/reportAbuse?uname=113547798794418356618&amp;aid=5500679996869508145&amp;iid=5500698543963113938'/><gphoto:id>5500698543963113938</gphoto:id><gphoto:version>1</gphoto:version><gphoto:position>3.0</gphoto:position><gphoto:albumid>5500679996869508145</gphoto:albumid><gphoto:access>public</gphoto:access><gphoto:width>800</gphoto:width><gphoto:height>600</gphoto:height><gphoto:size>55911</gphoto:size><gphoto:client>picasa</gphoto:client><gphoto:checksum>13fd8047</gphoto:checksum><gphoto:timestamp>1277693660000</gphoto:timestamp><gphoto:imageVersion>28</gphoto:imageVersion><gphoto:commentCount>0</gphoto:commentCount><gphoto:license id='0' name='All Rights Reserved' url=''>ALL_RIGHTS_RESERVED</gphoto:license><exif:tags><exif:imageUniqueID>a8187aaa0d751ec5160ae8367dd609db</exif:imageUniqueID></exif:tags><media:group><media:content url='http://lh3.ggpht.com/_dWuTCTElt7M/TFZoLoluCdI/AAAAAAAAABw/KFc_e7eKeps/OgAAACuzsxMo94iZU_4mzkq2cW7d-7OmKEgh65uP21X0_HA-blEfbJg9uXG---rdZVlJ83nSsll7L0aY4MRvHYz4B0UAm1T1UFmcuUuJoIb9fHOSMyTKUaVVb4fb.jpg' height='600' width='800' type='image/jpeg' medium='image'/><media:credit>Rafael Souza</media:credit><media:description type='plain'/><media:keywords/><media:thumbnail url='http://lh3.ggpht.com/_dWuTCTElt7M/TFZoLoluCdI/AAAAAAAAABw/KFc_e7eKeps/s72/OgAAACuzsxMo94iZU_4mzkq2cW7d-7OmKEgh65uP21X0_HA-blEfbJg9uXG---rdZVlJ83nSsll7L0aY4MRvHYz4B0UAm1T1UFmcuUuJoIb9fHOSMyTKUaVVb4fb.jpg' height='54' width='72'/><media:thumbnail url='http://lh3.ggpht.com/_dWuTCTElt7M/TFZoLoluCdI/AAAAAAAAABw/KFc_e7eKeps/s144/OgAAACuzsxMo94iZU_4mzkq2cW7d-7OmKEgh65uP21X0_HA-blEfbJg9uXG---rdZVlJ83nSsll7L0aY4MRvHYz4B0UAm1T1UFmcuUuJoIb9fHOSMyTKUaVVb4fb.jpg' height='108' width='144'/><media:thumbnail url='http://lh3.ggpht.com/_dWuTCTElt7M/TFZoLoluCdI/AAAAAAAAABw/KFc_e7eKeps/s288/OgAAACuzsxMo94iZU_4mzkq2cW7d-7OmKEgh65uP21X0_HA-blEfbJg9uXG---rdZVlJ83nSsll7L0aY4MRvHYz4B0UAm1T1UFmcuUuJoIb9fHOSMyTKUaVVb4fb.jpg' height='216' width='288'/><media:title type='plain'>OgAAACuzsxMo94iZU_4mzkq2cW7d-7OmKEgh65uP21X0_HA-blEfbJg9uXG---rdZVlJ83nSsll7L0aY4MRvHYz4B0UAm1T1UFmcuUuJoIb9fHOSMyTKUaVVb4fb.jpg</media:title></media:group></entry></feed>
16
+
@@ -0,0 +1,16 @@
1
+ HTTP/1.1 200 OK
2
+ Set-Cookie: _rtok=AziiH0EtTyNj; Path=/; HttpOnly
3
+ Set-Cookie: S=photos_html=xofVMm768HlBTGmKQ1JSkA; Domain=.google.com; Path=/; HttpOnly
4
+ Content-Type: application/atom+xml; charset=UTF-8
5
+ Expires: Wed, 20 May 2009 10:51:15 GMT
6
+ Date: Wed, 20 May 2009 10:51:15 GMT
7
+ Cache-Control: private, must-revalidate, max-age=0
8
+ Vary: Accept, X-GData-Authorization, GData-Version, Cookie
9
+ GData-Version: 1.0
10
+ Last-Modified: Mon, 02 Aug 2009 06:45:59 GMT
11
+ Transfer-Encoding: chunked
12
+ X-Content-Type-Options: nosniff
13
+ Server: GFE/2.0
14
+
15
+ <?xml version='1.0' encoding='UTF-8'?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:exif='http://schemas.google.com/photos/exif/2007' xmlns:gphoto='http://schemas.google.com/photos/2007' xmlns:media='http://search.yahoo.com/mrss/' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>http://picasaweb.google.com/data/feed/api/user/rafaelmkin</id><updated>2010-08-02T06:43:49.482Z</updated><category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/photos/2007#user'/><title type='text'>113547798794418356618</title><subtitle type='text'/><icon>http://lh6.ggpht.com/_dWuTCTElt7M/AAAATEEz0YA/AAAAAAAAAAA/gnrXtZbb3aY/s64-c/113547798794418356618.jpg</icon><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618'/><link rel='alternate' type='text/html' href='http://picasaweb.google.com/113547798794418356618'/><link rel='http://schemas.google.com/photos/2007#slideshow' type='application/x-shockwave-flash' href='http://picasaweb.google.com/s/c/bin/slideshow.swf?host=picasaweb.google.com&amp;RGB=0x000000&amp;feed=http%3A%2F%2Fpicasaweb.google.com%2Fdata%2Ffeed%2Fapi%2Fuser%2F113547798794418356618%3Falt%3Drss'/><link rel='self' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618?start-index=1&amp;max-results=100&amp;tag=Praia%2CPovo&amp;kind=photo'/><author><name>Rafael Souza</name><uri>http://picasaweb.google.com/113547798794418356618</uri></author><generator version='1.00' uri='http://picasaweb.google.com/'>Picasaweb</generator><openSearch:totalResults>2</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><gphoto:user>113547798794418356618</gphoto:user><gphoto:nickname>Rafael Souza</gphoto:nickname><gphoto:thumbnail>http://lh6.ggpht.com/_dWuTCTElt7M/AAAATEEz0YA/AAAAAAAAAAA/gnrXtZbb3aY/s64-c/113547798794418356618.jpg</gphoto:thumbnail><entry><id>http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500678977826487201/photoid/5500679064382643490</id><published>2010-08-02T05:24:07.000Z</published><updated>2010-08-02T06:17:55.649Z</updated><category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/photos/2007#photo'/><title type='text'>DSC08628.jpg</title><summary type='text'>Luisa</summary><content type='image/jpeg' src='http://lh6.ggpht.com/_dWuTCTElt7M/TFZWdxf0nSI/AAAAAAAAAA8/kcmV4QBFitM/DSC08628.jpg'/><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618/albumid/5500678977826487201/photoid/5500679064382643490'/><link rel='alternate' type='text/html' href='http://picasaweb.google.com/113547798794418356618/Povo#5500679064382643490'/><link rel='http://schemas.google.com/photos/2007#canonical' type='text/html' href='http://picasaweb.google.com/lh/photo/TjD0-BMejNqJlfxzBzdARA'/><link rel='self' type='application/atom+xml' href='http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500678977826487201/photoid/5500679064382643490'/><link rel='http://schemas.google.com/photos/2007#report' type='text/html' href='http://picasaweb.google.com/lh/reportAbuse?uname=113547798794418356618&amp;aid=5500678977826487201&amp;iid=5500679064382643490'/><author type='owner'><name>Rafael Souza</name><uri>http://picasaweb.google.com/113547798794418356618</uri><email>113547798794418356618</email><gphoto:nickname>Rafael Souza</gphoto:nickname><gphoto:thumbnail>http://lh6.ggpht.com/_dWuTCTElt7M/AAAATEEz0YA/AAAAAAAAAAA/gnrXtZbb3aY/s32-c/113547798794418356618.jpg</gphoto:thumbnail><gphoto:user>113547798794418356618</gphoto:user></author><gphoto:id>5500679064382643490</gphoto:id><gphoto:version>4</gphoto:version><gphoto:albumid>5500678977826487201</gphoto:albumid><gphoto:access>public</gphoto:access><gphoto:width>1296</gphoto:width><gphoto:height>972</gphoto:height><gphoto:size>282085</gphoto:size><gphoto:client>picasa</gphoto:client><gphoto:checksum>22d82033</gphoto:checksum><gphoto:timestamp>1267238385000</gphoto:timestamp><gphoto:imageVersion>15</gphoto:imageVersion><gphoto:commentCount>0</gphoto:commentCount><gphoto:license id='0' name='All Rights Reserved' url=''>ALL_RIGHTS_RESERVED</gphoto:license><exif:tags><exif:time>1267238385000</exif:time><exif:imageUniqueID>ae9a9ef43ce83188def5dde1121017a2</exif:imageUniqueID></exif:tags><media:group><media:content url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZWdxf0nSI/AAAAAAAAAA8/kcmV4QBFitM/DSC08628.jpg' height='972' width='1296' type='image/jpeg' medium='image'/><media:credit>Rafael Souza</media:credit><media:description type='plain'>Luisa</media:description><media:keywords>Praia, Povo</media:keywords><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZWdxf0nSI/AAAAAAAAAA8/kcmV4QBFitM/s72/DSC08628.jpg' height='54' width='72'/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZWdxf0nSI/AAAAAAAAAA8/kcmV4QBFitM/s144/DSC08628.jpg' height='108' width='144'/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZWdxf0nSI/AAAAAAAAAA8/kcmV4QBFitM/s288/DSC08628.jpg' height='216' width='288'/><media:title type='plain'>DSC08628.jpg</media:title></media:group><gphoto:albumtitle>Povo</gphoto:albumtitle><gphoto:albumctitle>Povo</gphoto:albumctitle><gphoto:albumdesc/><gphoto:location/><gphoto:snippet/><gphoto:snippettype>PHOTO_DESCRIPTION</gphoto:snippettype><gphoto:truncated>0</gphoto:truncated></entry><entry><id>http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500679996869508145/photoid/5500698524635169330</id><published>2010-08-02T06:39:38.000Z</published><updated>2010-08-02T06:41:35.469Z</updated><category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/photos/2007#photo'/><title type='text'>OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg</title><summary type='text'/><content type='image/jpeg' src='http://lh6.ggpht.com/_dWuTCTElt7M/TFZoKgllAjI/AAAAAAAAABs/ztVJi9aAm-M/OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg'/><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618/albumid/5500679996869508145/photoid/5500698524635169330'/><link rel='alternate' type='text/html' href='http://picasaweb.google.com/113547798794418356618/Copa#5500698524635169330'/><link rel='http://schemas.google.com/photos/2007#canonical' type='text/html' href='http://picasaweb.google.com/lh/photo/pwybn-WyT1M-FkNuioXKEQ'/><link rel='self' type='application/atom+xml' href='http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500679996869508145/photoid/5500698524635169330'/><link rel='http://schemas.google.com/photos/2007#report' type='text/html' href='http://picasaweb.google.com/lh/reportAbuse?uname=113547798794418356618&amp;aid=5500679996869508145&amp;iid=5500698524635169330'/><author type='owner'><name>Rafael Souza</name><uri>http://picasaweb.google.com/113547798794418356618</uri><email>113547798794418356618</email><gphoto:nickname>Rafael Souza</gphoto:nickname><gphoto:thumbnail>http://lh6.ggpht.com/_dWuTCTElt7M/AAAATEEz0YA/AAAAAAAAAAA/gnrXtZbb3aY/s32-c/113547798794418356618.jpg</gphoto:thumbnail><gphoto:user>113547798794418356618</gphoto:user></author><gphoto:id>5500698524635169330</gphoto:id><gphoto:version>3</gphoto:version><gphoto:albumid>5500679996869508145</gphoto:albumid><gphoto:access>public</gphoto:access><gphoto:width>800</gphoto:width><gphoto:height>600</gphoto:height><gphoto:size>50497</gphoto:size><gphoto:client>picasa</gphoto:client><gphoto:checksum>13f1e047</gphoto:checksum><gphoto:timestamp>1277693631000</gphoto:timestamp><gphoto:imageVersion>27</gphoto:imageVersion><gphoto:commentCount>0</gphoto:commentCount><gphoto:license id='0' name='All Rights Reserved' url=''>ALL_RIGHTS_RESERVED</gphoto:license><exif:tags><exif:time>1277693631000</exif:time><exif:imageUniqueID>af0867c2621e4e4361df587fdd993816</exif:imageUniqueID></exif:tags><media:group><media:content url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZoKgllAjI/AAAAAAAAABs/ztVJi9aAm-M/OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg' height='600' width='800' type='image/jpeg' medium='image'/><media:credit>Rafael Souza</media:credit><media:description type='plain'/><media:keywords>Povo, Praia</media:keywords><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZoKgllAjI/AAAAAAAAABs/ztVJi9aAm-M/s72/OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg' height='54' width='72'/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZoKgllAjI/AAAAAAAAABs/ztVJi9aAm-M/s144/OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg' height='108' width='144'/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZoKgllAjI/AAAAAAAAABs/ztVJi9aAm-M/s288/OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg' height='216' width='288'/><media:title type='plain'>OgAAABOaf4YCTk5KV4iJbu_mDia1EO50B0sPs7AWaQQjbamP9YRdXMyLPlGmis_MrVdLVs8jLxnL22ZKdmCEaMRHnnMAm1T1UKe1m1Mb7skiuIl--pp4qn68AH-I.jpg</media:title></media:group><gphoto:albumtitle>Copa</gphoto:albumtitle><gphoto:albumctitle>Copa</gphoto:albumctitle><gphoto:albumdesc>Jogos da copa na casa de Ítalo!</gphoto:albumdesc><gphoto:location/><gphoto:snippet/><gphoto:snippettype>PHOTO_DESCRIPTION</gphoto:snippettype><gphoto:truncated>0</gphoto:truncated></entry></feed>
16
+
@@ -0,0 +1,16 @@
1
+ HTTP/1.1 200 OK
2
+ Set-Cookie: _rtok=AziiH0EtTyNj; Path=/; HttpOnly
3
+ Set-Cookie: S=photos_html=xofVMm768HlBTGmKQ1JSkA; Domain=.google.com; Path=/; HttpOnly
4
+ Content-Type: application/atom+xml; charset=UTF-8
5
+ Expires: Wed, 20 May 2009 10:51:15 GMT
6
+ Date: Wed, 20 May 2009 10:51:15 GMT
7
+ Cache-Control: private, must-revalidate, max-age=0
8
+ Vary: Accept, X-GData-Authorization, GData-Version, Cookie
9
+ GData-Version: 1.0
10
+ Last-Modified: Mon, 02 Aug 2009 05:33:12 GMT
11
+ Transfer-Encoding: chunked
12
+ X-Content-Type-Options: nosniff
13
+ Server: GFE/2.0
14
+
15
+ <?xml version='1.0' encoding='UTF-8'?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:exif='http://schemas.google.com/photos/exif/2007' xmlns:gphoto='http://schemas.google.com/photos/2007' xmlns:media='http://search.yahoo.com/mrss/' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>http://picasaweb.google.com/data/feed/api/user/rafaelmkin/albumid/5500678977826487201</id><updated>2010-08-02T06:17:55.649Z</updated><category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/photos/2007#album'/><title type='text'>Povo</title><subtitle type='text'/><rights type='text'>public</rights><icon>http://lh6.ggpht.com/_dWuTCTElt7M/TFZWYvDOe6E/AAAAAAAAABI/i6nzid5qDaw/s160-c/Povo.jpg</icon><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618/albumid/5500678977826487201'/><link rel='alternate' type='text/html' href='http://picasaweb.google.com/113547798794418356618/Povo'/><link rel='http://schemas.google.com/photos/2007#slideshow' type='application/x-shockwave-flash' href='http://picasaweb.google.com/s/c/bin/slideshow.swf?host=picasaweb.google.com&amp;RGB=0x000000&amp;feed=http%3A%2F%2Fpicasaweb.google.com%2Fdata%2Ffeed%2Fapi%2Fuser%2F113547798794418356618%2Falbumid%2F5500678977826487201%3Falt%3Drss'/><link rel='http://schemas.google.com/photos/2007#report' type='text/html' href='http://picasaweb.google.com/lh/reportAbuse?uname=113547798794418356618&amp;aid=5500678977826487201'/><link rel='self' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618/albumid/5500678977826487201?start-index=1&amp;max-results=1000'/><author><name>Rafael Souza</name><uri>http://picasaweb.google.com/113547798794418356618</uri></author><generator version='1.00' uri='http://picasaweb.google.com/'>Picasaweb</generator><openSearch:totalResults>1</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>1000</openSearch:itemsPerPage><gphoto:id>5500678977826487201</gphoto:id><gphoto:name>Povo</gphoto:name><gphoto:location/><gphoto:access>public</gphoto:access><gphoto:timestamp>1267238385000</gphoto:timestamp><gphoto:numphotos>1</gphoto:numphotos><gphoto:user>113547798794418356618</gphoto:user><gphoto:nickname>Rafael Souza</gphoto:nickname><gphoto:commentingEnabled>true</gphoto:commentingEnabled><gphoto:commentCount>0</gphoto:commentCount><gphoto:allowPrints>true</gphoto:allowPrints><gphoto:allowDownloads>true</gphoto:allowDownloads><entry><id>http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500678977826487201/photoid/5500679064382643490</id><published>2010-08-02T05:24:07.000Z</published><updated>2010-08-02T06:17:55.649Z</updated><category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/photos/2007#photo'/><title type='text'>DSC08628.jpg</title><summary type='text'>Luisa</summary><content type='image/jpeg' src='http://lh6.ggpht.com/_dWuTCTElt7M/TFZWdxf0nSI/AAAAAAAAAA8/kcmV4QBFitM/DSC08628.jpg'/><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://picasaweb.google.com/data/feed/api/user/113547798794418356618/albumid/5500678977826487201/photoid/5500679064382643490'/><link rel='alternate' type='text/html' href='http://picasaweb.google.com/113547798794418356618/Povo#5500679064382643490'/><link rel='http://schemas.google.com/photos/2007#canonical' type='text/html' href='http://picasaweb.google.com/lh/photo/TjD0-BMejNqJlfxzBzdARA'/><link rel='self' type='application/atom+xml' href='http://picasaweb.google.com/data/entry/api/user/113547798794418356618/albumid/5500678977826487201/photoid/5500679064382643490'/><link rel='http://schemas.google.com/photos/2007#report' type='text/html' href='http://picasaweb.google.com/lh/reportAbuse?uname=113547798794418356618&amp;aid=5500678977826487201&amp;iid=5500679064382643490'/><gphoto:id>5500679064382643490</gphoto:id><gphoto:version>4</gphoto:version><gphoto:position>1.0</gphoto:position><gphoto:albumid>5500678977826487201</gphoto:albumid><gphoto:access>public</gphoto:access><gphoto:width>1296</gphoto:width><gphoto:height>972</gphoto:height><gphoto:size>282085</gphoto:size><gphoto:client>picasa</gphoto:client><gphoto:checksum>22d82033</gphoto:checksum><gphoto:timestamp>1267238385000</gphoto:timestamp><gphoto:imageVersion>15</gphoto:imageVersion><gphoto:commentCount>0</gphoto:commentCount><gphoto:license id='0' name='All Rights Reserved' url=''>ALL_RIGHTS_RESERVED</gphoto:license><exif:tags><exif:imageUniqueID>ae9a9ef43ce83188def5dde1121017a2</exif:imageUniqueID></exif:tags><media:group><media:content url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZWdxf0nSI/AAAAAAAAAA8/kcmV4QBFitM/DSC08628.jpg' height='972' width='1296' type='image/jpeg' medium='image'/><media:credit>Rafael Souza</media:credit><media:description type='plain'>Luisa</media:description><media:keywords>Praia, Povo</media:keywords><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZWdxf0nSI/AAAAAAAAAA8/kcmV4QBFitM/s72/DSC08628.jpg' height='54' width='72'/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZWdxf0nSI/AAAAAAAAAA8/kcmV4QBFitM/s144/DSC08628.jpg' height='108' width='144'/><media:thumbnail url='http://lh6.ggpht.com/_dWuTCTElt7M/TFZWdxf0nSI/AAAAAAAAAA8/kcmV4QBFitM/s288/DSC08628.jpg' height='216' width='288'/><media:title type='plain'>DSC08628.jpg</media:title></media:group></entry></feed>
16
+
@@ -0,0 +1,20 @@
1
+ require 'rubygems'
2
+ gem 'test-unit'
3
+ require 'test/unit'
4
+ require 'fakeweb'
5
+
6
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
7
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
8
+ require 'picasa'
9
+
10
+ def fixture_file(filename)
11
+ return '' if filename == ''
12
+ file_path = File.expand_path(File.dirname(__FILE__) + '/fixtures/' + filename)
13
+ File.read(file_path)
14
+ end
15
+
16
+ FakeWeb.register_uri(:get, "picasaweb.google.com/data/feed/api/user/some.user", :response => fixture_file("albums"))
17
+ FakeWeb.register_uri(:get, "picasaweb.google.com/data/feed/api/user/some.user/albumid/5500679996869508145", :response => fixture_file("first_album"))
18
+ FakeWeb.register_uri(:get, "picasaweb.google.com/data/feed/api/user/some.user/albumid/5500678977826487201", :response => fixture_file("second_album"))
19
+ FakeWeb.register_uri(:get, "picasaweb.google.com/data/feed/api/user/some.user?kind=photo&tag=Praia,Povo", :response => fixture_file("photos_by_tags"))
20
+
@@ -0,0 +1,46 @@
1
+ require "test_helper"
2
+
3
+ class UserTest < Test::Unit::TestCase
4
+ test "Should return all albums" do
5
+ user = Picasa::User.new("some.user")
6
+ albums = user.albums
7
+
8
+ assert_equal 2, albums.count
9
+ assert_equal "Copa", albums.first.title
10
+ assert_equal 1, albums[1].photos_count
11
+ assert_equal "5500679996869508145", albums.first.id
12
+ assert_equal "http://lh6.ggpht.com/_dWuTCTElt7M/TFZWYvDOe6E/AAAAAAAAABI/i6nzid5qDaw/Povo.jpg", albums[1].photo
13
+ assert_equal "Jogos da copa na casa de Ítalo!", albums.first.summary
14
+ assert_equal "http://lh6.ggpht.com/_dWuTCTElt7M/TFZWYvDOe6E/AAAAAAAAABI/i6nzid5qDaw/s160-c/Povo.jpg", albums[1].thumbnail
15
+ assert_equal "some.user", albums.first.google_user
16
+ end
17
+
18
+ test "Should find photos" do
19
+ user = Picasa::User.new("some.user")
20
+ photo = user.albums[1].photos.first
21
+
22
+ assert_equal "Luisa", photo.title
23
+
24
+ src = "http://lh6.ggpht.com/_dWuTCTElt7M/TFZWdxf0nSI/AAAAAAAAAA8/kcmV4QBFitM/DSC08628.jpg"
25
+ assert_equal src, photo.src
26
+
27
+ assert_equal "Praia, Povo", photo.tags
28
+
29
+ assert_not_nil photo.thumbnail_1
30
+ assert_not_nil photo.thumbnail_2
31
+ assert_not_nil photo.thumbnail_3
32
+ end
33
+
34
+ test "Should find photos by tag" do
35
+ user = Picasa::User.new("some.user")
36
+
37
+ photos = user.photos_by_tags('Praia, Povo')
38
+
39
+ assert_equal 2, photos.size
40
+ assert_match "Praia", photos[0].tags
41
+ assert_match "Praia", photos[1].tags
42
+ assert_match "Povo", photos[0].tags
43
+ assert_match "Povo", photos[1].tags
44
+ end
45
+ end
46
+
metadata ADDED
@@ -0,0 +1,135 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rafaels-picasa
3
+ version: !ruby/object:Gem::Version
4
+ hash: 17
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 2
9
+ - 3
10
+ version: 0.2.3
11
+ platform: ruby
12
+ authors:
13
+ - "Wojciech Wn\xC4\x99trzak"
14
+ - Rafael Souza
15
+ - Anderson Dias
16
+ autorequire:
17
+ bindir: bin
18
+ cert_chain: []
19
+
20
+ date: 2010-08-02 00:00:00 -03:00
21
+ default_executable:
22
+ dependencies:
23
+ - !ruby/object:Gem::Dependency
24
+ name: xml-simple
25
+ prerelease: false
26
+ requirement: &id001 !ruby/object:Gem::Requirement
27
+ none: false
28
+ requirements:
29
+ - - ">="
30
+ - !ruby/object:Gem::Version
31
+ hash: 3
32
+ segments:
33
+ - 0
34
+ version: "0"
35
+ type: :runtime
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: test-unit
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ hash: 3
46
+ segments:
47
+ - 2
48
+ - 0
49
+ - 6
50
+ version: 2.0.6
51
+ type: :development
52
+ version_requirements: *id002
53
+ - !ruby/object:Gem::Dependency
54
+ name: fakeweb
55
+ prerelease: false
56
+ requirement: &id003 !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ hash: 3
62
+ segments:
63
+ - 0
64
+ version: "0"
65
+ type: :development
66
+ version_requirements: *id003
67
+ description: Simple Google Picasa managment
68
+ email: rafael@maisweb.org
69
+ executables: []
70
+
71
+ extensions: []
72
+
73
+ extra_rdoc_files:
74
+ - LICENSE
75
+ - README.rdoc
76
+ files:
77
+ - .document
78
+ - .gitignore
79
+ - .rvmrc
80
+ - LICENSE
81
+ - README.rdoc
82
+ - Rakefile
83
+ - VERSION.yml
84
+ - console
85
+ - lib/picasa.rb
86
+ - lib/picasa/album.rb
87
+ - lib/picasa/connection.rb
88
+ - lib/picasa/photo.rb
89
+ - lib/picasa/user.rb
90
+ - rafaels-picasa.gemspec
91
+ - test/album_test.rb
92
+ - test/fixtures/albums
93
+ - test/fixtures/first_album
94
+ - test/fixtures/photos_by_tags
95
+ - test/fixtures/second_album
96
+ - test/test_helper.rb
97
+ - test/user_test.rb
98
+ has_rdoc: true
99
+ homepage: http://github.com/rafaels/picasa
100
+ licenses: []
101
+
102
+ post_install_message:
103
+ rdoc_options:
104
+ - --charset=UTF-8
105
+ require_paths:
106
+ - lib
107
+ required_ruby_version: !ruby/object:Gem::Requirement
108
+ none: false
109
+ requirements:
110
+ - - ">="
111
+ - !ruby/object:Gem::Version
112
+ hash: 3
113
+ segments:
114
+ - 0
115
+ version: "0"
116
+ required_rubygems_version: !ruby/object:Gem::Requirement
117
+ none: false
118
+ requirements:
119
+ - - ">="
120
+ - !ruby/object:Gem::Version
121
+ hash: 3
122
+ segments:
123
+ - 0
124
+ version: "0"
125
+ requirements: []
126
+
127
+ rubyforge_project:
128
+ rubygems_version: 1.3.7
129
+ signing_key:
130
+ specification_version: 3
131
+ summary: simple google picasa managment
132
+ test_files:
133
+ - test/user_test.rb
134
+ - test/album_test.rb
135
+ - test/test_helper.rb