scrapinghub-client 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +1 -0
  3. data/.rspec +3 -0
  4. data/.travis.yml +6 -0
  5. data/Gemfile +5 -0
  6. data/LICENSE +21 -0
  7. data/README.md +46 -0
  8. data/Rakefile +22 -0
  9. data/lib/scrapinghub-client.rb +3 -0
  10. data/lib/scrapinghub/jobs.rb +175 -0
  11. data/lib/scrapinghub/version.rb +3 -0
  12. data/scrapinghub.gemspec +26 -0
  13. data/spec/fixtures/vcr_cassettes/jobs/delete/bad_auth.yml +38 -0
  14. data/spec/fixtures/vcr_cassettes/jobs/delete/job/invalid.yml +38 -0
  15. data/spec/fixtures/vcr_cassettes/jobs/delete/job/multiple.yml +38 -0
  16. data/spec/fixtures/vcr_cassettes/jobs/delete/job/single.yml +38 -0
  17. data/spec/fixtures/vcr_cassettes/jobs/delete/project/invalid.yml +39 -0
  18. data/spec/fixtures/vcr_cassettes/jobs/delete/project/valid.yml +38 -0
  19. data/spec/fixtures/vcr_cassettes/jobs/list/bad_auth.yml +38 -0
  20. data/spec/fixtures/vcr_cassettes/jobs/list/count/3.yml +53 -0
  21. data/spec/fixtures/vcr_cassettes/jobs/list/has_tag/invalid.yml +38 -0
  22. data/spec/fixtures/vcr_cassettes/jobs/list/has_tag/multiple.yml +53 -0
  23. data/spec/fixtures/vcr_cassettes/jobs/list/has_tag/single.yml +48 -0
  24. data/spec/fixtures/vcr_cassettes/jobs/list/job/invalid.yml +38 -0
  25. data/spec/fixtures/vcr_cassettes/jobs/list/job/multiple.yml +48 -0
  26. data/spec/fixtures/vcr_cassettes/jobs/list/job/single.yml +43 -0
  27. data/spec/fixtures/vcr_cassettes/jobs/list/lacks_tag/invalid.yml +81 -0
  28. data/spec/fixtures/vcr_cassettes/jobs/list/lacks_tag/multiple.yml +67 -0
  29. data/spec/fixtures/vcr_cassettes/jobs/list/lacks_tag/single.yml +72 -0
  30. data/spec/fixtures/vcr_cassettes/jobs/list/project/invalid.yml +39 -0
  31. data/spec/fixtures/vcr_cassettes/jobs/list/project/valid.yml +81 -0
  32. data/spec/fixtures/vcr_cassettes/jobs/list/spider/invalid.yml +38 -0
  33. data/spec/fixtures/vcr_cassettes/jobs/list/spider/valid.yml +62 -0
  34. data/spec/fixtures/vcr_cassettes/jobs/list/state/finished.yml +81 -0
  35. data/spec/fixtures/vcr_cassettes/jobs/list/state/pending.yml +38 -0
  36. data/spec/fixtures/vcr_cassettes/jobs/schedule/bad_auth.yml +38 -0
  37. data/spec/fixtures/vcr_cassettes/jobs/schedule/project/invalid.yml +39 -0
  38. data/spec/fixtures/vcr_cassettes/jobs/schedule/spider/add_tag.yml +38 -0
  39. data/spec/fixtures/vcr_cassettes/jobs/schedule/spider/already-running.yml +39 -0
  40. data/spec/fixtures/vcr_cassettes/jobs/schedule/spider/extra.yml +38 -0
  41. data/spec/fixtures/vcr_cassettes/jobs/schedule/spider/minimal.yml +38 -0
  42. data/spec/fixtures/vcr_cassettes/jobs/schedule/spider/priority.yml +38 -0
  43. data/spec/fixtures/vcr_cassettes/jobs/stop/bad_auth.yml +38 -0
  44. data/spec/fixtures/vcr_cassettes/jobs/stop/job/already-stopped.yml +38 -0
  45. data/spec/fixtures/vcr_cassettes/jobs/stop/job/invalid.yml +38 -0
  46. data/spec/fixtures/vcr_cassettes/jobs/stop/job/valid.yml +38 -0
  47. data/spec/fixtures/vcr_cassettes/jobs/stop/project/invalid.yml +39 -0
  48. data/spec/fixtures/vcr_cassettes/jobs/update/bad_auth.yml +38 -0
  49. data/spec/fixtures/vcr_cassettes/jobs/update/has_tag.yml +38 -0
  50. data/spec/fixtures/vcr_cassettes/jobs/update/job.yml +38 -0
  51. data/spec/fixtures/vcr_cassettes/jobs/update/lacks_tag.yml +38 -0
  52. data/spec/fixtures/vcr_cassettes/jobs/update/no-query-filters.yml +38 -0
  53. data/spec/fixtures/vcr_cassettes/jobs/update/no-update-params.yml +38 -0
  54. data/spec/fixtures/vcr_cassettes/jobs/update/project/invalid.yml +39 -0
  55. data/spec/fixtures/vcr_cassettes/jobs/update/spider.yml +38 -0
  56. data/spec/fixtures/vcr_cassettes/jobs/update/state.yml +38 -0
  57. data/spec/integration/jobs_spec.rb +567 -0
  58. data/spec/spec_helper.rb +22 -0
  59. data/spec/unit/jobs_spec.rb +188 -0
  60. data/spec/unit/scrapinghub_spec.rb +8 -0
  61. metadata +200 -0
