Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » GUI
  • » PyQt4 прогрессбар для процесса скачивания файла. [RSS Feed]

#1 Март 9, 2011 18:03:39

ksk-
От:
Зарегистрирован: 2010-05-06
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

PyQt4 прогрессбар для процесса скачивания файла.

Как прикрутить прогрессбар к процессу скачивания файла?



Офлайн

#2 Март 9, 2011 18:43:52

Studentik
От:
Зарегистрирован: 2009-12-26
Сообщения: 99
Репутация: +  0  -
Профиль   Отправить e-mail  

PyQt4 прогрессбар для процесса скачивания файла.

выяснить полный размер файла, скачивать кусочками, после каждого кусочка сдвигать прогрессбар



Офлайн

#3 Март 9, 2011 19:38:32

ksk-
От:
Зарегистрирован: 2010-05-06
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

PyQt4 прогрессбар для процесса скачивания файла.

Studentik
выяснить полный размер файла, скачивать кусочками, после каждого кусочка сдвигать прогрессбар
Это-то понятно. Файл скачивается у меня о тдельном потоке, дабы GUI не замораживался во время загрузки.

class DownloadThread(QtCore.QThread):
def __init__(self, obj):
QtCore.QThread.__init__(self)
self.obj = obj

def run(self):
# Не могу понять что надо тут писать, чтобы обновлялся прогрессбар??? (или может писать не тут надо???)

def __del__(self):
self.exiting = True
self.finished()
Что касаемо скачивания файла, то как я понял надо использовать функцию urllib.urlretrieve. Но я не знаю, как это сделать. Подскажите как???

З.Ы. Может я, конечно, жестко туплю и спрашиваю элементарные вещи, но что-то я уже совсем мозг себе сломал в попытках разобраться.



Отредактировано (Март 9, 2011 19:43:53)

Офлайн

#4 Март 9, 2011 19:48:15

truporez
От:
Зарегистрирован: 2009-05-08
Сообщения: 266
Репутация: +  6  -
Профиль   Адрес электронной почты  

PyQt4 прогрессбар для процесса скачивания файла.

при создании QThread подписываете его на сигнал.

QObject.connect(download_thread, SIGNAL('setValue(int)'), self.progressbar, SLOT('setValue(int)'))
а потом в методе run эмитим его

self.emit(SIGNAL('setValue(int)'), bytes_downloaded)



Офлайн

#5 Март 9, 2011 23:14:20

ksk-
От:
Зарегистрирован: 2010-05-06
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

PyQt4 прогрессбар для процесса скачивания файла.

А можно ли при помощи функции “urllib.urlretrieve” скачивать файлы через прокси??? До этого качал с помощью urllib2. Делал так:

proxy_handler = urllib2.ProxyHandler(proxy)
opener.add_handler(proxy_handler)
urllib2.install_opener(opener)



Отредактировано (Март 9, 2011 23:14:50)

Офлайн

  • Начало
  • » GUI
  • » PyQt4 прогрессбар для процесса скачивания файла.[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version