russian_post 0.1.2 → 0.1.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.
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- russian_post (0.1.2)
4
+ russian_post (0.1.3)
5
5
  chunky_png (~> 1.2)
6
6
  excon (~> 0.20)
7
7
  mechanize (~> 2.6.0)
@@ -63,7 +63,7 @@ module RussianPost
63
63
 
64
64
  def prepare_text(results)
65
65
  captcha_text = results.map(&:character).join('')
66
- captcha_text.size == 5 ? captcha_text : raise("Unable to recognize captcha")
66
+ captcha_text.size == 5 ? captcha_text : raise(RecognitionError, "Unable to recognize captcha")
67
67
  end
68
68
 
69
69
  def grayscale(captcha_image)
@@ -94,6 +94,8 @@ module RussianPost
94
94
  ChunkyPNG::Image.from_blob(data)
95
95
  end
96
96
 
97
+ class RecognitionError < StandardError; end
98
+
97
99
  end
98
100
 
99
101
  end
@@ -6,20 +6,24 @@ module RussianPost
6
6
 
7
7
  class Tracking
8
8
 
9
- attr_reader :barcode, :agent
9
+ attr_reader :barcode, :agent, :options
10
10
 
11
11
  TRACKING_PAGE = 'http://www.russianpost.ru/rp/servise/ru/home/postuslug/trackingpo'
12
12
  COLUMNS = [:type, :date, :zip_code, :location, :message, :weight, :declared_cost,
13
13
  :delivery_cash, :destination_zip_code, :destination_location]
14
14
 
15
- def initialize(tracking_code)
15
+ def initialize(tracking_code, options = {})
16
16
  @barcode = tracking_code.strip.upcase
17
17
  @agent = Mechanize.new
18
+ @options = options || {}
18
19
  end
19
20
 
20
21
  def track
21
22
  initial_page = fetch_initial_page
22
23
  tracking_page = fetch_tracking_data(initial_page)
24
+
25
+ check_validity!(tracking_page)
26
+
23
27
  parse_tracking_table(tracking_table(tracking_page))
24
28
  end
25
29
 
@@ -29,6 +33,12 @@ module RussianPost
29
33
  RussianPost::Captcha.for_url(get_captcha_url(page)).text
30
34
  end
31
35
 
36
+ def check_validity!(page)
37
+ if page.search('//div[@id=\'CaptchaErrorCodeContainer\']/text()').first
38
+ raise RussianPost::Captcha::RecognitionError, "Failed to recognize captcha. Please contact developers!"
39
+ end
40
+ end
41
+
32
42
  def get_captcha_url(page)
33
43
  page.image_with(:id => 'captchaImage').src
34
44
  end
@@ -59,8 +69,8 @@ module RussianPost
59
69
  end
60
70
 
61
71
  def bypass_security(page)
62
- if page.form.has_field?("key")
63
- page.form.submit
72
+ if page.form && page.form.has_field?("key")
73
+ bypass_security(page.form.submit)
64
74
  elsif page.body.include?("window.location.replace(window.location.toString())")
65
75
  fetch_initial_page
66
76
  end
@@ -69,7 +79,7 @@ module RussianPost
69
79
  def fetch_tracking_data(page)
70
80
  page.form.set_fields(
71
81
  'BarCode' => barcode,
72
- 'InputedCaptchaCode' => solve_captcha(page),
82
+ 'InputedCaptchaCode' => options[:captcha] || solve_captcha(page),
73
83
  'searchsign' => '1')
74
84
  page.form.submit
75
85
  end
