Skip to main content

urlpath-filereader - библиотека для чтения файлов из локальной файловой системы и URL-адресов

Project description

urlpath-filereader

Version: 1.2.0
Author: Маг Ильяс DOMA (MagIlyasDOMA)
Email: magilyas.doma.09@list.ru
GitHub: https://github.com/MagIlyasDOMA/urlpath-filereader


Описание

urlpath-filereader — это Python-библиотека для удобного чтения файлов как из локальной файловой системы, так и из URL-адресов. Библиотека автоматически определяет кодировку файлов и поддерживает широкий спектр режимов открытия файлов.

Установка

Установите пакет через pip:

pip install urlpath-filereader

Или добавьте в requirements.txt:

urlpath-filereader==1.2.0

Зависимости

  • requests
  • chardet>=2.0.0
  • pathlike-typing

Основные функции

detect_encoding(file_path)

Определяет кодировку файла с помощью chardet.

Параметры:

  • file_path (PathLike): путь к файлу

Возвращает:

  • str: предполагаемая кодировка файла

is_url(source)

Проверяет, является ли источник URL-адресом.

Параметры:

  • source (PathLike): путь или URL

Возвращает:

  • bool: True, если источник является валидным URL

read_file(source)

Читает содержимое файла или URL-адреса.

Параметры:

  • source (PathLike): путь к файлу или URL

Возвращает:

  • str: содержимое файла в виде строки

Исключения:

  • FileNotFoundError: если локальный файл не существует
  • requests.exceptions.RequestException: при ошибке HTTP-запроса

create_file_from_url(source, encoding)

Создаёт локальную копию файла из URL.

Параметры:

  • source (PathLike): URL-адрес
  • encoding (str): кодировка для сохранения

Возвращает:

  • str: путь к созданному файлу

open_plus(source, mode='r', ..., auto_detect_encoding=False)

Универсальная функция для открытия файлов и URL.

Параметры:

  • source (PathLike): путь к файлу или URL
  • mode (FileOpenMode): режим открытия файла (по умолчанию 'r')
  • auto_detect_encoding (bool): автоматически определять кодировку (по умолчанию False)

Остальные параметры соответствуют стандартной функции open()

Возвращает:

Файловый объект

Поддерживаемые режимы открытия файлов (FileOpenMode)

Библиотека поддерживает все стандартные режимы открытия файлов Python, включая:

  • 'r', 'w', 'a', 'x'
  • Комбинированные режимы: 'r+', 'w+', 'a+', 'x+'
  • Текстовые режимы: 'rt', 'wt', 'at', 'xt'
  • Устаревшие режимы: 'U', 'rU', и др.

Полный список доступен в коде библиотеки.

Примеры использования

Чтение локального файла

from urlpath_filereader import read_file

content = read_file('example.txt')
print(content)

Чтение файла из URL

from urlpath_filereader import read_file

url_content = read_file('https://example.com/file.txt')
print(url_content)

Определение кодировки файла

from urlpath_filereader import detect_encoding

encoding = detect_encoding('example.txt')
print(f'Кодировка файла: {encoding}')

Открытие файла с автоматическим определением кодировки

from urlpath_filereader import open_plus

with open_plus('example.txt', auto_detect_encoding=True) as f:
    content = f.read()

Создание локальной копии файла из URL

from urlpath_filereader import create_file_from_url

local_path = create_file_from_url('https://example.com/data.txt', 'utf-8')
print(f'Файл сохранён: {local_path}')

Обработка ошибок

  • При чтении несуществующего локального файла выбрасывается FileNotFoundError
  • При ошибках HTTP-запросов выбрасываются исключения из библиотеки requests
  • При проблемах с кодировкой могут возникать UnicodeDecodeError

Совместимость

  • Python: >=3.10
  • ОС: Независимая (Windows, Linux, macOS)

Лицензия

Проект распространяется под лицензией MIT. Подробности см. в файле LICENSE в репозитории.

Поддержка и обратная связь

По вопросам и предложениям обращайтесь:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

urlpath_filereader-1.2.0.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

urlpath_filereader-1.2.0-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file urlpath_filereader-1.2.0.tar.gz.

File metadata

  • Download URL: urlpath_filereader-1.2.0.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for urlpath_filereader-1.2.0.tar.gz
Algorithm Hash digest
SHA256 d0637ab0bb28e7d680b7b30a766f5bbbc1587472c3bac67560715d8b4202bdfa
MD5 a21ceb35860054c3635020a1c81fd566
BLAKE2b-256 b997653f4f63e462bb8eb79df6864fc4fffdf1fcf3544f0320c444934e59cfaa

See more details on using hashes here.

File details

Details for the file urlpath_filereader-1.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for urlpath_filereader-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bbcae5ae6ffdc624eae334b7aea74e97ba103c482b9badae2e20159ac898202b
MD5 2bc4c07b4261b295cd4f4ae8ca388073
BLAKE2b-256 bbb7a2da77c8312e22d8ecbfa26f97c41a1af975bb74bf4b06b266c9c0635704

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page