def launches(update, context): pass j = requests.get('https://fdo.rocketlaunch.live/json/launches/next/5') n_results = 5 api_json = json.loads(j.text)['result'] txts = [] livestream = "" for i in range(0, n_results): padlocation = str( api_json[i]['pad']['location']['statename']) + ', ' + str( api_json[i]['pad']['location']['country']) print(str(api_json[i]['pad']['location']['statename'])) if str(api_json[i]['pad']['location']['statename']) == "None": padlocation = str(api_json[i]['pad']['location']['country']) print(padlocation) launch_date = str(api_json[i]['win_open']) if launch_date == "None": if str(api_json[i]['est_date']['month']) != "None": day = '0' month = '0' if int(api_json[i]['est_date']['month']) < 10: month = month + str(api_json[i]['est_date']['month']) else: month = str(api_json[i]['est_date']['month']) if str(api_json[i]['est_date']['day']) != "None": if int(api_json[i]['est_date']['day']) < 10: day = day + str(api_json[i]['est_date']['day']) else: day = str(api_json[i]['est_date']['day']) else: day = "??" launch_date = month + '-' + day + '-' + str( api_json[i]['est_date']['year']) l = Launch(str(api_json[i]['name']), str(api_json[i]['provider']['name']), str(api_json[i]['vehicle']['name']), str(api_json[i]['pad']['location']['name']), padlocation, 'nodescforlist', launch_date, livestream) txts.append(rocket + ' /' + str(i+1) + ' - <i>' + str(api_json[i]['name']) + '</i> ' + rocket \ + '\n' + l.getFormattedText()) endtext = "" for i in range(0, len(txts)): endtext = endtext + txts[i] context.bot.send_message(chat_id=update.effective_chat.id, text=endtext, disable_web_page_preview=True, parse_mode=ParseMode.HTML)
def nextLaunch(n_results): pass providers_list = [ "spacex", "ula", "nasa", "roscosmos", "jaxa", "china", "astra", "virgin", "rocketlab", "grumman" ] selected = "" j = requests.get('https://fdo.rocketlaunch.live/json/launches/next/5') #change this to select the right launch if n_results > 0 and n_results < 6: api_json = json.loads(j.text)['result'] txts = [] livestream = "" for i in range(n_results - 1, n_results): padlocation = str( api_json[i]['pad']['location']['statename']) + ', ' + str( api_json[i]['pad']['location']['country']) print(str(api_json[i]['pad']['location']['statename'])) if str(api_json[i]['pad']['location']['statename']) == "None": padlocation = str(api_json[i]['pad']['location']['country']) print(padlocation) launch_date = str(api_json[i]['win_open']) if launch_date == "None": if str(api_json[i]['est_date']['month']) != "None": day = '0' month = '0' if int(api_json[i]['est_date']['month']) < 10: month = month + str(api_json[i]['est_date']['month']) else: month = str(api_json[i]['est_date']['month']) if str(api_json[i]['est_date']['day']) != "None": if int(api_json[i]['est_date']['day']) < 10: day = day + str(api_json[i]['est_date']['day']) else: day = str(api_json[i]['est_date']['day']) else: day = "??" launch_date = month + '-' + day + '-' + str( api_json[i]['est_date']['year']) if str(api_json[i]['quicktext']) != "None": parts = str(api_json[i]['quicktext']).split('- ') for x in parts: if "https" in x: livestream = x print("Livestream link: " + livestream) l = Launch(str(api_json[i]['name']), str(api_json[i]['provider']['name']), str(api_json[i]['vehicle']['name']), str(api_json[i]['pad']['location']['name']), padlocation, str(api_json[i]['launch_description']), launch_date, livestream) txts.append(rocket + ' #' + str(i+1) + ' - <i>' + str(api_json[i]['name']) + '</i> ' + rocket \ + '\n' + l.getFormattedText()) for k in range(0, len(providers_list)): print("Lower data: " + str(api_json[i]['provider']['name']).lower()) print("Item in list: " + providers_list[k]) if providers_list[k] in str( api_json[i]['provider']['name']).lower(): selected = providers_list[k] + '.jpg' break return txts[0], selected, livestream #button_list = [ # InlineKeyboardButton("Watch Livestream (if available)", url=livestream) #] #reply_markup = InlineKeyboardMarkup(build_menu(button_list, n_cols=1)) #if selected == "": # context.bot.send_message(chat_id=update.effective_chat.id, # text=txts[0], # parse_mode=ParseMode.HTML) #else: # context.bot.send_photo(chat_id=update.effective_chat.id, # photo=open('imgs/' + selected, 'rb'), # caption=txts[0], # parse_mode=ParseMode.HTML, # reply_markup=reply_markup) else: print("param not in range\nn_results: " + str(n_results) + "\n")