Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Кирилица в путях на линуксе / 14 сообщений из 14, страница 1 из 1
07.06.2013, 12:42
    #38290033
LamerO4ek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
Всем здравствуйте.

Есть такая проблема на сервере работает скрип, вообщем в определенный момент он из массива вытягивает элементы и создает папки называя их этим элементом, так вот бывает что среди них есть киррилица, что сбивает весь скрипт с ошибкой в кодировке

UnicodeEncodeError: 'ascii' codec can't encode characters in position 34-36: ordinal not in range(128)

пробывал разные варианты и так и сяк.... может кто подскажет вариантик какой


сошелся уже на том что если попадается элемент с киррилицой, то его пропускать но не знаю как это реализовать , подскажите пожалуйста.
...
Рейтинг: 0 / 0
07.06.2013, 13:02
    #38290081
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
LamerO4ekпробывал разные варианты и так и сяк....
Ну так показывайте, чего пробовали.

LamerO4ekсошелся уже на том что если попадается элемент с киррилицой, то его пропускатьПочему бы не сделать транслит?


В линуксе (если это действительно дистрибутив на базе Linux, а не FreeBSD) сейчас обычно используется utf-8. Озвучте реальные кодировки кириллицы в файловой системе и в текстовом файле, а там поглядим какое преобразование требуется.
...
Рейтинг: 0 / 0
07.06.2013, 13:03
    #38290083
GrammarNazi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
скрип; киррилица; киррилицой; пробывал

*FACEPALM* Про запятые, вопросительные и иные знаки молчу.
PS. Угадай по ошибке, на каком ЯП скрипит скрип...
...
Рейтинг: 0 / 0
07.06.2013, 13:26
    #38290153
вввв
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
GrammarNaziPS. Угадай по ошибке, на каком ЯП скрипит скрип...
JS?
...
Рейтинг: 0 / 0
07.06.2013, 14:04
    #38290247
LamerO4ek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
GrammarNaziскрип; киррилица; киррилицой; пробывал

*FACEPALM* Про запятые, вопросительные и иные знаки молчу.
PS. Угадай по ошибке, на каком ЯП скрипит скрип...

Уже записался на курсы русского языка и литературы

Скрип большой выбивает ошибку в этой функции

Код: python
1.
2.
3.
4.
5.
6.
7.
def print_results(results, name, goal_names, profile_id):
    
    dir = os.path.join(config.logs, name, date_)  # когда здесь в name появляется кириллица 
    
    if not os.path.isdir(dir): # то тут происходит фейл
        os.makedirs(dir)
    .................................................................



пробывал делать name.encode('utf-8') в функии где он находится, нет эффекта


транслит на подходит поскольку name это домены
...
Рейтинг: 0 / 0
07.06.2013, 14:16
    #38290273
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
LamerO4ekтранслит на подходит поскольку name это доменыДля доменов есть свой транслит - пуникод называется.
...
Рейтинг: 0 / 0
07.06.2013, 14:36
    #38290324
LamerO4ek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
vkleLamerO4ekтранслит на подходит поскольку name это доменыДля доменов есть свой транслит - пуникод называется.
а как его использование в коде выглядит?
...
Рейтинг: 0 / 0
07.06.2013, 14:52
    #38290372
BadMF
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
LamerO4ekvkleпропущено...
Для доменов есть свой транслит - пуникод называется.
а как его использование в коде выглядит?
на питоне я так понимаю? быстрый поиск выдал это:
https://gist.github.com/bnoordhuis/1035947
...
Рейтинг: 0 / 0
07.06.2013, 14:52
    #38290374
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
LamerO4ekа как его использование в коде выглядит?На PHP так как то:
Код: php
1.
2.
3.
4.
5.
6.
    include_once('idna_convert.class.php');
    $i = new idna_convert();
//....
        $p = $i->encode($n);
//.....
        $n = $i->decode($p);


На выходе получается закодированная в латиницу последовательность или раскодированная в национальный алфавит соответственно.

У Вас, похоже, код на питоне. Наверняка и для него есть библиотека или модуль.
...
Рейтинг: 0 / 0
07.06.2013, 16:14
    #38290596
LamerO4ek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
да код в питоне, пробовал punycode_encode() не помогает, может кто сталкивался?
...
Рейтинг: 0 / 0
07.06.2013, 16:30
    #38290650
LamerO4ek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
LamerO4ekда код в питоне, пробовал punycode_encode() не помогает, может кто сталкивался?

если сделать так:
Код: python
1.
2.
3.
4.
5.
6.
def print_results(results, name, goal_names, profile_id):
    
    dir = os.path.join(config.logs, name, date_)  # когда здесь в name появляется кириллица 
    dir = punycode_encode(dir) # пуникод 
    if not os.path.isdir(dir): # то тут происходит фейл
        os.makedirs(dir)



то нарушается структура папок и они все сливаются в одно название, вместо создания друг в друге.
...
Рейтинг: 0 / 0
07.06.2013, 16:32
    #38290653
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
LamerO4ekpunycode_encode() не помогаетЧто поступает на вход, что выдает на выходе?
...
Рейтинг: 0 / 0
07.06.2013, 16:53
    #38290706
LamerO4ek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
vkleLamerO4ekpunycode_encode() не помогаетЧто поступает на вход, что выдает на выходе?
(это-шанс.рф)папка - (2013-06-06)папка - (файлы csv и txt) - так у меня в винде локально все хороше было и до этого
доменов около 300 на этом выбивало когда на сервера запускал там только 2-3 таких из общей массы,
сейчас получается с этим punycode_encode()
(-) папка - (2013-06-06-w90bv2apb2g3b8byhzjqk) - (файлы csv и txt) на сервере не запускал ночью когда все акшены пойдут он отработает будет видно
...
Рейтинг: 0 / 0
07.06.2013, 19:17
    #38290943
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кирилица в путях на линуксе
Не понял, Вы путь целиком чтоль скармливаете конвертилке? Не думаю что она это умеет. Ограничивайте только кириллический домен. По крайней мере, преобразование в пуникод для доменных имен реализовано, если правильно понимаю эту кухню.

В остальном же до сих пор не ясно, почему нельзя использовать нативную кирилицу, что за проблемы. Информацию об используемых кодировках и ОС/ФС Вы почему то тщательно скрываете.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Кирилица в путях на линуксе / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]