@@ -1,3 +1,3 @@
1
1
  module RussianPost
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
@@ -0,0 +1,108 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://www.russianpost.ru/rp/servise/ru/home/postuslug/trackingpo
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Mechanize/2.6.0 Ruby/1.9.3p392 (http://github.com/sparklemotion/mechanize/)
14
+ Accept-Encoding:
15
+ - gzip,deflate,identity
16
+ Accept-Charset:
17
+ - ISO-8859-1,utf-8;q=0.7,*;q=0.7
18
+ Accept-Language:
19
+ - en-us,en;q=0.5
20
+ Connection:
21
+ - keep-alive
22
+ Keep-Alive:
23
+ - 300
24
+ response:
25
+ status:
26
+ code: 200
27
+ message: OK
28
+ headers:
29
+ Server:
30
+ - Apache/2.2.6 (Fedora)
31
+ Content-Type:
32
+ - text/html; charset=UTF-8
33
+ Connection:
34
+ - close
35
+ Expires:
36
+ - Mon, 26 Jul 1997 05:00:00 GMT
37
+ Cache-Control:
38
+ - no-store, no-cache, must-revalidate
39
+ Pragma:
40
+ - no-cache
41
+ body:
42
+ encoding: US-ASCII
43
+ string: ! "<html><head></head><body onload=\"document.myform.submit();\"><form
44
+ method=\"post\" name=\"myform\" style=\"visibility:hidden;\"><input id=\"key\"
45
+ name=\"key\" value=\"893773\"/><input type=\"submit\"/></form></body></html>\r\n\r\n"
46
+ http_version:
47
+ recorded_at: Sun, 28 Apr 2013 03:11:20 GMT
48
+ - request:
49
+ method: post
50
+ uri: http://www.russianpost.ru/rp/servise/ru/home/postuslug/trackingpo
51
+ body:
52
+ encoding: UTF-8
53
+ string: key=893773
54
+ headers:
55
+ Accept:
56
+ - ! '*/*'
57
+ User-Agent:
58
+ - Mechanize/2.6.0 Ruby/1.9.3p392 (http://github.com/sparklemotion/mechanize/)
59
+ Accept-Encoding:
60
+ - gzip,deflate,identity
61
+ Accept-Charset:
62
+ - ISO-8859-1,utf-8;q=0.7,*;q=0.7
63
+ Accept-Language:
64
+ - en-us,en;q=0.5
65
+ Referer:
66
+ - !ruby/object:URI::HTTP
67
+ scheme: http
68
+ user:
69
+ password:
70
+ host: www.russianpost.ru
71
+ port: 80
72
+ path: /rp/servise/ru/home/postuslug/trackingpo
73
+ query:
74
+ opaque:
75
+ registry:
76
+ fragment:
77
+ parser:
78
+ Content-Type:
79
+ - application/x-www-form-urlencoded
80
+ Content-Length:
81
+ - '10'
82
+ Connection:
83
+ - keep-alive
84
+ Keep-Alive:
85
+ - 300
86
+ response:
87
+ status:
88
+ code: 200
89
+ message: OK
90
+ headers:
91
+ Server:
92
+ - Apache/2.2.6 (Fedora)
93
+ Content-Type:
94
+ - text/html; charset=UTF-8
95
+ Connection:
96
+ - close
97
+ Expires:
98
+ - Mon, 26 Jul 1997 05:00:00 GMT
99
+ Cache-Control:
100
+ - no-store, no-cache, must-revalidate
101
+ Pragma:
102
+ - no-cache
103
+ body:
104
+ encoding: US-ASCII
105
+ string: <html><head></head><body onload="window.location.replace(window.location.toString())"></body></html>
106
+ http_version:
107
+ recorded_at: Sun, 28 Apr 2013 03:11:20 GMT
108
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,407 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://www.russianpost.ru/rp/servise/ru/home/postuslug/trackingpo
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Mechanize/2.6.0 Ruby/1.9.3p392 (http://github.com/sparklemotion/mechanize/)
14
+ Accept-Encoding:
15
+ - gzip,deflate,identity
16
+ Accept-Charset:
17
+ - ISO-8859-1,utf-8;q=0.7,*;q=0.7
18
+ Accept-Language:
19
+ - en-us,en;q=0.5
20
+ Connection:
21
+ - keep-alive
22
+ Keep-Alive:
23
+ - 300
24
+ response:
25
+ status:
26
+ code: 200
27
+ message: !binary |-
28
+ T0s=
29
+ headers:
30
+ !binary "U2VydmVy":
31
+ - !binary |-
32
+ bmdpbngvMS4wLjEy
33
+ !binary "RGF0ZQ==":
34
+ - !binary |-
35
+ U3VuLCAyOCBBcHIgMjAxMyAwNDozMjoyMiBHTVQ=
36
+ !binary "Q29udGVudC1UeXBl":
37
+ - !binary |-
38
+ dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04
39
+ !binary "VHJhbnNmZXItRW5jb2Rpbmc=":
40
+ - !binary |-
41
+ Y2h1bmtlZA==
42
+ !binary "Q29ubmVjdGlvbg==":
43
+ - !binary |-
44
+ a2VlcC1hbGl2ZQ==
45
+ !binary "S2VlcC1BbGl2ZQ==":
46
+ - !binary |-
47
+ dGltZW91dD0xNQ==
48
+ !binary "U2V0LUNvb2tpZQ==":
49
+ - !binary |-
50
+ QVNQLk5FVF9TZXNzaW9uSWQ9ZWlmdHkwZDN6NGJqdTQzMGxpaWZkb2Y1OyBw
51
+ YXRoPS87IEh0dHBPbmx5
52
+ - !binary |-
53
+ U2Vzc2lvbklkPVIyOTA5NDIyNjYxOyBwYXRoPS8=
54
+ - !binary |-
55
+ dWlkPTBkNzYyYTYzLTJhNTUtNDNjOS05MGNiLWU4NDcxZGZjM2Q3MTsgZXhw
56
+ aXJlcz1Nb24sIDI4LUFwci0yMDE0IDAzOjMwOjUyIEdNVDsgcGF0aD0v
57
+ !binary "WC1Qb3dlcmVkLUJ5":
58
+ - !binary |-
59
+ QVNQLk5FVA==
60
+ !binary "WC1Bc3BuZXQtVmVyc2lvbg==":
61
+ - !binary |-
62
+ NC4wLjMwMzE5
63
+ !binary "Q2FjaGUtQ29udHJvbA==":
64
+ - !binary |-
65
+ cHJpdmF0ZQ==
66
+ !binary "Q29udGVudC1FbmNvZGluZw==":
67
+ - !binary |-
68
+ Z3ppcA==
69
+ body:
70
+ encoding: ASCII-8BIT
71
+ string: !binary |-
72
+ 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
194
+ qNQ+AAA=
195
+ http_version:
196
+ recorded_at: Sun, 28 Apr 2013 03:30:59 GMT
197
+ - request:
198
+ method: post
199
+ uri: http://www.russianpost.ru/resp_engine.aspx?Path=rp/servise/ru/home/postuslug/trackingpo
200
+ body:
201
+ encoding: UTF-8
202
+ string: OP=&PATHCUR=rp%2Fservise%2Fru%2Fhome%2Fpostuslug%2Ftrackingpo&PATHFROM=&WHEREONOK=&ASP=&PARENTID=&FORUMID=&NEWSID=&DFROM=&DTO=&CA=&CDAY=28&CMONTH=04&CYEAR=2013&NAVCURPAGE=&SEARCHTEXT=&searchAdd=&PATHWEB=RP%2FINDEX%2FRU%2FHome&PATHPAGE=RP%2FINDEX%2FRU%2FHome%2FSearch&search1=&BarCode=RA287813139CN&InputedCaptchaCode=123456&CaptchaId=6311&searchsign=1&entryBarCode=
203
+ headers:
204
+ Accept:
205
+ - ! '*/*'
206
+ User-Agent:
207
+ - Mechanize/2.6.0 Ruby/1.9.3p392 (http://github.com/sparklemotion/mechanize/)
208
+ Accept-Encoding:
209
+ - gzip,deflate,identity
210
+ Accept-Charset:
211
+ - ISO-8859-1,utf-8;q=0.7,*;q=0.7
212
+ Accept-Language:
213
+ - en-us,en;q=0.5
214
+ Cookie:
215
+ - !binary |-
216
+ U2Vzc2lvbklkPVIyOTA5NDIyNjYxOyBBU1AuTkVUX1Nlc3Npb25JZD1laWZ0
217
+ eTBkM3o0Ymp1NDMwbGlpZmRvZjU7IHVpZD0wZDc2MmE2My0yYTU1LTQzYzkt
218
+ OTBjYi1lODQ3MWRmYzNkNzE=
219
+ Referer:
220
+ - !ruby/object:URI::HTTP
221
+ scheme: http
222
+ user:
223
+ password:
224
+ host: www.russianpost.ru
225
+ port: 80
226
+ path: /rp/servise/ru/home/postuslug/trackingpo
227
+ query:
228
+ opaque:
229
+ registry:
230
+ fragment:
231
+ parser:
232
+ Content-Type:
233
+ - application/x-www-form-urlencoded
234
+ Content-Length:
235
+ - '365'
236
+ Connection:
237
+ - keep-alive
238
+ Keep-Alive:
239
+ - 300
240
+ response:
241
+ status:
242
+ code: 200
243
+ message: !binary |-
244
+ T0s=
245
+ headers:
246
+ !binary "U2VydmVy":
247
+ - !binary |-
248
+ bmdpbngvMS4wLjEy
249
+ !binary "RGF0ZQ==":
250
+ - !binary |-
251
+ U3VuLCAyOCBBcHIgMjAxMyAwNDozMjoyMyBHTVQ=
252
+ !binary "Q29udGVudC1UeXBl":
253
+ - !binary |-
254
+ dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04
255
+ !binary "VHJhbnNmZXItRW5jb2Rpbmc=":
256
+ - !binary |-
257
+ Y2h1bmtlZA==
258
+ !binary "Q29ubmVjdGlvbg==":
259
+ - !binary |-
260
+ a2VlcC1hbGl2ZQ==
261
+ !binary "S2VlcC1BbGl2ZQ==":
262
+ - !binary |-
263
+ dGltZW91dD0xNQ==
264
+ !binary "U2V0LUNvb2tpZQ==":
265
+ - !binary |-
266
+ U2Vzc2lvbklkPVIyOTA5NDIyNjYxOyBwYXRoPS8=
267
+ !binary "WC1Qb3dlcmVkLUJ5":
268
+ - !binary |-
269
+ QVNQLk5FVA==
270
+ !binary "WC1Bc3BuZXQtVmVyc2lvbg==":
271
+ - !binary |-
272
+ NC4wLjMwMzE5
273
+ !binary "Q2FjaGUtQ29udHJvbA==":
274
+ - !binary |-
275
+ cHJpdmF0ZQ==
276
+ !binary "Q29udGVudC1FbmNvZGluZw==":
277
+ - !binary |-
278
+ Z3ppcA==
279
+ body:
280
+ encoding: ASCII-8BIT
281
+ string: !binary |-
282
+ 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
405
+ http_version:
406
+ recorded_at: Sun, 28 Apr 2013 03:30:59 GMT
407
+ recorded_with: VCR 2.4.0
@@ -25,5 +25,15 @@ module RussianPost
25
25
  assert_equal expected, tracking.first
26
26
  end
27
27
  end
28
+
29
+ def test_captcha_failure
30
+ VCR.use_cassette('tracking_captcha_failure') do
31
+ assert_raise RussianPost::Captcha::RecognitionError do
32
+ RussianPost::Tracking.new('RA287813139CN', captcha: '123456').track
33
+ end
34
+
35
+ end
36
+
37
+ end
28
38
  end
29
39
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: russian_post
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -163,6 +163,8 @@ files:
163
163
  - russian_post.gemspec
164
164
  - test/fixtures/captcha.png
165
165
  - test/fixtures/post_tracking.yml
166
+ - test/fixtures/securty_measures_example.yml
167
+ - test/fixtures/tracking_captcha_failure.yml
166
168
  - test/russian_post/captcha/pattern_test.rb
167
169
  - test/russian_post/captcha/patterns_test.rb
168
170
  - test/russian_post/captcha_test.rb
@@ -196,6 +198,8 @@ summary: Russian Post postal tracking toolset
196
198
  test_files:
197
199
  - test/fixtures/captcha.png
198
200
  - test/fixtures/post_tracking.yml
201
+ - test/fixtures/securty_measures_example.yml
202
+ - test/fixtures/tracking_captcha_failure.yml
199
203
  - test/russian_post/captcha/pattern_test.rb
200
204
  - test/russian_post/captcha/patterns_test.rb
201
205
  - test/russian_post/captcha_test.rb