Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 10, 2014 22:33:50

Mazay_Ka
Зарегистрирован: 2013-04-03
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

Кодировочки в питоне

Привет уважаемые знатоки!!
Такая проблемка, ввиде примера

import os
import config
word = 'Кодировачка'
word = word.encode('base64')
dir = os.path.join(config.logs, word)
print word.encode('base64')
os.makedirs(dir)

результат

WindowsError: The filename, directory name, or volume label syntax is incorrect


интересует именно base64 скрипт будет вешаться на крон и создавать папка на серваке и разные стремненькие символы не должны проскочить

Помогите пожалуйста.

Спасибо.

Офлайн

#2 Апрель 10, 2014 23:30:40

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Кодировочки в питоне

Вам же ясно написано что ошибка связано с именем директории которую вы пытаетесь создать. Что у вас за модуль config мы понятия не имеем, поэтому показывайте что у вас хранится в переменной dir



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Апрель 11, 2014 00:06:45

Mazay_Ka
Зарегистрирован: 2013-04-03
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

Кодировочки в питоне

JOHN_16
Вам же ясно написано что ошибка связано с именем директории которую вы пытаетесь создать. Что у вас за модуль config мы понятия не имеем, поэтому показывайте что у вас хранится в переменной dir
# -*- coding: utf-8 -*-
import os
import config
word = 'Кодировачка'
word = word.encode('base64')
dir = os.path.join('d:/data/', word)
print word.encode('base64')#.replace('/','')
os.makedirs(dir)

такой вариант тоже не работает, в config просто путь, ошибка

WindowsError: The filename, directory name, or volume label syntax is incorrect: ‘ddata/0JrQvtC00LjRgNC+0LLQsNGH0LrQsA==\n’

Отредактировано Mazay_Ka (Апрель 11, 2014 00:10:32)

Офлайн

#4 Апрель 11, 2014 01:16:07

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Кодировочки в питоне

Mazay_Ka
мда..а вы ручками то пробовали создать папку с таким именем? а если бы попробовали то у вас также бы ничего не вышло - нельзя использовать символы \ и ряд других при создании имен файлов (а папка это тоже файл) в ос Windows. Да и к чему вам символ переноса строки в имени файла? Как вы себе это представляете? Да и еще вопрос откуда он вообще там взялся.
Делайте так:

dir = os.path.join('d:/data/', word).rstrip()



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version