2015-05-19 5 views
2

При загрузке видео с youtube с помощью youtube-dl все работает так, как должно, кроме одного. Если имя файла содержит неанглийские символы, такие как акцентированные e или арабские charachters и т. Д., Они завершаются пропущенными.Как заставить youtube-dl поддерживать символы без ASCII?

Ex: «Stromae - та празднике» будет загружен с именем файла «Stromae - та ЭЗПРД»

Пожалуйста, посоветуйте, какие изменения я должен сделать, чтобы поддержать такие charachters в имени файла.

+1

Что такое системное кодирование? что делает 'locale' вывод? –

+0

@PadraicCunningham Я думаю, что проблема, как я могу изменить ее на UTF8? –

+1

попробуйте этот первый 'экспорт LC_ALL = en_ZW.utf8' или что-то подходящее для вашей локали –

ответ

1

Никогда не использовал youtube-dl, я не могу сказать точно, но это может быть не youtube-dl, который удаляет символы без ascii. Вы заметите, их документация имеет опцию для удаления не-ASCII символов из имен файлов, хотя он не появляется, чтобы быть по умолчанию:

https://github.com/rg3/youtube-dl#filesystem-options

Это может быть, что ваша операционная система не позволяет не -ascii и удаляет их. Можете ли вы сохранить другие файлы с символами ascii?

+0

Я просто попробовал это на своем ноутбуке (ubuntu 15.04) и моем компьютере (Windows 8.1) , Оба они отлично работали, никаких проблем. Я уверен, что проблема не в программе, а на моем сервере (Ubuntu 14.04). Как вы думаете, ку Неужели это? –

+0

Не знаю - хотел бы я помочь там. По умолчанию Ubuntu 14 разрешает имена файлов без ascii. Я предполагаю, что это либо какая-то настройка на вашем сервере, либо, возможно, на вашем сервере используется версия Python, которая не согласуется с youtube-dl. – KCzar

+0

Я попытался загрузить снова на моем сервере как пользователь root, и он работает так, как должен, затем я попытался сохранить файл в системе с акцентированным e, используя php, файл сохраняет, но e пропущен, поэтому, возможно, что-то не так с apache Я полагаю. Что я могу сделать сейчас ? –