-
Notifications
You must be signed in to change notification settings - Fork 0
/
hscei.py
47 lines (42 loc) · 1.31 KB
/
hscei.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
import urllib2
import datetime
import argparse
month_str_map = {
1 : 'Jan',
2 : 'Feb',
3 : 'Mar',
4 : 'Apr',
5 : 'May',
6 : 'Jun',
7 : 'Jul',
8 : 'Aug',
9 : 'Sep',
10 : 'Oct',
11 : 'Nov',
12 : 'Dec',
}
def getReport(datestr):
url = 'http://sc.hangseng.com/gb/www.hsi.com.hk/HSI-Net/static/revamp/contents/en/indexes/report/hscei/idx_%s.csv'%(datestr)
response = urllib2.urlopen(url)
data = response.read()
print data.decode("utf-16")
def getDateStr(datestr=None):
if datestr is None:
today = datetime.datetime.today()
year = today.year % 100
month = month_str_map[today.month]
day = today.day
else:
year = int(datestr[:2])
month = month_str_map[int(datestr[2:4])]
day = int(datestr[4:])
return "%d%s%d"%(day, month, year)
def main():
parser = argparse.ArgumentParser(description='hscei extractor')
parser.add_argument('-d', '--date', type=str, required=False, help='date')
res = parser.parse_args()
ds = getDateStr(res.date)
print "get report by %s"%(ds)
getReport(ds)
if __name__ == '__main__':
main()