категории | RSS

Модуль clipboard.Работа с буфером обмена
Знатокам в питоне будет неинтересно. Возможно будет интересно глянуть начинающим программистам.Бывало раньше интересовал подобный вопрос. Вот решил накатать такую статейку. Пусть будет до кучи Автор статьи я(zaterehniy). Работа довольно таки простая, всего две команды одна команда записывает информацию в буфер, другая записанную информацию достает из него. Конечно же чтобы наше приложение на питоне могло работать с буфером нужно импортировать сам модуль.

import clipboard

Для записи данных в буфер служит следуюший метод -
clipboard.Set() (здесь стоит обратить внимание что Set писать следует именно с большой буквы! Если напишем с маленькой- set, то консоль выдаст ошибку),в скобках пишем любой текст,который мы поместим в буфер,не забываем про ковычки которые указывают питону что внутри них просто текст.
clipboard.Set('luboi tekst')

Для того чтобы достать данные из буфера пишем следующую команду(достать просто командой get не получится).
clipboard.Get()


a = clipboard.Get()
print ' module clipboard= 'a
module clipboard = luboi tekst


Источник новости:

Zaterehniy
2010-03-22T11:07:16Z

Здесь находятся
всего 0. За сутки здесь было 0 человек

Комментарии 9

#9   Lex17021989777    

я только не могу понять, почему когда я «вытягиваю» из буфера содержимое, то, если текст имеет кирилистические символы - метод Get возвращает юникод, а если в буфере только латиница, то тип возвращенной строки 'str'. как-то криво модуль написан ИМХО, да и лаги после многоразовой работы с модулем (после 2-й, 3-й записи в буфер модуль не хочет вытягивать содержимое либо вообще вылетает (по крайней мере в консоли) лажа...
-------------
Добавлено в 15.11: Ksench,
ничего подобного! (по крайней мере у меня) при попытке записать в буфер юникод, метод возвращает число 1, но метод Get не хочет «вытягивать» после такой записи строку и консоль слетает (я из файла не запускал, так что не знаю слетает вне консоли или нет)


0 ответить

#9   muk77    

Всем Привет! У меня вот какой вопрос, извиняюсь, если он не в тему, как то, что написал в самом питоне(например, какой-нибудь сайтик), как его выложить от туда в интернет? За ранее спасибо.


0 ответить

#9   Ksench    

При clipboard.Set(text)
text должен быть (u"") а не ("")


* редактировал(а) Ksench 00:45 1 апр 2010

0 ответить

#9   nabludayuzhij    

на н73 надо последнюю версию этого модуля. там файл с буфером лежит в другом месте =)


0 ответить

#9   Zaterehniy    

smile а просто командой get? Ну ещё можно сделать копирование всего текста в поле модулем appuifw. совместив выделить всё и копировать.


0 ответить

#9   WyTHuK    

Почему просто коммандой Get не получится ?
import clipboard
print clipboard.Get()
Всё прекрасно получается (=


0 ответить

#9   sawka6600    

Это мне только кажется, или статья на самом деле - расширенная документация по модулю?..
Кстати, может у кого есть доки по tkinter/tcl на русском? ;)


0 ответить

#9   Zaterehniy    

Слышал что на 9.1 возникают проблемы с этим. Даже не знаю с чем это связано


0 ответить

#9   Deftrue    

У меня на н73 это не работает.


0 ответить

Яндекс.Метрика