Найти - Пользователи
Полная версия: После вставки из буфера дальнейший код программы не выполняется
Начало » Python для новичков » После вставки из буфера дальнейший код программы не выполняется
1 2 3
DexterMorgan
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()
ZerG
Так а у вас после r.mainloop() и не будет ничо выполнятся
ЛОгика хромает немножко - не смотря не то что подход в корне неправильный - добиться того что бы код работал - чуть чуть еще поднапрягитесь на мысли очередности действий и заметите где “незаметили”
DexterMorgan
Помощи от Вас конечно море ну я так подозреваю, то, что мне нужно вставлять из буфера должно идти после присваивания tk()? но это ничего не дает.
ZerG
Я с вами не согласен - я вам указал где ошибка
посмотрите примеры кода
https://ru.wikiversity.org/wiki/Курс_по_библиотеке_Tkinter_языка_Python

еще раз обратите внимание на mainloop и как минимум банально переведите это словосочетание
“Главный цикл”…

далее

google tkinter mainloop

И вы удивитесь как все просто
DexterMorgan
Да, я понимаю, что это выполнение главного цикла программы, и если я вставлю его в самый конец кода, то та переменная, которая должна быть скопирована в буфер, просто не копируется
vanvanov
Возможно, вам поможет эта тема.
DexterMorgan
ZerG
Я с вами не согласен - я вам указал где ошибкапосмотрите примеры кодаhttps://ru.wikiversity.org/wiki/Курс_по_библиотеке_Tkinter_языка_Pythonеще раз обратите внимание на mainloop и как минимум банально переведите это словосочетание“Главный цикл”…далееgoogle tkinter mainloopИ вы удивитесь как все просто

Да, я понимаю, что это выполнение главного цикла программы, и если я вставлю его в самый конец кода, то та переменная, которая должна быть скопирована в буфер, просто не копируется
DexterMorgan
vanvanov
Возможно, вам поможет эта тема.

Спасибо, за помощь, но мне как полному чайнику в этом не очень помогло
4kpt_IV
DexterMorgan
Задержки в tkinter ставятся без использования sleep. Это ломает логику выполнения программы.

Теперь поясните, что Вы хотите реализовать и я попробую Вам подсказать как это правильнее делать…
vanvanov
DexterMorgan,
начните с простого, не пытайтесь, чтобы все сразу получилось. Разберитесь в том, как работает tkinter. Например:
1) в программе с tkinter последним, что выполняется, должно быть root.mainloop(). После этого ничего выполняться не будет
2) tkinter не очень любит sleep. Почитайте про root.after. Разберетесь с основами, можете снова просмотреть код на ссылке - он, на самом деле, совсем не сложный.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB