Борьба с нехорошими символами в именах файлов

tonchikp
Дата: 25.07.2017 08:24:57
Уважаемые форумчане! Требуется ваша помощь!

Хочу разобраться с файловым хранилищем, удалить дубликаты файлов. Написал программу обходящую дерево директорий. Застрял на этапе вычисления хэшей, дело в том, что имена файлов содержат не только алфавитные символы и цифры, а также пробелы и спецсимволы. Сначала Python останавливался на первом же проблемном файле, позже я дописал try / except, и теперь он доходит до конца, пропуская проблемные файлы, но меня это не устраивает!

Язык: Python 3

#! /usr/bin/env python3

import subprocess

try:
    hash = subprocess.check_output('md5sum -- "{}"'.format(file), universal_newlines=True, shell=True)[:32]

except Exception:
    print('Проблемный файл {}'.format(file))


С hashlib пока не получается, проблем много создаёт, поэтому пока пришлось воспользоваться стандартной утилитой md5sum. Может подскажете заодно как решить проблему с применением hashlib.
Roman Mejtes
Дата: 25.07.2017 16:34:57
tonchikp,
просто оставлю это здесь
https://docs.python.org/3/library/hashlib.html
tonchikp
Дата: 26.07.2017 19:49:01
Roman Mejtes,
Хорошо, спасибо