 |
|
Скрипт скачивания файла с интернета на Python
Доброго времени суток. Скрипт на Python, который скачивает лечащую утилиту от др.веб. Не могу понять почему при проверке выдаёт ошибку синтаксиса.
P.S. Python обновил до 3.3.0
Код:
import ftplib
import time
import shutil
import os
def handleDownload(block):
global downloaded
dwn_file.write(block)
downloaded = downloaded + len(block)
progress = float(downloaded) / size * 100
print '\rDownloading file... | %.2f Mb | %.1f %%' % (downloaded/1024.0/1024, progress),
server = 'ftp.drweb.com'
dir_to_copy = r'\\tools\DrWeb'
try:
ftp = ftplib.FTP(server)
ftp.login()
print 'Connected to FTP', server
except:
print 'Failed to connect to FTP', server
print 'Exit from script!'
exit()
ftp.cwd('pub/drweb/cureit')
file_list = ftp.nlst()
ident_part = time.strftime('%Y', time.localtime())
filter_list = [i for i in file_list if i[-4:] != '.exe' and i.find(ident_part) == 0]
filter_list.sort(reverse=True)
foldername = filter_list[0]
ftp.cwd(foldername)
file_list = ftp.nlst()
filename = file_list[0]
size = ftp.size(filename)
downloaded = 0
try:
print 'Filename:', filename
print 'Filesize: %.2f Mb' % (size/1024.0/1024)
print 'Starting download:', time.strftime('%H:%M:%S', time.localtime())
dwn_file = open(filename, 'wb')
ftp.retrbinary('RETR ' + filename, handleDownload)
print 'Download complete: ', time.strftime('%H:%M:%S', time.localtime())
dwn_file.close()
time.sleep(2)
new_name = '\CureIt-' + foldername[:8] + '.exe'
shutil.move(os.path.abspath(filename), dir_to_copy + new_name)
except:
print 'Error download file...'
ftp.quit()
|
функция печати имеет вид -> print ('какой то текст')
Обратить внимание на скобки.
Дома могу попробовать посмотреть скрипт в действии.
---
Upd:
Проверил дома, все работает. (На работе прокси-сервер)
Т.ч. только конструкцию надо print поправить.
|
большое спасибо!
а что такой срипт через прокси не будет работать?
|
n_i_x, неа. Ты переменным server указываешь прямой адрес. Я нашел несколько адресов раз два три
В которых есть примеры работы с прокси. Единственное что, они на английском и смотрел я их поверхностно.
Т.е. посидеть, поковырять денек и все должно получиться.
Чтобы легче было ловить ошибки, возьми среду разработки.
Свободная и достаточным функционалом: PyScripter.
В ней вполне можно заниматься отладкой. (Я пару-тройку недель только изучаю питон. Час назад получил первый базово-рабочий скрипт на 200 строк.)
|
Время: 19:19.
© OSzone.net 2001-