Pythonスクリプトの初心者です。タイトル名のようにお聞きしたいのですが、オフィスのKPIをモニタリングするアイデアのイノベーションがあり、ほぼ完成しました。しかし、自分で仕上げることができない問題があります。
テーブルmysqlから電報ボットにPythonで複数のレコードを表示する方法、および特定の電話番号のみが私のボットテレグラムにアクセスできますか?
この私のスクリプト:
「テーブル mysql からテレグラム ボットに複数のレコードを表示する方法」
def query(requ):
cursor = db.cursor()
sql = "SELECT * FROM monitor WHERE Tanggal LIKE '%" + str(requ.encode('utf-8')) + "%'"
try:
cursor.execute(sql)
# memecahkan hasil dari table
results = cursor.fetchall()
# memberikan hasil jika hasil sesuai sama tabel maka keluar sesuai hasil
if len(results)>0:
output = ''
for row in results:
Tanggal = row[0]
DOWNTIME_PLN = row[1]
RUN_GENSET = row[2]
SHREDDER_MILL_DOWNTIME = row[3]
SHREDDER_CRUMB_DOWNTIME = row[4]
SHREDDER_CRUMB_AMPERE = row[5]
has_trans = row[6]
# Now print fetched result
output = "Tanggal = %s, \nDOWNTIME_PLN = %d, \nRUN_GENSET = %s, \nSHREDDER_MILL_DOWNTIME = %s, \nSHREDDER_CRUMB_DOWNTIME=%s, \nSHREDDER_CRUMB_AMPERE=%s, \nhas_trans = %s" % \
(Tanggal,DOWNTIME_PLN,RUN_GENSET,SHREDDER_MILL_DOWNTIME,SHREDDER_CRUMB_DOWNTIME,SHREDDER_CRUMB_AMPERE,has_trans)
print (Tanggal,DOWNTIME_PLN,RUN_GENSET,SHREDDER_MILL_DOWNTIME,SHREDDER_CRUMB_DOWNTIME,SHREDDER_CRUMB_AMPERE,has_trans)
else:
output = 'No word in my dic'
except:
output = 'error'
return output
「特定の電話番号だけがボット テレグラムにアクセスできるようにするにはどうすればよいですか?」
def handle(msg):
#Deklarasi untuk profile Telegram
chat_id = msg['chat']['id']
command = msg['text']
user_id = msg['from']['id']
username = msg['from']['first_name']
fullname = msg['from']['last_name']+msg['from']['first_name']
timestr = time.strftime("%Y-%m-%d_%H")
content_type, chat_type, chat_id = telepot.glance(msg)
if (content_type == 'text'):
command = msg['text']
print ('Got command: %s' % command)
#Dekklarasi command apa saja yang mau dimasukin
if command == 'halo':
keyboard = [
['Halo', 'erlang'],
['cpu', 'ddd'],
['ccc'],['Tutup']
]
reply_markup = ReplyKeyboardMarkup.create(keyboard)
bot.sendMessage(chat_id, "Assalamu'alaikum "+username+", ..?",reply_markup=reply_markup)
elif command == 'erlang':
bot.sendPhoto(chat_id=chat_id, photo=open('E:/@@@/@smartfren/capture trial/Compare_KPI_1' + '.jpg','rb'))
bot.sendPhoto(chat_id=chat_id, photo=open('E:/@@@/@smartfren/capture trial/Compare_KPI_2' + '.jpg','rb'))
elif command == 'cpu':
print ('Got command: %s' % timestr + command)
bot.sendMessage(chat_id=chat_id, :test:)
elif 'Tutup' in command:
hide_keyboard = {'hide_keyboard': True}
bot.sendMessage(chat_id, 'Fungsi KeyBoard ditutup!', reply_markup=hide_keyboard)
elif 'ccc' in command:
reps_content = query(command)
bot.sendMessage(chat_id, reps_content)
elif 'ddd' in command:
reps_content = query2(command)
bot.sendMessage(chat_id, reps_content)
ありがとう :)