Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import requests
- from telegram.ext import Updater, CommandHandler
- import logging
- import xml.etree.ElementTree as ET
- url = 'http://webservices.ns.nl/ns-api-treinplanner?previousAdvices=0&nextAdvices=2'
- username = 'hylcos@gmail.com'
- password = '---------'
- maxAdvices = 3
- def start(bot, update):
- update.message.reply_text('Hello World!')
- def travel(bot, update):
- text = update.message.text.split(' ')
- text = ' '.join(text[1:]).replace(' ','').split(',')
- _url = url + "&fromStation=" + text[0] + "&toStation=" + text[1]
- r = requests.get(_url,auth=(username,password))
- if r.status_code != 200:
- bot.sendMessage(update.message.chat.id,"Something went wrong!")
- return
- else:
- bot.sendMessage(update.message.chat.id,"Advies "+ text[0] + " -> " + text[1])
- data = r.text
- data = data.replace('\n','').replace('\t','')
- root = ET.fromstring(data)
- for i,ReisMogelijkheid in enumerate(root.iter('ReisMogelijkheid')):
- GeplandeVertrekTijd = ReisMogelijkheid.find('GeplandeVertrekTijd').text
- GeplandeVertrekTijd = GeplandeVertrekTijd[GeplandeVertrekTijd.find('T')+1:GeplandeVertrekTijd.rfind(':')]
- GeplandeAankomstTijd = ReisMogelijkheid.find('GeplandeAankomstTijd').text
- GeplandeAankomstTijd = GeplandeAankomstTijd[GeplandeAankomstTijd.find('T')+1:GeplandeAankomstTijd.rfind(':')]
- spoor = ReisMogelijkheid.find('ReisDeel').find('ReisStop').find('Spoor').text
- bot.sendMessage(update.message.chat.id,GeplandeVertrekTijd+ " - " + GeplandeAankomstTijd + "\nSpoor: " + spoor )
- if i is 2:
- return
- logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',level=logging.INFO)
- logger = logging.getLogger(__name__)
- updater = Updater('------')
- updater.dispatcher.add_handler(CommandHandler('start', start))
- updater.dispatcher.add_handler(CommandHandler('travel', travel))
- updater.start_polling()
- updater.idle()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement