purdie 0.0.11 → 0.0.12
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/.gitignore +2 -1
- data/.travis.yml +1 -0
- data/README.md +25 -11
- data/_config/defaults.yaml +0 -21
- data/_config/licenses.yaml +33 -0
- data/features/duff-credentials.feature +33 -0
- data/features/flickr-album.feature +1 -1
- data/features/flickr-with-lookups.feature +29 -0
- data/features/rfm.feature +2 -2
- data/features/step_definitions/purdie_steps.rb +26 -0
- data/features/support/fixtures/_config/purdie.yaml +1 -1
- data/features/support/fixtures/vcr/A_URL_we_don_t_understand/Handle_a_URL_we_don_t_recognise.yml +15 -15
- data/features/support/fixtures/vcr/First_contact_with_the_Real_World/Generate_YAML_for_the_Raw_Funk_Maharishi.yml +59 -53
- data/features/support/fixtures/vcr/Flickr/Generate_Flickr_YAML.yml +15 -15
- data/features/support/fixtures/vcr/Flickr/Generate_Flickr_YAML_with_lookups.yml +123 -0
- data/features/support/fixtures/vcr/Flickr_album/Generate_Flickr_YAML_for_an_album.yml +137 -137
- data/features/support/fixtures/vcr/Handle_comments/Handle_comments_in_a_source_file.yml +21 -28
- data/features/support/fixtures/vcr/Missing_or_bad_credentials/Bad_credentials_for_multiple_services.yml +156 -0
- data/features/support/fixtures/vcr/Purdie/Generate_several_YAML.yml +37 -36
- data/features/support/fixtures/vcr/Select_a_file_to_process/Choose_file_to_process.yml +7 -7
- data/features/support/fixtures/vcr/Set_Flickr_picturesize/Generate_Flickr_YAML.yml +16 -16
- data/features/support/fixtures/vcr/Soundcloud/Generate_SoundCloud_YAML.yml +7 -7
- data/features/support/fixtures/vcr/Soundcloud/Generate_SoundCloud_YAML_for_multiple_tracks.yml +14 -14
- data/features/support/fixtures/vcr/Soundcloud_set/Generate_YAML_for_a_SoundCloud_set.yml +58 -33
- data/features/support/fixtures/vcr/Vimeo/Generate_Vimeo_YAML.yml +8 -8
- data/features/support/fixtures/vcr/Vimeo_albums/Generate_YAML_for_a_Vimeo_album.yml +210 -0
- data/features/support/fixtures/vcr/YouTube/Generate_YouTube_YAML.yml +9 -9
- data/features/support/fixtures/vcr/YouTube_playlists/Generate_YAML_for_a_YouTube_playlist.yml +2503 -0
- data/features/vimeo-albums.feature +27 -0
- data/features/youtube-playlist.feature +54 -0
- data/lib/purdie/bernard.rb +24 -1
- data/lib/purdie/cli.rb +4 -0
- data/lib/purdie/exceptions.rb +20 -0
- data/lib/purdie/helpers.rb +17 -2
- data/lib/purdie/ingester.rb +15 -10
- data/lib/purdie/license_manager.rb +41 -0
- data/lib/purdie/services/flickr.rb +14 -2
- data/lib/purdie/services/soundcloud.rb +13 -4
- data/lib/purdie/services/vimeo.rb +13 -6
- data/lib/purdie/services/youtube.rb +46 -4
- data/lib/purdie/source_list.rb +10 -16
- data/lib/purdie/version.rb +1 -1
- data/lib/purdie.rb +10 -0
- data/spec/duff_keys_spec.rb +115 -0
- data/spec/helpers_spec.rb +12 -5
- data/spec/license_manager_spec.rb +20 -0
- data/spec/services/flickr_spec.rb +24 -15
- data/spec/services/soundcloud_spec.rb +2 -2
- data/spec/services/vimeo_spec.rb +6 -6
- data/spec/services/youtube_spec.rb +14 -1
- data/spec/source_list_spec.rb +14 -4
- data/spec/spec_helper.rb +32 -0
- data/spec/support/fixtures/vimeo.vids +1 -0
- data/spec/vcr/Purdie_Services_Flickr/do_the_local_config_lookups/looks_up_the_default_title.yml +123 -0
- data/spec/vcr/Purdie_Services_Flickr/falls_back_to_the_default_photographer_name.yml +20 -19
- data/spec/vcr/Purdie_Services_Flickr/ingests_data_for_a_photo_without_a_specific_photographer_tag.yml +20 -21
- data/spec/vcr/Purdie_Services_Flickr/licenses_items_correctly.yml +180 -0
- data/spec/vcr/Purdie_Services_Vimeo/ingests_a_video.yml +8 -8
- data/spec/vcr/Purdie_Services_Vimeo/resolve_an_album/resolves_an_album_from_a_URL.yml +59 -0
- data/spec/vcr/Purdie_Services_YouTube/gets_the_correct_license.yml +976 -0
- data/spec/vcr/Purdie_Services_YouTube/resolve_a_playlist/resolves_a_playlist_from_a_shitty_YouTube_URL.yml +970 -0
- metadata +37 -4
- data/_data/flickr.yaml +0 -4
- data/_data/soundcloud.yaml +0 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c7ede05eac12185b11e1038f17880897a4341680
|
4
|
+
data.tar.gz: 51528843daf81c4e7e17e503861a971dd224ab9e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bd59f0cb292e5626b3f852cb47285b75f2864afc23417797d5ce1d46ede91b83a99ebf8162667e1e059d35ce0bea40b5acbe5201f09d2ac149cd994ceab1e53c
|
7
|
+
data.tar.gz: 0d6759f0aa70f5a59a54645628b549c2d4951fdc204a56e76f343af7c0e57610ce7d8cd23872e67d5b7270647a310282c72b200447083e9d61a78b900c58bcaf
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
@@ -11,3 +11,4 @@ env:
|
|
11
11
|
- secure: AeXUYDzqttkNCkemmsAn3NkYUMwcLX7h5QNvYQ5UNrPkDTEkW/TGrgAfgErSmMRCiQas+jqRm4CJOGA917gPZrkbdxHf4MwF7vvACQPMmwFLhW7ZVERrRjV/jJNMVsMKb4Jr1SuhfCgrNWKOvowKGRM0ulqbkda/sgM0QtH/Iow=
|
12
12
|
- secure: jIVGrSlocGRVRXfiI1tnsa6bMWkQA2Cev5R7+W5nIiPmO9piH6YBFKxvbpeebvSDpvB7wVzrAM3JUeCaYXXF7hiDT7NAYiU8+v6FB20bvyFM9cDxtYB+SJRTwsF2Mq8212bMg47hdubnSFL0g9IC/nLtxq9tJjGycbMaAMZRKC4=
|
13
13
|
- secure: aKZ3c8pttF/tDAbQ+zfrflDRPF7I6lTLV8rHm4NwNh1cEgOv8v45HiBWIl5IplaNXonUcfhrvrmi11m9KhWtKiCiA7Z1BHJJu9eP+QhedJtGvxbmnDQ1UOXAY2Ot9Y1b0wRa2YqsYIZOUg42erVsHcWiPXWpfCQ+27dqglP59k8=
|
14
|
+
- secure: R4uwxMF7CtpRtDZOcan2caJci0p6Aum0FOdu72kut+omnFjumIhtmVVh2BvUZW5pD9LoqCreYHVifSx8nsbRvmMbZ67I3Y0JFst+QfHDCw8vQYBJ3oAUkWZf8wo4zW3GaAHmfqOrhIPifSa/rMNgvK95g/Dd9Fnr/Dyto2bRVG0=
|
data/README.md
CHANGED
@@ -42,8 +42,17 @@ You need to create a *_sources* directory in your Jekyll project, containing fil
|
|
42
42
|
|
43
43
|
https://soundcloud.com/rawfunkmaharishi/hexaflexagon-1
|
44
44
|
https://soundcloud.com/rawfunkmaharishi/junalbandi-3
|
45
|
+
|
46
|
+
It also resolves sets/albums on Flickr and SoundCloud (and soon Vimeo), so this will work:
|
45
47
|
|
46
|
-
|
48
|
+
https://www.flickr.com/photos/pikesley/sets/72157648589429938/
|
49
|
+
https://soundcloud.com/rawfunkmaharishi/sets/islington-academy-sessions
|
50
|
+
|
51
|
+
####Notes about *_sources*:
|
52
|
+
|
53
|
+
* Purdie does not care how many files are in *_sources*, nor if the services are all mixed up together in those files - it will simply dump out one file per service
|
54
|
+
* If a URL appears multiple times in a resolved list, only the first appearance will be propagated to the output
|
55
|
+
* You can specify a source file on the command line with the `-f` flag
|
47
56
|
|
48
57
|
You also need a *.env* file with the relevant credentials in it:
|
49
58
|
|
@@ -51,17 +60,25 @@ You also need a *.env* file with the relevant credentials in it:
|
|
51
60
|
FLICKR_SECRET: this_a_secret
|
52
61
|
|
53
62
|
SOUNDCLOUD_CLIENT_ID: this_a_client_id
|
54
|
-
SOUNDCLOUD_USER_ID: this_a_user_id
|
55
63
|
|
56
64
|
VIMEO_BEARER_TOKEN: this_is_bearer_token
|
65
|
+
|
66
|
+
YOUTUBE_API_KEY: this_is_key_for_youtube
|
57
67
|
|
58
|
-
(get those things from [Flickr](https://www.flickr.com/services/apps/create/apply), [SoundCloud](http://soundcloud.com/you/apps/new)
|
68
|
+
(get those things from [Flickr](https://www.flickr.com/services/apps/create/apply), [SoundCloud](http://soundcloud.com/you/apps/new), [Vimeo](https://developer.vimeo.com/apps/new) and [YouTube](https://console.developers.google.com/project))
|
59
69
|
|
60
70
|
And then you can run
|
61
71
|
|
62
72
|
purdie fetch
|
63
73
|
|
64
|
-
and it will dump out YAML files into *_data
|
74
|
+
(`fetch` is the default task (in fact currently the only task), so just `purdie` will work) and it will dump out YAML files into *_data*:
|
75
|
+
|
76
|
+
flickr.yaml
|
77
|
+
soundcloud.yaml
|
78
|
+
vimeo.yaml
|
79
|
+
youtube.yaml
|
80
|
+
|
81
|
+
ready for Jekyll to consume.
|
65
82
|
|
66
83
|
###Customisation
|
67
84
|
|
@@ -87,21 +104,18 @@ Tread carefully for now, because my metadata hacks aren't fully documented, and
|
|
87
104
|
|
88
105
|
##What next?
|
89
106
|
|
90
|
-
There's no reason I couldn't support other services - I've
|
107
|
+
There's no reason I couldn't support other services - I've already added [YouTube](https://github.com/rawfunkmaharishi/purdie/blob/master/spec/services/youtube_spec.rb) [support](https://github.com/rawfunkmaharishi/purdie/blob/master/lib/purdie/services/youtube.rb) and others should be fairly simple. There's some introspection magic at the heart of all of this which means that as long as each service is represented by a class that:
|
91
108
|
|
92
109
|
* includes the `Purdie::Ingester` module, and
|
93
110
|
* sports a `::matcher` class method which returns a string which will pick a URL out of an input file, and
|
94
111
|
* has a `#distill` method which takes a URL representing an item on the service and returns a hash of metadata, see e.g.
|
95
112
|
* [Flickr](https://github.com/rawfunkmaharishi/purdie/blob/master/lib/purdie/services/flickr.rb#L27)
|
96
|
-
* [SoundCloud](https://github.com/rawfunkmaharishi/purdie/blob/master/lib/purdie/services/soundcloud.rb#
|
97
|
-
* [Vimeo](https://github.com/rawfunkmaharishi/purdie/blob/master/lib/purdie/services/vimeo.rb#
|
113
|
+
* [SoundCloud](https://github.com/rawfunkmaharishi/purdie/blob/master/lib/purdie/services/soundcloud.rb#L13)
|
114
|
+
* [Vimeo](https://github.com/rawfunkmaharishi/purdie/blob/master/lib/purdie/services/vimeo.rb#L15)
|
115
|
+
* and optionally a `::resolve` class method which takes a set or album URL for the service and returns a list of URLs for individual items
|
98
116
|
|
99
117
|
then this should all Just Work. There's definitely a blog post in this, because Ruby introspection and metaprogramming is just mind-bogglingly powerful (and dangerous).
|
100
118
|
|
101
|
-
More prosaically, I think it will be fairly simple to support Flickr sets and SoundCloud albums as input data.
|
102
|
-
|
103
|
-
And I can definitely rationalise these [horrible license lookups](https://github.com/rawfunkmaharishi/purdie/blob/master/_config/defaults.yaml#L5) into a module or even a gem of their own.
|
104
|
-
|
105
119
|
And of course, known issues are [here](https://github.com/rawfunkmaharishi/purdie/issues).
|
106
120
|
|
107
121
|
##Why Purdie?
|
data/_config/defaults.yaml
CHANGED
@@ -1,24 +1,3 @@
|
|
1
1
|
source_dir: _sources
|
2
2
|
output_dir: _data
|
3
3
|
default_title: Bernard Purdie, the World's most-recorded drummer
|
4
|
-
|
5
|
-
# those unwieldy lookups are because each service calls the CC licenses by a slightly different name and defaults to a different version of the license. I think I need to abstract all of this out into a modlue or even a gem of its own
|
6
|
-
license_lookups:
|
7
|
-
|
8
|
-
# SoundCloud
|
9
|
-
cc-by-nc-sa:
|
10
|
-
short_name: BY-NC-SA
|
11
|
-
full_name: Attribution-NonCommercial-ShareAlike
|
12
|
-
url: http://creativecommons.org/licenses/by-nc-sa/4.0/
|
13
|
-
|
14
|
-
# Vimeo
|
15
|
-
by-nc-sa:
|
16
|
-
short_name: BY-NC-SA
|
17
|
-
full_name: Attribution-NonCommercial-ShareAlike
|
18
|
-
url: http://creativecommons.org/licenses/by-nc-sa/3.0/
|
19
|
-
|
20
|
-
# This one is YouTube. WTF YouTube?
|
21
|
-
creativeCommon:
|
22
|
-
short_name: BY
|
23
|
-
full_name: Attribution
|
24
|
-
url: https://creativecommons.org/licenses/by/3.0/
|
@@ -0,0 +1,33 @@
|
|
1
|
+
Flickr:
|
2
|
+
'1':
|
3
|
+
short_name: BY-NC-SA
|
4
|
+
full_name: Attribution-NonCommercial-ShareAlike
|
5
|
+
url: https://creativecommons.org/licenses/by-nc-sa/2.0/
|
6
|
+
|
7
|
+
'2':
|
8
|
+
short_name: BY-NC
|
9
|
+
full_name: Attribution-NonCommercial
|
10
|
+
url: http://creativecommons.org/licenses/by-nc/2.0/
|
11
|
+
|
12
|
+
SoundCloud:
|
13
|
+
cc-by-nc-sa:
|
14
|
+
short_name: BY-NC-SA
|
15
|
+
full_name: Attribution-NonCommercial-ShareAlike
|
16
|
+
url: http://creativecommons.org/licenses/by-nc-sa/4.0/
|
17
|
+
|
18
|
+
Vimeo:
|
19
|
+
by-nc-sa:
|
20
|
+
short_name: BY-NC-SA
|
21
|
+
full_name: Attribution-NonCommercial-ShareAlike
|
22
|
+
url: http://creativecommons.org/licenses/by-nc-sa/3.0/
|
23
|
+
|
24
|
+
YouTube:
|
25
|
+
creativeCommon:
|
26
|
+
short_name: BY
|
27
|
+
full_name: Attribution
|
28
|
+
url: https://creativecommons.org/licenses/by/3.0/
|
29
|
+
|
30
|
+
youtube:
|
31
|
+
short_name: YouTube
|
32
|
+
full_name: YouTube
|
33
|
+
url: https://www.youtube.com/static?gl=GB&template=terms
|
@@ -0,0 +1,33 @@
|
|
1
|
+
@vcr
|
2
|
+
|
3
|
+
Feature: Missing or bad credentials
|
4
|
+
|
5
|
+
Scenario: Attempt to process SoundCloud URLs with missing credentials
|
6
|
+
Given a file named "_sources/soundcloud.csv" with:
|
7
|
+
"""
|
8
|
+
https://soundcloud.com/rawfunkmaharishi/hexaflexagon-1
|
9
|
+
"""
|
10
|
+
And no credentials for SoundCloud
|
11
|
+
When I run `purdie fetch`
|
12
|
+
Then the stderr should contain:
|
13
|
+
"""
|
14
|
+
Missing or duff credentials for: SoundCloud
|
15
|
+
"""
|
16
|
+
And I restore the credentials for SoundCloud
|
17
|
+
|
18
|
+
Scenario: Bad credentials for multiple services
|
19
|
+
Given a file named "_sources/sources.sources" with:
|
20
|
+
"""
|
21
|
+
https://vimeo.com/110132671
|
22
|
+
https://vimeo.com/110133117
|
23
|
+
https://www.youtube.com/watch?v=Qt_J0jNqtZg&list=PLuPLM2FI60-M0-aWejF9WgB-Dkt1TuQXv&index=2
|
24
|
+
"""
|
25
|
+
And no credentials for Vimeo
|
26
|
+
And bad credentials for YouTube
|
27
|
+
When I run `purdie fetch`
|
28
|
+
Then the stderr should contain:
|
29
|
+
"""
|
30
|
+
Missing or duff credentials for: Vimeo, YouTube
|
31
|
+
"""
|
32
|
+
And I restore the credentials for Vimeo
|
33
|
+
And I restore the credentials for YouTube
|
@@ -17,7 +17,7 @@ Feature: Flickr album
|
|
17
17
|
photo_url: https://farm8.staticflickr.com/7506/16252009191_ea2d06e6bb_m.jpg
|
18
18
|
license: Attribution-NonCommercial-ShareAlike
|
19
19
|
license_url: https://creativecommons.org/licenses/by-nc-sa/2.0/
|
20
|
-
photographer:
|
20
|
+
photographer: sam
|
21
21
|
"""
|
22
22
|
And a file named "_data/soundcloud.yaml" should not exist
|
23
23
|
And a file named "_data/vimeo.yaml" should not exist
|
@@ -0,0 +1,29 @@
|
|
1
|
+
@vcr
|
2
|
+
Feature: Flickr
|
3
|
+
|
4
|
+
Scenario: Generate Flickr YAML with lookups
|
5
|
+
Given a file named "_sources/flickr.csv" with:
|
6
|
+
"""
|
7
|
+
https://www.flickr.com/photos/cluttercup/16393865760/
|
8
|
+
"""
|
9
|
+
And a file named "_config/purdie.yaml" with:
|
10
|
+
"""
|
11
|
+
photographer_lookups:
|
12
|
+
cluttercup: jane
|
13
|
+
|
14
|
+
default_title: Raw Funk Maharishi
|
15
|
+
"""
|
16
|
+
When I successfully run `purdie fetch`
|
17
|
+
Then a file named "_data/flickr.yaml" should exist
|
18
|
+
And the file "_data/flickr.yaml" should contain:
|
19
|
+
"""
|
20
|
+
- title: Raw Funk Maharishi
|
21
|
+
date: '2015-02-18'
|
22
|
+
photo_page: https://www.flickr.com/photos/cluttercup/16393865760/
|
23
|
+
photo_url: https://farm8.staticflickr.com/7395/16393865760_bfbfc1c267_m.jpg
|
24
|
+
license: Attribution-NonCommercial
|
25
|
+
license_url: https://creativecommons.org/licenses/by-nc/2.0/
|
26
|
+
photographer: jane
|
27
|
+
"""
|
28
|
+
And a file named "_data/soundcloud.yaml" should not exist
|
29
|
+
And a file named "_data/vimeo.yaml" should not exist
|
data/features/rfm.feature
CHANGED
@@ -28,14 +28,14 @@ Feature: First contact with the Real World
|
|
28
28
|
photo_url: https://farm8.staticflickr.com/7398/15950875724_23d58be214_m.jpg
|
29
29
|
license: Attribution-NonCommercial
|
30
30
|
license_url: https://creativecommons.org/licenses/by-nc/2.0/
|
31
|
-
photographer:
|
31
|
+
photographer: cluttercup
|
32
32
|
- title: Raw Funk Maharishi
|
33
33
|
date: '2015-02-18'
|
34
34
|
photo_page: https://www.flickr.com/photos/cluttercup/16579675721/
|
35
35
|
photo_url: https://farm8.staticflickr.com/7418/16579675721_f765c42f99_m.jpg
|
36
36
|
license: Attribution-NonCommercial
|
37
37
|
license_url: https://creativecommons.org/licenses/by-nc/2.0/
|
38
|
-
photographer:
|
38
|
+
photographer: cluttercup
|
39
39
|
"""
|
40
40
|
And a file named "_data/soundcloud.yaml" should exist
|
41
41
|
And the file "_data/soundcloud.yaml" should contain:
|
@@ -0,0 +1,26 @@
|
|
1
|
+
Given /^no credentials for SoundCloud$/ do
|
2
|
+
$sc = ENV['SOUNDCLOUD_CLIENT_ID']
|
3
|
+
ENV['SOUNDCLOUD_CLIENT_ID'] = nil
|
4
|
+
end
|
5
|
+
|
6
|
+
Given /^I restore the credentials for SoundCloud$/ do
|
7
|
+
ENV['SOUNDCLOUD_CLIENT_ID'] = $sc
|
8
|
+
end
|
9
|
+
|
10
|
+
Given /^no credentials for Vimeo$/ do
|
11
|
+
$v = ENV['VIMEO_BEARER_TOKEN']
|
12
|
+
ENV['VIMEO_BEARER_TOKEN'] = nil
|
13
|
+
end
|
14
|
+
|
15
|
+
Given /^bad credentials for YouTube$/ do
|
16
|
+
$y = ENV['YOUTUBE_API_KEY']
|
17
|
+
ENV['YOUTUBE_API_KEY'] = 'fji423cj234'
|
18
|
+
end
|
19
|
+
|
20
|
+
Given /^I restore the credentials for Vimeo$/ do
|
21
|
+
ENV['VIMEO_BEARER_TOKEN'] = $v
|
22
|
+
end
|
23
|
+
|
24
|
+
Given /^I restore the credentials for YouTube$/ do
|
25
|
+
ENV['YOUTUBE_API_KEY'] = $y
|
26
|
+
end
|
data/features/support/fixtures/vcr/A_URL_we_don_t_understand/Handle_a_URL_we_don_t_recognise.yml
CHANGED
@@ -15,8 +15,8 @@ http_interactions:
|
|
15
15
|
- FlickRaw/0.9.8
|
16
16
|
Authorization:
|
17
17
|
- OAuth realm="https://api.flickr.com/services/rest/", oauth_consumer_key="<FLICKR_API_KEY>",
|
18
|
-
oauth_nonce="
|
19
|
-
oauth_signature_method="PLAINTEXT", oauth_timestamp="
|
18
|
+
oauth_nonce="lStJS%2BN%2FCaUkNeTkqy96sNrrbLb4jG9KHEIFoqANl2o%3D", oauth_signature="<FLICKR_SECRET>%26",
|
19
|
+
oauth_signature_method="PLAINTEXT", oauth_timestamp="1426093984", oauth_token="",
|
20
20
|
oauth_version="1.0"
|
21
21
|
Content-Type:
|
22
22
|
- application/x-www-form-urlencoded
|
@@ -26,7 +26,7 @@ http_interactions:
|
|
26
26
|
message: OK
|
27
27
|
headers:
|
28
28
|
Date:
|
29
|
-
-
|
29
|
+
- Wed, 11 Mar 2015 17:13:05 GMT
|
30
30
|
Content-Type:
|
31
31
|
- application/json
|
32
32
|
Content-Length:
|
@@ -38,14 +38,14 @@ http_interactions:
|
|
38
38
|
Cache-Control:
|
39
39
|
- private
|
40
40
|
X-Served-By:
|
41
|
-
-
|
41
|
+
- www58.flickr.bf1.yahoo.com
|
42
42
|
Vary:
|
43
43
|
- Accept-Encoding
|
44
44
|
Age:
|
45
|
-
- '
|
45
|
+
- '0'
|
46
46
|
Via:
|
47
|
-
- http/1.1
|
48
|
-
http/1.1
|
47
|
+
- http/1.1 fts116.flickr.bf1.yahoo.com (ApacheTrafficServer/4.0.2 [cMsSf ]),
|
48
|
+
http/1.1 r21.ycpi.dea.yahoo.net (ApacheTrafficServer [cMsSf ])
|
49
49
|
Server:
|
50
50
|
- ATS
|
51
51
|
Connection:
|
@@ -58,7 +58,7 @@ http_interactions:
|
|
58
58
|
15:54:24","takengranularity":"0","takenunknown":"0","lastupdate":"1416111853"},"views":"94","editability":{"cancomment":0,"canaddmeta":0},"publiceditability":{"cancomment":1,"canaddmeta":0},"usage":{"candownload":1,"canblog":0,"canprint":0,"canshare":1},"comments":{"_content":"0"},"notes":{"note":[]},"people":{"haspeople":0},"tags":{"tag":[{"id":"128898522-15631479625-1422028","author":"128943844@N06","authorname":"rawfunkmaharishi","raw":"the
|
59
59
|
comedy","_content":"thecomedy","machine_tag":0},{"id":"128898522-15631479625-17975","author":"128943844@N06","authorname":"rawfunkmaharishi","raw":"gigs","_content":"gigs","machine_tag":0},{"id":"128898522-15631479625-228989594","author":"128943844@N06","authorname":"rawfunkmaharishi","raw":"photographer:kim","_content":"photographerkim","machine_tag":0}]},"urls":{"url":[{"type":"photopage","_content":"https:\/\/www.flickr.com\/photos\/rawfunkmaharishi\/15631479625\/"}]},"media":"photo"},"stat":"ok"}'
|
60
60
|
http_version:
|
61
|
-
recorded_at:
|
61
|
+
recorded_at: Wed, 11 Mar 2015 17:13:05 GMT
|
62
62
|
- request:
|
63
63
|
method: post
|
64
64
|
uri: https://api.flickr.com/services/rest/
|
@@ -74,8 +74,8 @@ http_interactions:
|
|
74
74
|
- FlickRaw/0.9.8
|
75
75
|
Authorization:
|
76
76
|
- OAuth realm="https://api.flickr.com/services/rest/", oauth_consumer_key="<FLICKR_API_KEY>",
|
77
|
-
oauth_nonce="
|
78
|
-
oauth_signature_method="PLAINTEXT", oauth_timestamp="
|
77
|
+
oauth_nonce="Wys2vnSmSwlJVK6t4GZKjntby0j9A6Al%2FLvTo3sEsdw%3D", oauth_signature="<FLICKR_SECRET>%26",
|
78
|
+
oauth_signature_method="PLAINTEXT", oauth_timestamp="1426093985", oauth_token="",
|
79
79
|
oauth_version="1.0"
|
80
80
|
Content-Type:
|
81
81
|
- application/x-www-form-urlencoded
|
@@ -85,7 +85,7 @@ http_interactions:
|
|
85
85
|
message: OK
|
86
86
|
headers:
|
87
87
|
Date:
|
88
|
-
-
|
88
|
+
- Wed, 11 Mar 2015 17:13:05 GMT
|
89
89
|
Content-Type:
|
90
90
|
- application/json
|
91
91
|
Content-Length:
|
@@ -97,14 +97,14 @@ http_interactions:
|
|
97
97
|
Cache-Control:
|
98
98
|
- private
|
99
99
|
X-Served-By:
|
100
|
-
-
|
100
|
+
- www47.flickr.bf1.yahoo.com
|
101
101
|
Vary:
|
102
102
|
- Accept-Encoding
|
103
103
|
Age:
|
104
104
|
- '0'
|
105
105
|
Via:
|
106
|
-
- http/1.1
|
107
|
-
http/1.1
|
106
|
+
- http/1.1 fts122.flickr.bf1.yahoo.com (ApacheTrafficServer/4.0.2 [cMsSf ]),
|
107
|
+
http/1.1 r10.ycpi.dea.yahoo.net (ApacheTrafficServer [cMsSf ])
|
108
108
|
Server:
|
109
109
|
- ATS
|
110
110
|
Connection:
|
@@ -121,5 +121,5 @@ http_interactions:
|
|
121
121
|
known copyright restrictions","url":"https:\/\/www.flickr.com\/commons\/usage\/"},{"id":"8","name":"United
|
122
122
|
States Government Work","url":"http:\/\/www.usa.gov\/copyright.shtml"}]},"stat":"ok"}'
|
123
123
|
http_version:
|
124
|
-
recorded_at:
|
124
|
+
recorded_at: Wed, 11 Mar 2015 17:13:05 GMT
|
125
125
|
recorded_with: VCR 2.9.3
|