Можно использовать в проекте только стандартные либы(библиотека файлов).
Зависит от задачи и требований.
Пункт 1. Например, скачать файл из Интернет, используя urllib. (документация здесь Urllib). Чтобы протестировать её наличие, можно ввести код применяющий функции из неё. (Пример 1)
Пример 1. Позволяет скачать и сохранить файл из Интернет:
#Подключение библиотек import urllib from urllib.request import urlopen #функция скачивания файла #url - адрес #numf - имя для сохранения скачиваемого файла def addinFile(url, i): urllib.request.urlretrieve(url, i+".html") #вызов ф-ции url = "http://"+"Адрес где лежит файл"+"/сам файл" numf="download" addinFile(url,numf)
Но чаще программные проекты требуют расширения возможностей программирования. А значит и подключения иных библиотек.
Если библиотека не найдена, то появится сообщение об ошибке. (Рисунок 1)
Рисунок 1. Сообщение об ошибке, отсутствует библиотека Chilkat.
Достойна внимания эта строка - ImportError: No module named 'Название библиотеки'.
По обыкновению, документация о процессе установки описана в Readme или Install_Instruction, присутствующих в папке с файлами библиотеки. Встречаются следующие два вида установки:
а) Иногда можно просто скачать и скопировать файлы либы в папку Python/site_package
Для примера, была взята либа Chilkat Crypt, позволяющая выполнять операции шифрования.(конечно, Chilkat - это большой набор библиотек)
Проходит это так:
- Скачать пакет Chilkat.
- Сохранить и распаковать в Python/site_package.
- Проверить работоспособность. (Пример 2)
- Сверить результат: 7d5df2f48eaf69228e88b9d6714c22cc09d3ed24
Пример2. Позволяет скачать и сохранить файл из Интернет:
#Подключение библиотек import sys import chilkat #Подключение модуля шифрования crypt = chilkat.CkCrypt2() # Версия библиотеки триальна, действует 30 дней success = crypt.UnlockComponent("30-day trial") if (success != True): print(crypt.lastErrorText()) sys.exit() #Текст с которого берется хэш content = "Knock Knock, Trick or Treat?" #Эта же строка в hex crypt.put_EncodingMode("hex") #Заведение хэша SHA-1 crypt.put_HashAlgorithm("sha-1") hashStr = crypt.hashStringENC(content) print(hashStr)
б) В некоторых случаях, после распаковки и копирования либы, требуется выполнить команду в cmd:
Такое потребуется, чтобы установить (шикарный) пакет xlrd, позволяющий читать данные из Microsoft Excel файлов.
python setup.py install
- Скачать пакет xlrd. Потребуется найти на сайте файл расширения tar - распаковывается архиватором. (Рисунок 2)
- Сохранить и распаковать в Python/site_package.
- Произвести установку, находясь в папке с библиотекой. (Рисунок 3)
- Проверить работу подключенной либы. (Пример 3)
Рисунок 3. Консоль Win7. Список файлов в распакованном архиве и установка либы.
Пример 3. Позволяет открыть таблицу, найти столбец IP и вывести присутствующие элементы.
Главный main-файл. Для запуска.
import xlrd #функция в отдельном файле, лежит там же где и main проги import procFile def main(): #Открыть xls nametable="test.xls" workbook = xlrd.open_workbook(nametable) #Выбрать страницу в таблице namepage="2014" worksheet = workbook.sheet_by_name(namepage) #Запуск функции по выгрузке и обработке данных procFile.searchIPinFile(worksheet) main()
procFile - сама функция в отдельном файле procFile.py
import xlrd def searchIPinFile(worksheet): num_rows = worksheet.nrows - 1 num_cells = worksheet.ncols - 1 curr_row = -1 i=0 #Проход по строкам while curr_row < num_rows: curr_row += 1 row = worksheet.row(curr_row) curr_cell = -1 while curr_cell < num_cells: i=i+1 curr_cell += 1 cell_type = worksheet.cell_type(curr_row, curr_cell) cell_value = worksheet.cell_value(curr_row, curr_cell) if cell_value=="IP": while curr_row < num_rows: curr_row += 1 row = worksheet.row(curr_row) cell_value2 = worksheet.cell_value(curr_row, curr_cell) #Вывод значения ячейки if cell_value2!="": print ('Row:', cell_value2) else: curr_row += 1
Послесловие. "Грязный хак" по продолжению использования Chilkat по истечении 30 дней. Известный способ со времен первых версий Каспера: Перевод системного времени назад.