Pythonanywhere не перезаписываются данные в файле
Формулировка задачи:
Создал вебхук на Flask для телеграм бота. Задача написать бота, который выдаёт ДЗ. Храню на pythonanywhere
Создал в папке со скриптом файл domashka.txt. Проблема, при выполнении команды /domashka add some приходит уведомление о выполнении телегу, в error логе нету ничего, но файл не изменяется. Соответственно при написании /domashka просто уведомление о выполнении. Если на сайте изменить файл, то чудесным образом команда /domashka работает. Не подскажете как бороться.
Заранее спасибо!
Листинг программы
- @app.route('/', methods=['POST', 'GET'])
- hwork_file = open('domashka.txt', 'a')
- hwork_read = open('domashka.txt')
- def index():
- if request.method == 'POST':
- r = request.get_json()
- chat_id = r['message']['chat']['id']
- message = r['message']['text']
- if message.startswith('/domashka add'):
- hwork_file.write(message[13] + "\n")
- send_message(chat_id, 'Выполнено!')
- if message == '/domashka clear':
- hwork_file.truncate()
- send_message(chat_id, 'Выполнено!')
- if message == '/domashka':
- for line in f.readlines():
- send_message(chat_id, line),
- send_message(chat_id, 'Выполнено!')
- return jsonify(r)
- return '
Flask
'def send_message(chat_id, text='none'):- url = URL + 'sendMessage'
- answer = {'chat_id' : chat_id, 'text' : text}
- r = requests.post(url, json=answer)
- return r.json()
И да @app.route стоит перед методом, не подумайте.
Решение задачи: «Pythonanywhere не перезаписываются данные в файле»
textual
Листинг программы
- filename = 'dom.txt'
- with open(filename, 'a') as outf, open(filename) as inf:
- print(inf.readline())
- outf.write('asdfas\n')
- with open(filename, 'a') as outf, open(filename) as inf:
- print(inf.readline())
- outf.write('asdfas\n')
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д