Есть несколько способов загрузки файла из интернета при помощи Python. Одним из самых популярных способов является подключение к FTP серверу и скачивание файла. Этим мы и сейчас займёмся. Всё, что нам понадобится — стандартная установка Python. В неё включена библиотека ftplib, которой нам вполне хватит.
Давайте разбираться. Во-первых, нам надо подключиться к FTP серверу, так что необходимо передать URL сервера, логин и пароль. Если же Вы используете анонимный FTP сервер — то последние два аргумента можно опустить. Командаretrlines(“LIST”) выдаёт листинг папки. Командаcwd изменяет рабочую папку (“change working directory”), которую Вы используете для перехода в нужную для Вас папку. В следующей части показано как достаточно глупым способом получить имя файла. Вы можете использовать os.path.basename для тех же целей. Последняя часть показывает, собственно, как скачать файл. Обратите внимание, что файл открывается в режиме “wb” (двоичная запись). “8*1024″ — размер блоков для загрузки, хотя Python достаточно умён, чтобы выбрать подходящий размер.
Обратите внимание: Эта статья основана на документации Python для модуля ftplib и этот скрипт можно найти в папке с установленным Python: Tools/scripts/ftpmirror.py.
Попался в руки ноут, ну который совсем не хотел работать. Надо было сбросить пароль, который забыли 😉 , избавиться от winlock. Причем сделать простую переустановку отказались по ряду личных причин. Первый осмотр компьютера показал, что загружаться с него крайне не желательно. На помощь пришла Ubuntu и пакет chntpw. Для сброса пароля был записан liveCD Ubunt. Читать →
Поиски решения для адекватной работы compiz меня привели к Bumblebee. Проект Bumblebee нацелен на поддержку технологии NVIDIA Optimus на ноутбуках с операционными системами GNU/Linux. Используя Bumblebee вы можете дать команду видеокарте NVIDIA заняться процессом обработки изображения, которое потом будет выведено через карту Intel.
MyUnity – небольшая утилита позволяющая пользователям настроить различные компоненты Unity такие, как шрифты, темы, Dash, панель Unity и ещё многое другое.
В этом необычном уроке будем делать светящийся террариумсвоими руками с птицей внутри. Эта декоративная банка своими руками способна украсить совершенно любой интерьер, а не только детскую.
В операционной системе Linux помимо обычных задержек(sleep) и таймеров, реализованы таймеры высокого разрешения. Таймер и задержки высокого разрешения позволяет измерять временные промежутки с точностью до наносекунд, а так же позволяют приложения «засыпать» на непродолжительное время(в зависимости от конфигурации системы) соизмеримое с несколькими микросекундами.
//=============================================================== // Name : HiTimer.c // Author : D.Falko // Version : 1.0 // Description : High Resolution timer test //===============================================================
// iter*delay должно примерно равняться nsec, узнаем погрешность задержек printf("Number of iterations: %d timer value: %d nsecn", iter, delay); printf("Time elapsed: %ld nsecn", nsec);
return0; }
А теперь подробней о использованных компонентах.
Используемая структура времени определена в <sys/time.h> и выглядят следующим образом:
struct timespec { long tv_sec;/* секунды */ long tv_nsec;/* наносекунды */ };
Далее мы узнаем и выводим на экран точность(разрешение) системных часов, при помощи функции:
int clock_getres(clockid_t clk_id,struct timespec *res);
в структуру struct timespec *res записывается разрешения, указанных в clockid_t clk_id часов.
clockid_t clk_id может быть:
▪
CLOCK_REALTIME: часы реального времени, доступные всем процессам в системе. Часы измеряются в секундах и наносекундах с начала эпохи (то есть 00:00:00 1 января 1970 по Гринвичу). Точность 1/HZ секунд.
▪
CLOCK_MONOTONIC: время непрерывной работы ОС, доступное всем процессам. В Линукс оно измеряются в секундах и наносекундах после загрузки ОС. Точность 1/HZ с. Время в этих часах не может быть изменено каким-либо процессом, по этому рек