Python: Удаление файлов по маске.

Posted by Reason89 | Posted in

   Раньше часто нужно было удалять какие либо файлы по маске, да и сейчас есть необходимость. Скрипт работает как в *nix системах так и в windows системах, для windows функционал выше. Обходим стороной папку Windows, что бы не сделать ничего плохого и добавляем это творение в автозагрузку. Так же поставил возможность задержки по времени.
   Вообщем ничего особо сложного тут нет, но на первое время для практики самое то. Сидел с ним где то 4 дня, из них 3 ушло на то, чтоб разобраться с модулем _winreg. Пока обхожу стороной создание функций и ООП. Потому код и занимает столь большое количество строчек.
   П.С. Может кто либо ставил в blogger нормальную читалку для кода, пожалуйста посоветуйте что нибудь...

# -*- coding: utf-8 -*-
import glob, os, sys, time   # Импортируем необходимые модули
a, c, x, r = 10, "", 1, 0
t = 1                        # Установка таймаута в секундах; 5400 - 1,5 часа
ra = "restw"                 # Установка расширения, без точки
name = "*"                   # Установка имени файла; * - любое, ? - заменяет любой один символ
time.sleep(t)                # Таймаут
if os.name == "posix":       # Для nix систем
   while  x < a:             # Каждый новый цикл, опускает поиск на директорию ниже
      b = "/*"
      put = "."+c+"/"+name+"."+ra     # Маска
      llist = glob.glob(put)          # Осуществляем поиск файлов по маске
      c = c+b
      x = x+1
      l = len(llist)
      while r < l:
         os.remove(llist[0])          # Удаляем файл
         del llist[0]                 # и информацию в списке о нем
         l = len(llist)
elif os.name == "nt":                 # Для windows систем
   import _winreg, shutil             # Импортируем модули для работы с реестром и файлами
   reg = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, r"SOFTWARE\Microsoft\Windows   \CurrentVersion\Run", 0, _winreg.KEY_ALL_ACCESS)
   _winreg.SetValueEx(reg, "del", 0, _winreg.REG_SZ, r"C:\WINDOWS\system32\del.py") 
   shutil.copy(sys.argv[0], u"C:\WINDOWS\system32")  # Копируем запущеный файл, в нужную директорию
   while  x < a:                      # Каждый новый цикл, опускает поиск на директорию ниже
      b= "*/"
      putc = "C:/"+c+"/"+name+"."+ra  # Маска для диска С
      putd = "D:/"+c+"/"+name+"."+ra  # Маска для диска D
      clist = glob.glob(putc)         # Поиск по диску C
      dlist = glob.glob(putd)         # Поиск по диску D
      c = c+b
      x = x+1
      cl = len(clist)
      dl = len(dlist)
      if r < cl:
         wc = clist[0].find('windows') # Обходим каталог Windows
         if wc == -1:
            os.remove(clist[0])        # Если файл находится в папке Windows, то удаляем его
            del clist[0]               # и информацию о нем
         else:
            del clist[0]               # Иначе удаляем только информацию о нем
         cl = len(clist)
      while r < dl:                    # Поиск и удаление по диску D
         os.remove(dlist[0])
         del dlist[0]
         dl = len(dlist)

Литература по Python.

Posted by Reason89 | Posted in

   Решил один топик уделить литературе по Python, прочитал и пролистал не мало книг по этому языку программирования. Особо интересными и путными оказались не многие.
   1) Лутц - Изучаем Python. 3-е издание. - Всё очень понятно, разжевали как только могли. Иногда даже через чур. Потому как иногда простейшее растянули на несколько глав. Но дают только азы, то есть весь функционал языка не расскрыт.
   2) Г. Россум. Язык программирования Python — Книга от автора этого языка, если иметь хоть какие то познания, то все улавливается без особых проблем. Все кратко и понятно, описано огромное количество функций. Все что создал, то и описал вообщем то.
   3) Р. Сузи. Язык программирования Python. С виду это больше напоминает какой либо классический учебник. Во всяком случае все курсы по изучению этого языка, что я видел основаны на этом учебнике.
   4) Г. Джонс - Python в системном администрировании. Это уже дополнение к обычному учебнику, уже по названию видно, что раскрывает книга. Описания огромного количества модулей, с примерами и.т.д. Прочитав эту книгу, можно будет уже без особых проблем написать какое либо полезное приложение, а не какой нибудь текстовый редактор, с записью результата в файл.
   В планах реализовать несколько программ, так сказать для собственных нужд и практики. Разобраться с разработкой графического интерфейса, т..е. поближе познакомиться с модулем Tkinter.  И поиздеваться над py2exe и PyInstaller, посмотреть какие плюсы и минусы у каждого из них.

Заикания звука в Ubuntu.

Posted by Reason89 | Posted in

   При прослушивании музыки в Ubuntu со временем появились проблемы. Песня постоянно заикалась, с периодичностью раз в 1-2 минуты. Раздражает очень сильно, приходилось выключать проигрыватель, чтоб окончательно не сводить себя с ума. По началу грешил на Audacious, но при запуске других проигрывателей проблема не исчезала. Закрывал различные приложения, пытаясь понять в чем проблема. Но как ни странно, когда я пытался уловить корень зла, заикания прекращались.
   Однажды задумавшись над чем то, тупо смотря в экран и слушая музыку (у меня такое бывает) увидел в conky, что во время заиканий ЦП на мгновение загружается до 100%. Затем в этом же conky увидел, что виной этому phy0 процесс.
   С первого же запроса в гугле увидел, что это как то связанно с Wi-Fi. При более детальном рассмотрении понял, что этот процесс полностью отвечает за беспроводные сети. Попытался найти чтоб одновременно с запуском ОС не запускался поиск беспроводных сете, но так и не нашел. Благо на ноутбуках есть кнопочка слева, которая отключает адаптер.
   Проблема исчезла, но с ней появилась новая. Вместе с адаптером Wi-Fi, отключился адаптер блютуз. А при необходимости воспользоваться им, придется сначала физически включить оба адаптера, а затем перезагрузить компьютер.

