-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtrack.py
48 lines (37 loc) · 1.24 KB
/
track.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import requests
from html.parser import HTMLParser
import time
import os
import platform
import sys
from gi.repository import Notify
from TrackingSystem import *
from PocztaPolskaTrackingSystem import PocztaPolskaTrackingSystem
from InPostTrackingSystem import InPostTrackingSystem
from UPSTrackingSystem import UPSTrackingSystem
def getParcelNumber():
return sys.argv[1]
prevHistoryLen = 0
Notify.init("Przesyłka")
sub = TrackingSystem.__subclasses__()
for cl in sub:
trackingSystem = cl(getParcelNumber())
if trackingSystem.isValid(): break
while True:
os.system("clear")
print("Stan na %s\n" % time.ctime())
trackingSystem.checkState()
for (key, value) in trackingSystem.state.items():
print("%s: %s" % (key, value))
print()
padding = 40*'-'
print(padding+'ZDARZENIA'+padding)
for (i, event) in enumerate(trackingSystem.events):
data = str(i + 1)+". [%s] [%s] %s" % (event.date, event.place, event.description)
print(data)
if len(trackingSystem.events) > prevHistoryLen:
Notify.Notification.new ("Nowy stan przesyłki %s" % trackingSystem.parcelNumber,
str(trackingSystem.events[0]),
"dialog-information").show()
prevHistoryLen = len(trackingSystem.events)
time.sleep(60)