[amazon] Retry getting an order page. Closes #1876
This commit is contained in:
parent
020a5827dd
commit
f41d43e3f5
1 changed files with 5 additions and 6 deletions
|
|
@ -85,16 +85,15 @@ class Amazon(LoginBrowser):
|
||||||
Amazon updates its website in stages: they reroute a random part of
|
Amazon updates its website in stages: they reroute a random part of
|
||||||
their users to new pages, and the rest to old ones.
|
their users to new pages, and the rest to old ones.
|
||||||
"""
|
"""
|
||||||
if (not self.order_new.is_here() and not self.order_old.is_here()) \
|
for i in xrange(self.MAX_RETRIES):
|
||||||
or self.page.order_number() != order_id:
|
if (self.order_new.is_here() or self.order_old.is_here()) \
|
||||||
|
and self.page.order_number() == order_id:
|
||||||
|
return self.page
|
||||||
try:
|
try:
|
||||||
self.order_new.go(order_id=order_id)
|
self.order_new.go(order_id=order_id)
|
||||||
except HTTPNotFound:
|
except HTTPNotFound:
|
||||||
self.order_old.go(order_id=order_id)
|
self.order_old.go(order_id=order_id)
|
||||||
if (not self.order_new.is_here() and not self.order_old.is_here()) \
|
raise OrderNotFound()
|
||||||
or self.page.order_number() != order_id:
|
|
||||||
raise OrderNotFound()
|
|
||||||
return self.page
|
|
||||||
|
|
||||||
def do_login(self):
|
def do_login(self):
|
||||||
self.session.cookies.clear()
|
self.session.cookies.clear()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue