예제 #1
0
 def _get_time(self, time):
     if time.upper() == 'NOW':
         return self.call("system.searchByName", '\w')[0]['last_checkin']
     elif len(time) > 0:
         return time
     else:
         raise Exception("Time not specified")
예제 #2
0
 def _get_time(self, time):
     if time.upper() == 'NOW':
         return self.call("system.searchByName", '\w')[0]['last_checkin']
     elif len(time) > 0:
         return time
     else:
         raise Exception("Time not specified")
예제 #3
0
def convert_time(time):
    time = time.upper()
    time, ap = time.split(' ')
    hour, minute = time.split(':')
    hour = int(hour)
    minute = int(minute)
    time = 60 * hour + minute
    if ap == 'PM':
        time += 12 * 60
    return time
	def __getIntFromTime(self, time):
		pm = False
		if "PM" in time.upper():
			pm = True
		
		if "." in time or ":" in time:
			time = time.replace(":",".")
			time = time[:time.find(".")]
		
		time = int(time.replace("AM", "").replace("PM", "").replace("am", "").replace("pm", ""))
		if pm: time = int(time)+12
		
		return str(time)
예제 #5
0
def start(token, sendkey, ss):
    flag = False
    print('ss is ' + str(ss))
    url = 'https://tieba.baidu.com/f?kw=%E6%8B%BC%E5%A4%9A%E5%A4%9A%E9%BB%91%E5%8D%A1&ie=utf-8&pn=0'
    response = requests.get(url, timeout=(10, 10))
    selector = etree.HTML(response.text)
    now = datetime.now()
    now_str = now.strftime('%Y-%m-%d ')

    rs = []

    for i in selector.xpath('//*[@id="thread_list"]/li'):
        flag = True  #读到数据视为成功
        ttexts = i.xpath('div/div[2]/div[1]/div[1]/a/text()')
        if len(ttexts) < 1:
            continue
        title = ':    ' + ttexts[0]
        bodys = i.xpath('div/div[2]/div[2]/div[1]/div/text()')
        if len(bodys) > 0 and len(replaceStr(bodys[0])) > 0:
            title = title + bodys[0]
        if title.find("五级") == -1 and title.find("5级") == -1 and title.find(
                "六级") == -1 and title.find("6级") == -1:
            continue
        time = replaceStr(
            i.xpath('div/div[2]/div[1]/div[2]/span[2]/text()')[0])
        if time.upper().find(":") == -1:
            continue
        dt_time = datetime.strptime(now_str + time, '%Y-%m-%d %H:%M')
        if (now - dt_time).seconds > ss:
            continue
        print(title, '   ----------   ', dt_time)
        rs.append(time + title)

    # 推送消息
    if len(rs) > 0:
        sp = '%0D%0A'  #推送的换行符
        url = 'https://push.100180.xyz:48190/wecomchan?sendkey=' + sendkey + '&msg_type=text&msg=pdd-hk [' + str(
            ss) + 's]  ' + now.strftime(tformat) + sp + sp
        msg = sp.join(rs)
        resp = requests.get(url + msg,
                            timeout=(10, 10),
                            auth=HTTPBasicAuth("admin", token),
                            verify=False)
        if resp.status_code != 200 and resp.status_code != 201:  #推送失败视为整体失败,下次执行时任然可以拉取
            print('letserver push error -> ' + str(resp.status_code))
            flag = False

    if flag == True:
        cacheTime()
예제 #6
0
def save_data(data):
	listdir = os.listdir('pse_data/'+ time.upper() +'/')
	if len(datapoints) > 30:
		if datetoday in listdir:	
			filename = 'pse_data/'+ time.upper() +'/'+ datetoday + '/' + str(i) + '_' + time.upper() + '.txt'
			with open(filename, 'w') as outfile:
			    json.dump(data, outfile)
		else:
			os.mkdir('pse_data/'+ time.upper() +'/'+ datetoday)
			filename = 'pse_data/'+ time.upper() +'/'+ datetoday + '/' + str(i) + '_' + time.upper() +  '.txt'
			with open(filename, 'w') as outfile:
			    json.dump(data, outfile)
	return data
예제 #7
0
def save_data(filename, i, data):
    file_list = glob.glob('pse_data/new_data/*.json')
    j=0
    ticker_list = []
    for j in range(len(file_list)-1):
	ticker_list.append(file_list[j][18:-7]) #get ticker name only
	j=+1
    ticker_list = list(set(ticker_list)) #remove duplicate 
    if time.upper() == 'D':
	with open(filename[:-6]+datetoday+'.json', 'w') as outfile:
            json.dump(data, outfile)
	    print 'created %s_%s.json' %(i, datetoday)
    else: #i not in ticker_list, then save as
	with open(filename, 'w') as outfile:
                json.dump(data, outfile)
	print 'created %s.json' %i
    
    #print 'Obtained data of (%d) companies:\n %s' %(len(ticker_list),ticker_list)
    return data
예제 #8
0
			os.mkdir('pse_data/'+ time.upper() +'/'+ datetoday)
			filename = 'pse_data/'+ time.upper() +'/'+ datetoday + '/' + str(i) + '_' + time.upper() +  '.txt'
			with open(filename, 'w') as outfile:
			    json.dump(data, outfile)
	return data

#list of symbols/tickers of companies registered in PSE
symlist = ['I','LOTO','FGEN','MFIN','NOW','SRDC','PERC','FOOD','COL','MPI','AP','NRCP','YEHEY','VLL','PNX','PIP','ALHI','SPH','ORE','EIBB','RWM','ANI','HOUSE','H2O','ALT','NIKL','ROCK','CPM','IMI','EG','MWIDE','DMW','PXP','PGOLD','TECH','EMP','GTCAP','DNL','CAL','COAL','PBB','DMPL','TUGS','AGF','DWC','TFHI','RRHI','CIC','DD','CNPF','TAPET','SSI','PSPC','PGI','X','CROWN','SBS','DATEM','MRSGI','IDC','MER','TEL','EEI','FPH','COSCO','PNB','ICT','HI','PX','KEP','KPH','KPHB','POPI','RLT','MACAY','ANS','ABA','AR','ABS','ACE','MARC','ABG','APO','APX','AT','LR','AB','AC','ALI','PHN','PAL','BPI','BSC','BEL','BC','BCB','BMM','CPV','CPVB','RCI','BCOR','CAT','CEU','CIP','CHIB','CA','CAB','BH','DIZ','ECP','FEU','PAX','FDC','FLI','FYN','FYNB','CYBR','GLO','GPH','IMP','IMPB','MAC','ARA','MCP','IRC','IS','ISM','ATN','ATNB','STI','JGS','JFC','ZHI','GEO','PORT','LC','LFM','PHC','LIHC','MHC','LCB','MBC','MB','MJC','MA','MAB','LTG','SGP','DAVIN','MAH','MAHB','MCB','PMPC','MBT','MED','CPG','OM','OPM','OPMB','JAS','PA','MJIC','V','PCP','IPO','TFC','PBC','PHES','OV','PRC','PTT','PTC','STR','PRIM','PPC','MG','PF','SUN','LRI','REG','WIN','RFM','RCB','RLC','MGH','SMC','SPM','SHNG','WEB','STN','NI','GO','GOB','ACR','TA','FJP','FJPB','UBP','UPM','SGI','EIBA','VUL','SLI','LPZ','SOC','VMC','PCOR','UNI','URC','MEG','SMPH','VVT','PSB','LIB','APC','CEI','CDC','CHI','SFI','AEV','FAF','FNI','SCC','BKR','FPI','VITA','WPI','2GO','GSMI','MRC','PNC','SECB','ION','PLC','LMG','BRN','ELI','LSC','PMT','ATI','DMC','GERI','AAA','HLCM','EVER','UW','ALCO','GREEN','NXGEN','ROX','MVC','BHI','PHA','SLF','BLFI','SM','EDC','SEVN','IPM','EURO','LAND','AUB','AGI','GMA7','MWC','EW','MFC','PSE','BLOOM','BDO','DFNN','CEB','MAXS','CSB','PRMX','T','TBGI','LBC','JOH','SPC']

#symlist = ['VITA','MBT','FGEN','BDO','SMPH']
datetoday = str(dt.today())
datetoday = datetoday[:10]

time = raw_input('Print history format: yearly (Y), monthly (M), daily (D)\n')
response = raw_input('Show plots? Yes (y) or No (n) \n')
if time.upper() == 'Y':
    print 'Obtaining yearly data'
    xfmt = mdates.DateFormatter('%m-%d-%Y')
