Add display for parcels not yet showing up in tracking.
This commit is contained in:
parent
78849d37ec
commit
9732c02765
@ -19,6 +19,8 @@ class DHL(TrackerAPI):
|
|||||||
self.idcode = idcode
|
self.idcode = idcode
|
||||||
self.url = self.URL.format(idcode=self.idcode)
|
self.url = self.URL.format(idcode=self.idcode)
|
||||||
|
|
||||||
|
error_selector = CSSSelector("#set_identcodes .error")
|
||||||
|
self.error = lambda page: len(error_selector(page)) >= 1
|
||||||
self.progress_selector = CSSSelector(".greyprogressbar > span, .greenprogressbar > span")
|
self.progress_selector = CSSSelector(".greyprogressbar > span, .greenprogressbar > span")
|
||||||
self.last_status_selector = CSSSelector(".events .eventList tr")
|
self.last_status_selector = CSSSelector(".events .eventList tr")
|
||||||
self.intrarow_status_selector = CSSSelector("td.status div")
|
self.intrarow_status_selector = CSSSelector("td.status div")
|
||||||
@ -27,6 +29,9 @@ class DHL(TrackerAPI):
|
|||||||
ret = {}
|
ret = {}
|
||||||
with urlopen(self.url) as page:
|
with urlopen(self.url) as page:
|
||||||
page = lxml.html.fromstring(page.read())
|
page = lxml.html.fromstring(page.read())
|
||||||
|
if self.error(page):
|
||||||
|
ret["progress"] = ret["status"] = "n/a"
|
||||||
|
else:
|
||||||
ret["progress"] = self.progress_selector(page)[0].text.strip()
|
ret["progress"] = self.progress_selector(page)[0].text.strip()
|
||||||
last_row = self.last_status_selector(page)[-1]
|
last_row = self.last_status_selector(page)[-1]
|
||||||
ret["status"] = self.intrarow_status_selector(last_row)[0].text.strip()
|
ret["status"] = self.intrarow_status_selector(last_row)[0].text.strip()
|
||||||
|
Loading…
Reference in New Issue
Block a user