Python 2

Posted by Reason89 | Posted in

   Из-за ряда проблем, возникших при сbовместимости версий 3.1 и 2.6 Python, находящихся в системе, решил перейти с изучения третьей версии на вторую. Иначе ряд программ в Ubuntu вовсе отказывается запускаться, ссылаясь на директорию с Python. Да и как сказал alpha_Qu4z4r , 2 версия на много больше распространена чем третья. Плюс огромное количество литературы. Кстати на счет литературы, теперь вместо Саммерфилда рабочей книгой стал Лутц «Изучаем Python вместе» 3-е издание.
   Прочитал чуть более 100 страниц, существенных различий пока не увидел, только не большие изменения в синтаксисе некоторых команд.

Huawei E1550

Posted by Reason89 | Posted in ,

   Приобрел 3G модем от MTS (Huawei E1550), так как лето провожу обычно на даче и доступа к интернету тут нет.
   Первоначально при проверке модема в Уфе, все работало на ура. Приличная скорость, удобная программа для работы с модемом. С возможностями обычного телефона (звонки, отправка сообщений, телефонный справочник). Плюс удобная вкладка для ведения статистики.
Но стоило приехать с учебы домой, как скорость моментально упала до 36кб/с. Тот же Dial-Up в принципе. Ожидал я худшего, но не настолько. Хотя чего стоило ожидать, 3G сети еще не дошли до маленьких городков. Весь трафик идет через GPRS. Потому, если встает необходимость скачать, что либо массивное, то приходится ехать с дачи к себе на квартиру и подключаться к скоростному интернету.
   Далее, постоянно куда то уходят средства со счета. То есть при подключенном пакете в 200Мб, за который и так все уплачено. Периодически приходится бегать до терминала и класть деньги, т.к. этот чудо с отрицательным балансом работать отказывается.
   Еще один минус, с каждым новым месяцем неиспользованный трафик обнуляется, и подключается новый минимальный пакет на 200Мб. То есть например подключу я 30 числа новый пакет на 200Мб, из-за того что мне срочно нужно будет выйти в сеть, а 1 числа следующего месяца оператор мне их обнуляет. И Подключает новый на столько же. Но за отдельную плату. Загоняя сим карту в минуса. При попытке сменить тарифный план, приходят сообщения о том, что такие операции не поддерживаются.
   В Ubuntu модем сразу не заработал, но в этом никто и не сомневался. На сколько мне известно, единственный оператор который на данный момент предоставляет драйвера для Ubuntu и других Linux систем вместе со своими модемами, это Мегафон. Поискав в интернете способы решения увидел масштабные темы, там чего только не написали. Сначала даже вроде как испугался. Потом решил все делать по шагам. Для начала решил поставить пакет usb_modeswitch. После этого модем моментально определился в системе. Зайдя под windows и переписав все настройки, вбил их в ubuntu, после чего всплыло окно «MTS по умолчанию было установлено» Программы для ведения статистики тут нет, и потому сидеть в неведении слегка не удобно плюс скорость интернета по меньше. Но это лучше, чем вовсе без интернета.

Клавиатура Qumo

Posted by Reason89 | Posted in

   Подарили сегодня клавиатуру Qumo. Сейчас печатаю на ней, так сказать для проверки. Слегка не удобно, но это всегда так, даже когда беру в руки чужую мышку. Или пересаживаюсь с ноутбука на домашний компьютер.
   Еще учась в школе и посмотрев какую то из серий Хакеры, или какой то другой фильм. Увидел как парни весело подбегают к терминалам, достают из кармана силиконовые клавиатуры. Затем одним движением руки разматывают их на столе и начинают творить свои темные дела. Тогда я и загорелся приобрести, что то подобное.
   Скручивается это творение в трубку высотой сантиметров 10 и в диаметре 4-5 сантиметра. В комплекте идет шнур mini usb, как раз нужен был, так как я свой где то оставил. Плюс переходник на ps/2, на нынешних компьютерах такие входы редкость, но за отсутствием свободного usb разъема, всегда пригодится. Абсолютно бесшумное нажатие кнопок с одной стороны родители бывает и ворчат, когда я долго работаю по ночам и стучу по кнопкам, а с другой благодаря мягкому нажатию не всегда и понимаешь, что нажал на кнопку. И если бы не разъем для шнура, то она без проблем бы и работала и под водой.
   Из минусов можно выделить то, что постоянно липнет пыль и клеится различный мусор к задней поверхности. Плюс кнопки не совсем внушают доверия, плюс на упаковке написано, что каждая выдержит 1000000 нажатий.
   Проверил ее на 3 ОС, но Windows со сборкой устанавливались дрова в течении 10 минут, за это время "Мастер нового оборудования" раз 10 мне предложил выбрать, что делать дальше. На чистой windows установка прошла практически не заметно, за что я и отказался от использования различного рода сборок. А Ubuntu восприняла клавиатуру как должное, и ни сказав ни слова принялась за работу.
   Теперь главное определиться, для чего использовать этот подарок. И найти более подходящую для него тару, в заводском пластиковом стаканчике её носить не особо красиво.
   П.С. В последнее время какой то дотошный я стал в выборе техники. Прежде чем, что то купить перечитаю все статьи по данной тематике в интернете и отзывы. Точно так же и с вещами, что мне дарят.