def run(self, dao: Dao, h1): h1('twitter_friends取得') friends = dao.table('twitter_friends').full_scan() s3 = boto3.resource('s3').Bucket("kabupac.com") h1('画像取得してBase64化') err_list = [] friend = None all_data = {} piece_up = False try: for fr in friends: friend = fr url = fr['profile_image_url'] data = request.urlopen(url).read() str_img = base64.b64encode(data).decode('utf-8') # 個別 json = {"i":"data:image/{};base64,{}".format(self.get_ext(url), str_img)} if piece_up: s3.put_object(Key="prof/{}".format(fr['id_str']), Body=JSON.dumps(json)) all_data[fr['id_str']] = "data:image/{};base64,{}".format(self.get_ext(url), str_img) except: Util.print_stack_trace() err_list.append(friend['id_str']) h1('s3にアップロード') s3.put_object(Key="prof/profimg.json", Body=JSON.dumps(all_data)) print(err_list) h1('終了')
def task006_handler(event, context): os.environ["PRODUCTION_DAO"] = "True" # TODO 本番向けテスト用 print(DateTimeUtil.str_now()) dao = Dao() ident_list = dao.table('stock_identify').full_scan() data = {} for ident in ident_list: cd = ident['ccode'] dat = {} if cd not in data else data[cd] if 'ns' in dat: dat['ns'] = dat['ns'].split('_') dat['ns'].append(ident['nm']) else: dat['ns'] = [ident['nm']] if ident['main'] == 'y': dat['n'] = ident['nm'] dat['ns'] = '_'.join(dat['ns']) data[cd] = dat ret = [] for d in data.items(): d[1]['c'] = d[0] ret.append(d[1]) s3 = boto3.resource('s3').Bucket("kabupac.com") s3.put_object(Key="suggest/dat.json", Body=JSON.dumps(ret)) return ''
def response(body): return { "isBase64Encoded": False, "statusCode": 200, "headers": { "Access-Control-Allow-Origin": "*", "Cache-Control": "no-cache" }, "body": JSON.dumps(body) }