Форум сайта python.su
0
Python 3.4 Пытаюсь вставить необходимый мне текст на сайт из буфера в textarea. Использую tkinter и selenium.webdriver. Текст вставляется но, после вставки из буфера дальнейший код программы дальше не выполняется:
textsome = 'some txt' r = Tk() r.withdraw() r.clipboard_clear() r.clipboard_append(textsome) time.sleep(5) driver.find_element_by_xpath("//textarea[@class='text-check-main-textarea']").send_keys(Keys.CONTROL, 'v') r.mainloop() time.sleep(2) driver.find_element_by_xpath("//button[@class='btn-css red']").click()
Офлайн
61
Так а у вас после r.mainloop() и не будет ничо выполнятся
ЛОгика хромает немножко -
не смотря не то что подход в корне неправильный - добиться того что бы код работал - чуть чуть еще поднапрягитесь на мысли очередности действий и заметите где “незаметили”
Офлайн
0
Помощи от Вас конечно море
ну я так подозреваю, то, что мне нужно вставлять из буфера должно идти после присваивания tk()? но это ничего не дает.
Отредактировано DexterMorgan (Март 18, 2016 23:10:15)
Офлайн
61
Я с вами не согласен - я вам указал где ошибка
посмотрите примеры кода
https://ru.wikiversity.org/wiki/Курс_по_библиотеке_Tkinter_языка_Python
еще раз обратите внимание на mainloop и как минимум банально переведите это словосочетание
“Главный цикл”…
далее
google tkinter mainloop
И вы удивитесь как все просто
Офлайн
0
Да, я понимаю, что это выполнение главного цикла программы, и если я вставлю его в самый конец кода, то та переменная, которая должна быть скопирована в буфер, просто не копируется
Офлайн
4
Возможно, вам поможет эта тема.
Офлайн
0
ZerG
Я с вами не согласен - я вам указал где ошибкапосмотрите примеры кодаhttps://ru.wikiversity.org/wiki/Курс_по_библиотеке_Tkinter_языка_Pythonеще раз обратите внимание на mainloop и как минимум банально переведите это словосочетание“Главный цикл”…далееgoogle tkinter mainloopИ вы удивитесь как все просто
Офлайн
0
vanvanov
Возможно, вам поможет эта тема.
Офлайн
49
DexterMorgan
Задержки в tkinter ставятся без использования sleep. Это ломает логику выполнения программы.
Теперь поясните, что Вы хотите реализовать и я попробую Вам подсказать как это правильнее делать…
Офлайн
4
DexterMorgan,
начните с простого, не пытайтесь, чтобы все сразу получилось. Разберитесь в том, как работает tkinter. Например:
1) в программе с tkinter последним, что выполняется, должно быть root.mainloop(). После этого ничего выполняться не будет
2) tkinter не очень любит sleep. Почитайте про root.after. Разберетесь с основами, можете снова просмотреть код на ссылке - он, на самом деле, совсем не сложный.
Офлайн