@@ -0,0 +1,38 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://XXX:@dash.scrapinghub.com/api/jobs/delete.json
6
+ body:
7
+ encoding: UTF-8
8
+ string: job=1%2F3%2F3&project=1
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/1.8.0
23
+ Date:
24
+ - Sat, 25 Jul 2015 22:30:27 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ Vary:
32
+ - Cookie
33
+ body:
34
+ encoding: ASCII-8BIT
35
+ string: '{"status": "ok", "count": 1}'
36
+ http_version:
37
+ recorded_at: Sat, 25 Jul 2015 22:30:28 GMT
38
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,39 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://XXX:@dash.scrapinghub.com/api/jobs/delete.json
6
+ body:
7
+ encoding: UTF-8
8
+ string: job=1%2F1%2F7&project=2
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 400
19
+ message: User 'abevoelker' doesn't have access to project 2
20
+ headers:
21
+ Server:
22
+ - nginx/1.8.0
23
+ Date:
24
+ - Sat, 25 Jul 2015 23:24:28 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Content-Length:
28
+ - '89'
29
+ Connection:
30
+ - keep-alive
31
+ Vary:
32
+ - Cookie
33
+ body:
34
+ encoding: UTF-8
35
+ string: '{"status": "badrequest", "message": "User ''abevoelker'' doesn''t have
36
+ access to project 2"}'
37
+ http_version:
38
+ recorded_at: Sat, 25 Jul 2015 23:24:28 GMT
39
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,38 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://XXX:@dash.scrapinghub.com/api/jobs/delete.json
6
+ body:
7
+ encoding: UTF-8
8
+ string: project=1
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 400
19
+ message: missing 'job' argument
20
+ headers:
21
+ Server:
22
+ - nginx/1.8.0
23
+ Date:
24
+ - Sat, 25 Jul 2015 22:15:23 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Content-Length:
28
+ - '61'
29
+ Connection:
30
+ - keep-alive
31
+ Vary:
32
+ - Cookie
33
+ body:
34
+ encoding: UTF-8
35
+ string: '{"status": "badrequest", "message": "missing ''job'' argument"}'
36
+ http_version:
37
+ recorded_at: Sat, 25 Jul 2015 22:15:23 GMT
38
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,38 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://XXX:@dash.scrapinghub.com/api/jobs/list.json?project=1
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 403
19
+ message: FORBIDDEN
20
+ headers:
21
+ Server:
22
+ - nginx/1.8.0
23
+ Date:
24
+ - Sat, 25 Jul 2015 18:47:20 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ Vary:
32
+ - Cookie
33
+ body:
34
+ encoding: ASCII-8BIT
35
+ string: '{"status": "error", "message": "Authentication failed"}'
36
+ http_version:
37
+ recorded_at: Sat, 25 Jul 2015 18:47:20 GMT
38
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,53 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://XXX:@dash.scrapinghub.com/api/jobs/list.json?count=3&project=1
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/1.8.0
23
+ Date:
24
+ - Sat, 25 Jul 2015 18:08:57 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ Vary:
32
+ - Cookie
33
+ body:
34
+ encoding: ASCII-8BIT
35
+ string: '{"status": "ok", "count": 3, "total": 3, "jobs": [{"responses_received":
36
+ 5323, "items_scraped": 1030, "close_reason": "cancel_timeout", "logs": 167,
37
+ "tags": ["foo", "bar"], "version": "1434570463", "spider": "atlantic_firearms_crawl",
38
+ "updated_time": "2015-07-23T01:26:37", "priority": 2, "state": "finished",
39
+ "spider_type": "manual", "spider_args": {}, "started_time": "2015-07-22T23:02:13",
40
+ "id": "1/1/6", "errors_count": 4, "elapsed": 4672821}, {"logs": 179, "spider":
41
+ "atlantic_firearms_crawl", "spider_args": {}, "id": "1/1/4", "priority":
42
+ 2, "items_scraped": 1122, "state": "finished", "version": "1434570463", "spider_type":
43
+ "manual", "errors_count": 3, "responses_received": 6243, "tags": [], "elapsed":
44
+ 242956865, "close_reason": "cancel_timeout", "started_time": "2015-07-22T20:03:31",
45
+ "updated_time": "2015-07-22T22:35:04"}, {"responses_received": 365486, "items_scraped":
46
+ 4037, "close_reason": "cancel_timeout", "logs": 33631, "tags": ["foo"], "version":
47
+ "1434570463", "spider": "firearms_for_sale_crawl", "updated_time": "2015-07-21T02:43:25",
48
+ "priority": 2, "state": "finished", "spider_type": "manual", "spider_args":
49
+ {}, "started_time": "2015-06-27T18:36:06", "id": "1/5/1", "errors_count":
50
+ 0, "elapsed": 4445008}]}'
51
+ http_version:
52
+ recorded_at: Sat, 25 Jul 2015 18:08:57 GMT
53
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,38 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://XXX:@dash.scrapinghub.com/api/jobs/list.json?has_tag=baz&project=1
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/1.8.0
23
+ Date:
24
+ - Sat, 25 Jul 2015 18:02:56 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ Vary:
32
+ - Cookie
33
+ body:
34
+ encoding: ASCII-8BIT
35
+ string: '{"status": "ok", "count": 0, "total": 0, "jobs": []}'
36
+ http_version:
37
+ recorded_at: Sat, 25 Jul 2015 18:02:56 GMT
38
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,53 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://XXX:@dash.scrapinghub.com/api/jobs/list.json?has_tag=bar&project=1
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/1.8.0
23
+ Date:
24
+ - Sat, 25 Jul 2015 18:02:16 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ Vary:
32
+ - Cookie
33
+ body:
34
+ encoding: ASCII-8BIT
35
+ string: '{"status": "ok", "count": 3, "total": 3, "jobs": [{"responses_received":
36
+ 5323, "items_scraped": 1030, "close_reason": "cancel_timeout", "logs": 167,
37
+ "tags": ["foo", "bar"], "version": "1434570463", "spider": "atlantic_firearms_crawl",
38
+ "updated_time": "2015-07-23T01:26:37", "priority": 2, "state": "finished",
39
+ "spider_type": "manual", "spider_args": {}, "started_time": "2015-07-22T23:02:13",
40
+ "id": "1/1/6", "errors_count": 4, "elapsed": 4271665}, {"responses_received":
41
+ 365486, "items_scraped": 4037, "close_reason": "cancel_timeout", "logs": 33631,
42
+ "tags": ["foo"], "version": "1434570463", "spider": "firearms_for_sale_crawl",
43
+ "updated_time": "2015-07-21T02:43:25", "priority": 2, "state": "finished",
44
+ "spider_args": {}, "started_time": "2015-06-27T18:36:06", "id": "1/5/1",
45
+ "errors_count": 0, "elapsed": 4043852, "spider_type": "manual"}, {"responses_received":
46
+ 1194, "items_scraped": 1066, "close_reason": "cancel_timeout", "version":
47
+ "1434570463", "tags": ["bar"], "spider": "palmetto_state_armory_crawl", "updated_time":
48
+ "2015-06-21T20:07:12", "priority": 2, "state": "finished", "spider_args":
49
+ {}, "errors_count": 0, "started_time": "2015-06-21T19:02:41", "id": "1/3/1",
50
+ "logs": 88, "elapsed": 4250262, "spider_type": "manual"}]}'
51
+ http_version:
52
+ recorded_at: Sat, 25 Jul 2015 18:02:16 GMT
53
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,48 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://XXX:@dash.scrapinghub.com/api/jobs/list.json?has_tag=foo&project=1
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/1.8.0
23
+ Date:
24
+ - Sat, 25 Jul 2015 18:01:38 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ Vary:
32
+ - Cookie
33
+ body:
34
+ encoding: ASCII-8BIT
35
+ string: '{"status": "ok", "count": 2, "total": 2, "jobs": [{"responses_received":
36
+ 5323, "items_scraped": 1030, "close_reason": "cancel_timeout", "logs": 167,
37
+ "tags": ["foo", "bar"], "version": "1434570463", "spider": "atlantic_firearms_crawl",
38
+ "updated_time": "2015-07-23T01:26:37", "priority": 2, "state": "finished",
39
+ "spider_type": "manual", "spider_args": {}, "started_time": "2015-07-22T23:02:13",
40
+ "id": "1/1/6", "errors_count": 4, "elapsed": 4233193}, {"responses_received":
41
+ 365486, "items_scraped": 4037, "close_reason": "cancel_timeout", "logs": 33631,
42
+ "tags": ["foo"], "version": "1434570463", "spider": "firearms_for_sale_crawl",
43
+ "updated_time": "2015-07-21T02:43:25", "priority": 2, "state": "finished",
44
+ "spider_args": {}, "started_time": "2015-06-27T18:36:06", "id": "1/5/1",
45
+ "errors_count": 0, "elapsed": 4005380, "spider_type": "manual"}]}'
46
+ http_version:
47
+ recorded_at: Sat, 25 Jul 2015 18:01:38 GMT
48
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,38 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://XXX:@dash.scrapinghub.com/api/jobs/list.json?job=1/1/123&project=1
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/1.8.0
23
+ Date:
24
+ - Sat, 25 Jul 2015 18:23:09 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ Vary:
32
+ - Cookie
33
+ body:
34
+ encoding: ASCII-8BIT
35
+ string: '{"status": "ok", "count": 0, "total": 0, "jobs": []}'
36
+ http_version:
37
+ recorded_at: Sat, 25 Jul 2015 18:23:09 GMT
38
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,48 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://XXX:@dash.scrapinghub.com/api/jobs/list.json?job=1/1/2&project=1
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/1.8.0
23
+ Date:
24
+ - Sat, 25 Jul 2015 18:22:15 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ Vary:
32
+ - Cookie
33
+ body:
34
+ encoding: ASCII-8BIT
35
+ string: '{"status": "ok", "count": 2, "total": 2, "jobs": [{"responses_received":
36
+ 0, "items_scraped": 0, "logs": 13, "tags": [], "started_time": "2015-06-17T20:17:29",
37
+ "version": "1434570463", "spider": "atlantic_firearms_crawl", "updated_time":
38
+ "2015-06-17T20:17:40", "priority": 2, "state": "finished", "close_reason":
39
+ "no_reason", "spider_type": "manual", "spider_args": {}, "errors_count": 2,
40
+ "elapsed": 3276275449, "id": "1/1/1"}, {"spider": "atlantic_firearms_crawl",
41
+ "items_scraped": 0, "updated_time": "2015-06-17T20:28:06", "responses_received":
42
+ 0, "logs": 13, "tags": [], "started_time": "2015-06-17T20:27:58", "close_reason":
43
+ "no_reason", "priority": 2, "state": "finished", "version": "1434570463",
44
+ "spider_type": "manual", "spider_args": {}, "errors_count": 2, "elapsed":
45
+ 3275648627, "id": "1/1/2"}]}'
46
+ http_version:
47
+ recorded_at: Sat, 25 Jul 2015 18:22:15 GMT
48
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,43 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://XXX:@dash.scrapinghub.com/api/jobs/list.json?job=1/1/6&project=1
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - "*/*"
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/1.8.0
23
+ Date:
24
+ - Sat, 25 Jul 2015 18:20:42 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ Vary:
32
+ - Cookie
33
+ body:
34
+ encoding: ASCII-8BIT
35
+ string: '{"status": "ok", "count": 1, "total": 1, "jobs": [{"responses_received":
36
+ 5323, "items_scraped": 1030, "close_reason": "cancel_timeout", "version":
37
+ "1434570463", "tags": ["foo", "bar"], "spider": "atlantic_firearms_crawl",
38
+ "updated_time": "2015-07-23T01:26:37", "priority": 2, "state": "finished",
39
+ "spider_type": "manual", "spider_args": {}, "started_time": "2015-07-22T23:02:13",
40
+ "id": "1/1/6", "errors_count": 4, "elapsed": 5377379, "logs": 167}]}'
41
+ http_version:
42
+ recorded_at: Sat, 25 Jul 2015 18:20:42 GMT
43
+ recorded_with: VCR 2.9.3