elif time.upper() == 'M':
    print 'Obtaining monthly data'
    xfmt = mdates.DateFormatter('%m-%d-%Y %H:%M:%S')
elif time.upper() == 'D':
    print 'Obtaining daily data'
    xfmt = mdates.DateFormatter('%m-%d-%Y %H:%M:%S')
else:
    print 'Unknown input. Please run again.'

unixdate_array = []
date_array = []
price_array = []
date_price_array = []
예제 #9
0
	with open(filename, 'w') as outfile:
                json.dump(data, outfile)
	print 'created %s.json' %i
    
    #print 'Obtained data of (%d) companies:\n %s' %(len(ticker_list),ticker_list)
    return data

#list of symbols/tickers of companies registered in PSE
#symlist = ['I','LOTO','FGEN','MFIN','NOW','SRDC','PERC','FOOD','COL','MPI','AP','NRCP','YEHEY','VLL','PNX','PIP','ALHI','SPH','ORE','EIBB','RWM','ANI','HOUSE','H2O','ALT','NIKL','ROCK','CPM','IMI','EG','MWIDE','DMW','PXP','PGOLD','TECH','EMP','GTCAP','DNL','CAL','COAL','PBB','DMPL','TUGS','AGF','DWC','TFHI','RRHI','CIC','DD','CNPF','TAPET','SSI','PSPC','PGI','X','CROWN','SBS','DATEM','MRSGI','IDC','MER','TEL','EEI','FPH','COSCO','PNB','ICT','HI','PX','KEP','KPH','KPHB','POPI','RLT','MACAY','ANS','ABA','AR','ABS','ACE','MARC','ABG','APO','APX','AT','LR','AB','AC','ALI','PHN','PAL','BPI','BSC','BEL','BC','BCB','BMM','CPV','CPVB','RCI','BCOR','CAT','CEU','CIP','CHIB','CA','CAB','BH','DIZ','ECP','FEU','PAX','FDC','FLI','FYN','FYNB','CYBR','GLO','GPH','IMP','IMPB','MAC','ARA','MCP','IRC','IS','ISM','ATN','ATNB','STI','JGS','JFC','ZHI','GEO','PORT','LC','LFM','PHC','LIHC','MHC','LCB','MBC','MB','MJC','MA','MAB','LTG','SGP','DAVIN','MAH','MAHB','MCB','PMPC','MBT','MED','CPG','OM','OPM','OPMB','JAS','PA','MJIC','V','PCP','IPO','TFC','PBC','PHES','OV','PRC','PTT','PTC','STR','PRIM','PPC','MG','PF','SUN','LRI','REG','WIN','RFM','RCB','RLC','MGH','SMC','SPM','SHNG','WEB','STN','NI','GO','GOB','ACR','TA','FJP','FJPB','UBP','UPM','SGI','EIBA','VUL','SLI','LPZ','SOC','VMC','PCOR','UNI','URC','MEG','SMPH','VVT','PSB','LIB','APC','CEI','CDC','CHI','SFI','AEV','FAF','FNI','SCC','BKR','FPI','VITA','WPI','2GO','GSMI','MRC','PNC','SECB','ION','PLC','LMG','BRN','ELI','LSC','PMT','ATI','DMC','GERI','AAA','HLCM','EVER','UW','ALCO','GREEN','NXGEN','ROX','MVC','BHI','PHA','SLF','BLFI','SM','EDC','SEVN','IPM','EURO','LAND','AUB','AGI','GMA7','MWC','EW','MFC','PSE','BLOOM','BDO','DFNN','CEB','MAXS','CSB','PRMX','T','TBGI','LBC','JOH','SPC']

symlist = ['VITA','MBT','FGEN','BDO','SMPH']

time = raw_input('Print history format: yearly (Y), monthly (M), daily (D)\n')
response = raw_input('Show plots? Yes (y) or No (n) \n')

if time.upper() == 'Y':
    print 'Obtaining yearly data'
    xfmt = mdates.DateFormatter('%m-%d-%Y')
elif time.upper() == 'M':
    print 'Obtaining monthly data'
    xfmt = mdates.DateFormatter('%m-%d-%Y %H:%M:%S')
elif time.upper() == 'D':
    print 'Obtaining daily data'
    xfmt = mdates.DateFormatter('%m-%d-%Y %H:%M:%S')
else:
    print 'Unknown input. Please run again.'

unixdate_array = []
date_array = []
price_array = []
date_price_array = []