проблема со сборкой из исходников в mobi

0 views
Skip to first unread message

Ivan Kokorev

unread,
Jul 30, 2013, 4:46:23 PM7/30/13
to Russian-Arms...@googlegroups.com
Склонировал репозиторий с гитхаба, собираю для киндала книжку, не собирается - валится вот с таким вот выхлопом 

Language not specified
Creator not specified
Building file list...
Traceback (most recent call last):
  File "/usr/bin/ebook-convert", line 19, in <module>
    sys.exit(main())
  File "/usr/lib/calibre/calibre/ebooks/conversion/cli.py", line 254, in main
    plumber.run()
  File "/usr/lib/calibre/calibre/ebooks/conversion/plumber.py", line 778, in run
    accelerators, tdir)
  File "/usr/lib/calibre/calibre/customize/conversion.py", line 211, in __call__
    log, accelerators)
  File "/usr/lib/calibre/calibre/ebooks/html/input.py", line 286, in convert
    get_metadata(stream))
  File "/usr/lib/calibre/calibre/ebooks/html/input.py", line 332, in create_oebbook
    filelist = get_filelist(htmlpath, basedir, opts, log)
  File "/usr/lib/calibre/calibre/ebooks/html/input.py", line 224, in get_filelist
    encoding=opts.input_encoding)\
  File "/usr/lib/calibre/calibre/ebooks/html/input.py", line 195, in traverse
    nf = HTMLFile(link.path, level, encoding, verbose, referrer=hf)
  File "/usr/lib/calibre/calibre/ebooks/html/input.py", line 109, in __init__
    msg = 'Could not read from file: %s with error: %s'%(self.path, unicode(err))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 10: ordinal not in range(128)

Ильдус Кр

unread,
Jul 31, 2013, 8:47:25 AM7/31/13
to Russian-Arms...@googlegroups.com
Вероятнее всего проблемы с доступом к файлу в self.path, попробуйте до строки с msg= добавить print self.path, и добавить все права на чтение к выведенному пути


31 июля 2013 г., 2:46 пользователь Ivan Kokorev <boolor...@gmail.com> написал:

--
--
http://groups.google.ru/group/Russian-Armstrong-Erlang
---
Вы получили это сообщение, поскольку подписаны на группу Russian-Armstrong-Erlang.
 
Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес Russian-Armstrong-...@googlegroups.com.
Настройки подписки и доставки писем: https://groups.google.com/groups/opt_out.
 
 

Ivan Kokorev

unread,
Aug 1, 2013, 1:30:16 PM8/1/13
to Russian-Arms...@googlegroups.com
print self.path вывед ~/books/Russian-Armstrong-Erlang/book/Я

так причем тут это? в консоли же ясно написано 
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 10: ordinal not in range(128)

то есть в коде где то юзается кодировка левая...кто то знает как быстро починить? не хочу дебажить
Чтобы отказаться от подписки на эту группу и перестать получать из нее сообщения, отправьте электронное письмо на адрес Russian-Armstrong-Erlang+unsub...@googlegroups.com.

Alexandr N. Zamaraev

unread,
Aug 2, 2013, 3:24:01 AM8/2/13
to Russian-Arms...@googlegroups.com
02.08.2013 00:30, Ivan Kokorev пишет:
> print self.path вывед ~/books/Russian-Armstrong-Erlang/book/Я
>
> так причем тут это? в консоли же ясно написано
> UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 10:
> ordinal not in range(128)
>
> то есть в коде где то юзается кодировка левая...кто то знает как быстро
> починить? не хочу дебажить
Если посмотреть внимательно на конец стека, то видим:
>>> File "/usr/lib/calibre/calibre/ebooks/html/input.py", line 109,
>>> in __init__
>>> msg = 'Could not read from file: %s with error: %s'%(self.path,
>>> unicode(err))
>>> UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in
>>> position 10:
>>> ordinal not in range(128)
Т. е. обламывается попытка сформатировать строку.
Причём строка - не юникодная, а self.path - по всей видимости юникодный
- происходит попытка его конвертации дефолтным кодеком - 'ascii',
которая отваливается наткнувшись на символ не входящий в ascii.

Простейший выход - переложить в папку без русских букв в пути

> On Wednesday, July 31, 2013 4:47:25 PM UTC+4, ildus wrote:
>>
>> Вероятнее всего проблемы с доступом к файлу в self.path, попробуйте до
>> строки с msg= добавить print self.path, и добавить все права на чтение к
>> выведенному пути
>>
>>
>> 31 июля 2013 г., 2:46 пользователь Ivan Kokorev <boolor...@gmail.com<javascript:>

Ivan Kokorev

unread,
Aug 2, 2013, 5:59:45 PM8/2/13
to Russian-Arms...@googlegroups.com
я ничего не могу переложить, потому что пути автогененерятся - попробуйте сами запустить и все поймете. если кто то хочет помочь - достаточно собрать у себя эту книжку и выложить, я скачаю.

Alexandr N. Zamaraev

unread,
Aug 5, 2013, 11:49:52 PM8/5/13
to Russian-Arms...@googlegroups.com
03.08.2013 04:59, Ivan Kokorev пишет:
> я ничего не могу переложить, потому что пути автогененерятся - попробуйте
> сами запустить и все поймете. если кто то хочет помочь - достаточно собрать
> у себя эту книжку и выложить, я скачаю.
У меня ломается ещё раньше, на комманде из README.md:
$ ./makeebooks ru
./makeebooks:36: invalid multibyte char (US-ASCII)

./makeebooks:36: invalid multibyte char (US-ASCII)

./makeebooks:36: syntax error, unexpected $end, expecting keyword_end

figure_title = '그림'
^
Т. к. в руби я не копенгаген, то дальше потестить не могу. :(

Pavel Shirshov

unread,
Aug 10, 2013, 4:42:22 PM8/10/13
to Russian-Arms...@googlegroups.com
Добавьте
# encoding: utf-8
В начале файла. Мне помогло.

Pavel Shirshov

unread,
Aug 10, 2013, 4:45:38 PM8/10/13
to Russian-Arms...@googlegroups.com
Книжка в аттаче. Сам не проверял. Только сгенерил.
erlangbook.ru.mobi.bz2

Ivan Kokorev

unread,
Aug 17, 2013, 3:26:04 PM8/17/13
to Russian-Arms...@googlegroups.com
Супер! спасибо за файл! жаль лишь картинок нет((
Reply all
Reply to author
Forward
0 new messages