calibre - en to ru translation catalogue (68 entries)

en: Adding your favorite news website
ru: Добавление любимых новостных веб-сайтов

en: calibre has a powerful, flexible and easy-to-use framework for downloading news from the Internet and converting it into an e-book. The following will show you, by means of examples, how to get news from various websites.
ru: calibre обладает мощной, гибкой и простой в использовании платформой для загрузки новостей из Интернета и преобразования их в электронную книгу. Далее на примерах будет показано, как получать новости с различных веб-сайтов.

en: To gain an understanding of how to use the framework, follow the examples in the order listed below:
ru: Чтобы понять, как использовать платформу, следуйте примерам в порядке, указанном ниже:

en: Completely automatic fetching
ru: Полностью автоматическая загрузка

en: If your news source is simple enough, calibre may well be able to fetch it completely automatically, all you need to do is provide the URL. calibre gathers all the information needed to download a news source into a :term:`recipe`. In order to tell calibre about a news source, you have to create a :term:`recipe` for it. Let's see some examples:
ru: Если ваш источник новостей достаточно прост, calibre вполне может получить его полностью автоматически, все, что вам нужно сделать, это предоставить URL. calibre собирает всю информацию, необходимую для загрузки источника новостей, в :term:`recipe`. Чтобы сообщить calibre об источнике новостей, вы должны создать для него :term:`recipe`. Давайте посмотрим несколько примеров:

en: The calibre blog
ru: Блог calibre

en: The calibre blog is a blog of posts that describe many useful calibre features in a simple and accessible way for new calibre users. In order to download this blog into an e-book, we rely on the :term:`RSS` feed of the blog::
ru: Блог calibre - это блог постов, которые описывают многие полезные функции calibre простым и доступным способом для пользователей нового calibre. Чтобы загрузить этот блог в электронную книгу, мы полагаемся на :term:`RSS` ленту блога::

en: I got the RSS URL by looking under "Subscribe to" at the bottom of the blog page and choosing :guilabel:`Posts->Atom`. To make calibre download the feeds and convert them into an e-book, you should right click the :guilabel:`Fetch news` button and then the :guilabel:`Add a custom news source` menu item and then the :guilabel:`New Recipe` button. A dialog similar to that shown below should open up.
ru: Я получил URL-адрес RSS, посмотрев в разделе «Подписаться на» в нижней части страницы блога и выбрав :guilabel:`Posts-> Atom`. Чтобы заставить calibre загружать каналы и конвертировать их в электронную книгу, вы должны щелкнуть правой кнопкой мыши по кнопке :guilabel:`Fetch news`, а затем :guilabel:`Добавить пользовательский источник новостей` и затем по кнопке :guilabel:`«Новый рецепт». Должно открыться диалоговое окно, подобное показанному ниже.

en: First enter ``Calibre Blog`` into the :guilabel:`Recipe title` field. This will be the title of the e-book that will be created from the articles in the above feeds.
ru: Сначала введите ``Calibre Blog`` в поле :guilabel:`Название рецепта`. Это будет название электронной книги, которая будет создана из статей в вышеупомянутых каналах.

en: The next two fields (:guilabel:`Oldest article` and :guilabel:`Max. number of articles`) allow you some control over how many articles should be downloaded from each feed, and they are pretty self explanatory.
ru: Следующие два поля (:guilabel:`Самая старая статья` и :guilabel:` Максимальное количество статей`) позволяют вам контролировать, сколько статей следует загружать из каждого канала, и они довольно понятны.

en: To add the feeds to the recipe, enter the feed title and the feed URL and click the :guilabel:`Add feed` button. Once you have added the feed, simply click the :guilabel:`Save` button and you're done! Close the dialog.
ru: Чтобы добавить каналы в рецепт, введите заголовок канала и URL-адрес канала и нажмите кнопку :guilabel:`Добавить канал`. После добавления канала просто нажмите кнопку :guilabel:`Сохранить`, и все готово! Закройте диалог.

en: To test your new :term:`recipe`, click the :guilabel:`Fetch news` button and in the :guilabel:`Custom news sources` sub-menu click :guilabel:`calibre Blog`. After a couple of minutes, the newly downloaded e-book of blog posts will appear in the main library view (if you have your reader connected, it will be put onto the reader instead of into the library). Select it and hit the :guilabel:`View` button to read!
ru: Чтобы проверить свой новый :term:`recipe`, нажмите кнопку :guilabel:`Получить новости` и в подменю :guilabel:`Пользовательские источники новостей` нажмите :guilabel:`Блог calibre`. Через пару минут недавно загруженная электронная книга из сообщений блога появится в главном представлении библиотеки (если у вас подключена читалка, она будет помещена в читалку, а не в библиотеку). Выберите книгу и нажмите кнопку :guilabel:`View`, чтобы прочитать!

en: The reason this worked so well, with so little effort is that the blog provides *full-content* :term:`RSS` feeds, i.e., the article content is embedded in the feed itself. For most news sources that provide news in this fashion, with *full-content* feeds, you don't need any more effort to convert them to e-books. Now we will look at a news source that does not provide full content feeds. In such feeds, the full article is a webpage and the feed only contains a link to the webpage with a short summary of the article.
ru: Причина, по которой это сработало так хорошо, с таким небольшим усилием, состоит в том, что блог предоставляет *полный контентные* :term:`RSS` фиды, то есть контент статьи внедряется в сам фид. Для большинства новостных источников, которые предоставляют новости таким образом, с *полнотекстовыми* новостями, вам не нужно больше усилий, чтобы преобразовать их в электронные книги. Теперь мы рассмотрим источник новостей, который не предоставляет полную ленту контента. В таких каналах полная статья является веб-страницей, а лента содержит только ссылку на веб-страницу с кратким обзором статьи.

en: Let's try the following two feeds from *The BBC*:
ru: Давайте попробуем следующие два фида из * BBC *:

en: News Front Page: https://newsrss.bbc.co.uk/rss/newsonline_world_edition/front_page/rss.xml
ru: Главная страница новостей: https://newsrss.bbc.co.uk/rss/newsonline_world_edition/front_page/rss.xml

en: Science/Nature: https://newsrss.bbc.co.uk/rss/newsonline_world_edition/science/nature/rss.xml
ru: Наука/Природа: https://newsrss.bbc.co.uk/rss/newsonline_world_edition/science/nature/rss.xml

en: Follow the procedure outlined in :ref:`calibre_blog` above to create a recipe for *The BBC* (using the feeds above). Looking at the downloaded e-book, we see that calibre has done a creditable job of extracting only the content you care about from each article's webpage. However, the extraction process is not perfect. Sometimes it leaves in undesirable content like menus and navigation aids or it removes content that should have been left alone, like article headings. In order, to have perfect content extraction, we will need to customize the fetch process, as described in the next section.
ru: Следуйте процедуре, описанной в :ref:`calibre_blog` выше, чтобы создать рецепт для *BBC* (используя фиды выше). Глядя на загруженную электронную книгу, мы видим, что calibre проделал достойную работу по извлечению только того контента, который вам интересен, с веб-страницы каждой статьи. Однако процесс извлечения не идеален. Иногда он оставляет нежелательный контент, такой как меню и навигационные средства, или удаляет контент, который должен был остаться, например заголовки статей. Чтобы обеспечить идеальное извлечение контента, нам нужно настроить процесс извлечения, как описано в следующем разделе.

en: Customizing the fetch process
ru: Настройка процесса получения

en: When you want to perfect the download process, or download content from a particularly complex website, you can avail yourself of all the power and flexibility of the :term:`recipe` framework. In order to do that, in the :guilabel:`Add custom news sources` dialog, simply click the :guilabel:`Switch to Advanced mode` button.
ru: Если вы хотите усовершенствовать процесс загрузки или загрузить контент с особенно сложного веб-сайта, вы можете воспользоваться всей мощью и гибкостью среды :term:`recipe`. Для этого в диалоге :guilabel:`Добавить пользовательские источники новостей` просто нажмите кнопку :guilabel:`Переключиться в расширенный режим`.

en: The easiest and often most productive customization is to use the print version of the online articles. The print version typically has much less cruft and translates much more smoothly to an e-book. Let's try to use the print version of the articles from *The BBC*.
ru: Самая простая и часто наиболее производительная настройка заключается в использовании версии для печати онлайн-статей. Такая версия, как правило, имеет гораздо меньше ошибок и гораздо более гладко переводится в электронную книгу. Давайте попробуем использовать версию для печати статей из *BBC*.

en: Using the print version of bbc.co.uk
ru: Использование печатной версии bbc.co.uk

en: The first step is to look at the e-book we downloaded previously from :ref:`bbc`. At the end of each article, in the e-book is a little blurb telling you where the article was downloaded from. Copy and paste that URL into a browser. Now on the article webpage look for a link that points to the "Printable version". Click it to see the print version of the article. It looks much neater! Now compare the two URLs. For me they were:
ru: Первым шагом является просмотр электронной книги, которую мы скачали ранее :ref:`bbc`. В конце каждой статьи в электронной книге есть небольшая реклама, в которой рассказывается, откуда была загружена статья. Скопируйте и вставьте этот URL в браузер. Теперь на веб-странице статьи найдите ссылку, которая указывает на «Версия для печати». Нажмите на неё, чтобы увидеть печатную версию статьи. Это выглядит намного аккуратнее! Теперь сравните два URL. Для меня они были такими:

en: Article URL
ru: URL статьи

en: Print version URL
ru: Печатная версия URL

en: So it looks like to get the print version, we need to prefix every article URL with:
ru: Таким образом, похоже, чтобы получить версию для печати, нам нужно добавить префикс к каждой статье:

en: Now in the :guilabel:`Advanced mode` of the Custom news sources dialog, you should see something like (remember to select *The BBC* recipe before switching to advanced mode):
ru: Теперь в :guilabel:`Advanced Mode` диалога Custom news sources вы должны увидеть что-то вроде (не забудьте выбрать рецепт *BBC* перед переходом в расширенный режим):

en: You can see that the fields from the :guilabel:`Basic mode` have been translated to Python code in a straightforward manner. We need to add instructions to this recipe to use the print version of the articles. All that's needed is to add the following two lines:
ru: Вы можете видеть, что поля из :guilabel:`Basic mode` были прямо переведены в код Python. Нам нужно добавить инструкции к этому рецепту, чтобы использовать печатную версию статей. Всё, что нужно, это добавить следующие две строки:

en: This is Python, so indentation is important. After you've added the lines, it should look like:
ru: Это Python, поэтому отступы важны. После того, как вы добавили строки, это должно выглядеть так:

en: In the above, ``def print_version(self, url)`` defines a *method* that is called by calibre for every article. ``url`` is the URL of the original article. What ``print_version`` does is take that url and replace it with the new URL that points to the print version of the article. To learn about `Python <https://www.python.org>`_ see the `tutorial <https://docs.python.org/tutorial/>`_.
ru: Выше ``def print_version(self, url)`` определяет *метод*, который вызывается calibre для каждой статьи. ``url`` - это URL оригинальной статьи. ``print_version`` - это взять этот URL и заменить его новым URL, который указывает на печатную версию статьи. Чтобы узнать о `Python <https://www.python.org>`_, см. `tutorial <https://docs.python.org/tutorial/>`_.

en: Now, click the :guilabel:`Add/update recipe` button and your changes will be saved. Re-download the e-book. You should have a much improved e-book. One of the problems with the new version is that the fonts on the print version webpage are too small. This is automatically fixed when converting to an e-book, but even after the fixing process, the font size of the menus and navigation bar become too large relative to the article text. To fix this, we will do some more customization, in the next section.
ru: Теперь нажмите кнопку :guilabel:`Добавить/обновить рецепт`, и ваши изменения будут сохранены. Повторно загрузите электронную книгу. У вас должна быть намного улучшенная электронная книга. Одна из проблем новой версии заключается в том, что шрифты на веб-странице версии для печати слишком малы. Это автоматически исправляется при преобразовании в электронную книгу, но даже после процесса исправления размер шрифта меню и панели навигации становится слишком большим по сравнению с текстом статьи. Чтобы исправить это, мы сделаем ещё несколько настроек в следующем разделе.

en: Replacing article styles
ru: Замена стилей статей

en: In the previous section, we saw that the font size for articles from the print version of *The BBC* was too small. In most websites, *The BBC* included, this font size is set by means of :term:`CSS` stylesheets. We can disable the fetching of such stylesheets by adding the line::
ru: В предыдущем разделе мы видели, что размер шрифта для статей из печатной версии *BBC* был слишком мал. На большинстве веб-сайтов, включая *BBC*, этот размер шрифта устанавливается с помощью :term:`CSS` таблиц стилей. Мы можем отключить выборку таких таблиц стилей, добавив строку::

en: The recipe now looks like:
ru: Рецепт теперь выглядит так:

en: The new version looks pretty good. If you're a perfectionist, you'll want to read the next section, which deals with actually modifying the downloaded content.
ru: Новая версия выглядит довольно хорошо. Если вы перфекционист, вам нужно прочитать следующий раздел, посвященный изменению загруженного контента.

en: Slicing and dicing
ru: Шинковка ломтиками и кубиками

en: calibre contains very powerful and flexible abilities when it comes to manipulating downloaded content. To show off a couple of these, let's look at our old friend the :ref:`The BBC <bbc1>` recipe again. Looking at the source code (:term:`HTML`) of a couple of articles (print version), we see that they have a footer that contains no useful information, contained in
ru: Что касается управления загруженным содержимым, calibre обладает мощными и гибкими возможностями. Чтобы похвастаться парочкой, давайте снова посмотрим на нашего старого друга — рецепт :ref:`BBC <bbc1>`. Взглянув на исходный код (:term:`HTML`) пары статей (версия для печати), мы увидим в них нижний колонтитул без какой-либо полезной информации, содержащейся в

en: This can be removed by adding::
ru: Это может быть удалено путем добавления::

en: to the recipe. Finally, lets replace some of the :term:`CSS` that we disabled earlier, with our own :term:`CSS` that is suitable for conversion to an e-book::
ru: к рецепту. Наконец, давайте заменим некоторые из :term:`CSS`, которые мы отключили ранее, на наш собственный :term:`CSS`, который подходит для преобразования в электронную книгу::

en: With these additions, our recipe has become "production quality".
ru: Благодаря этим дополнениям наш рецепт стал «производственным качеством».

en: This :term:`recipe` explores only the tip of the iceberg when it comes to the power of calibre. To explore more of the abilities of calibre we'll examine a more complex real life example in the next section.
ru: Это :term:`recipe` исследует только верхушку айсберга, когда дело доходит до силы calibre. Чтобы изучить больше возможностей calibre, мы рассмотрим более сложный пример из реальной жизни в следующем разделе.

en: Real life example
ru: Пример из реальной жизни

en: A reasonably complex real life example that exposes more of the :term:`API` of ``BasicNewsRecipe`` is the :term:`recipe` for *The New York Times*
ru: Достаточно сложный пример из реальной жизни, который раскрывает большую часть :term:`API` ``BasicNewsRecipe``, это :term:`recipe` для *The New York Times*

en: We see several new features in this :term:`recipe`. First, we have::
ru: В этом мы видим несколько новых функций :term:`recipe`. Во-первых, у нас есть::

en: This sets the displayed time on the front page of the created e-book to be in the format, ``Day, Day_Number Month, Year``. See :attr:`timefmt <calibre.web.feeds.news.BasicNewsRecipe.timefmt>`.
ru: Это устанавливает отображаемое время на первой странице созданной электронной книги в формате ``Day, Day_Number Month, Year``. Смотрите :attr:`timefmt <calibre.web.feeds.news.BasicNewsRecipe.timefmt>`.

en: Then we see a group of directives to cleanup the downloaded :term:`HTML`::
ru: Затем мы видим группу директив для очистки загруженного файла :term:`HTML`::

en: These remove everything before the first ``<h1>`` tag and everything after the first tag whose id is ``footer``. See :attr:`remove_tags <calibre.web.feeds.news.BasicNewsRecipe.remove_tags>`, :attr:`remove_tags_before <calibre.web.feeds.news.BasicNewsRecipe.remove_tags_before>`, :attr:`remove_tags_after <calibre.web.feeds.news.BasicNewsRecipe.remove_tags_after>`.
ru: Они удаляют все до первого тега ``<h1>`` и все после первого тега с идентификатором `` footer``. Смотрите :attr:`remove_tags <calibre.web.feeds.news.BasicNewsRecipe.remove_tags>`, :attr:`remove_tags_before <calibre.web.feeds.news.BasicNewsRecipe.remove_tags_before>`, :attr:`remove_tags_after  <calibre.web.feeds.news.BasicNewsRecipe.remove_tags_after>`.

en: The next interesting feature is::
ru: Следующая интересная особенность:

en: ``needs_subscription = True`` tells calibre that this recipe needs a username and password in order to access the content. This causes, calibre to ask for a username and password whenever you try to use this recipe. The code in :meth:`calibre.web.feeds.news.BasicNewsRecipe.get_browser` actually does the login into the NYT website. Once logged in, calibre will use the same, logged in, browser instance to fetch all content. See `mechanize <https://mechanize.readthedocs.io/en/latest/>`_ to understand the code in ``get_browser``.
ru: ``needs_subscription = True`` сообщает calibre, что для получения доступа к содержимому этого рецепта требуется имя пользователя и пароль. Это заставляет calibre запрашивать имя пользователя и пароль всякий раз, когда вы пытаетесь использовать этот рецепт. Код в :meth:`calibre.web.feeds.news.BasicNewsRecipe.get_browser` фактически выполняет вход на веб-сайт NYT. После входа в систему calibre будет использовать тот же, вошедший в систему, экземпляр браузера, чтобы получить весь контент. Смотрите `mechanize <https://mechanize.readthedocs.io/en/latest/>`_, чтобы понять код в ``get_browser``.

en: The next new feature is the :meth:`calibre.web.feeds.news.BasicNewsRecipe.parse_index` method. Its job is to go to https://www.nytimes.com/pages/todayspaper/index.html and fetch the list of articles that appear in *todays* paper. While more complex than simply using :term:`RSS`, the recipe creates an e-book that corresponds very closely to the days paper. ``parse_index`` makes heavy use of `BeautifulSoup <https://www.crummy.com/software/BeautifulSoup/bs4/doc/>`_ to parse the daily paper webpage. You can also use other, more modern parsers if you dislike BeautifulSoup. calibre comes with `lxml <https://lxml.de/>`_ and `html5lib <https://github.com/html5lib/html5lib-python>`_, which are the recommended parsers. To use them, replace the call to ``index_to_soup()`` with the following::
ru: Следующей новой функцией является метод :meth:`calibre.web.feeds.news.BasicNewsRecipe.parse_index`. Его работа заключается в том, чтобы перейти на https://www.nytimes.com/pages/todayspaper/index.html и получить список статей, которые появляются в *сегодняшнем* документе. Хотя этот рецепт сложнее, чем просто использовать :term:`RSS`, этот рецепт создает электронную книгу, которая очень точно соответствует дневнику. ``parse_index`` интенсивно использует `BeautifulSoup <https://www.crummy.com/software/BeautifulSoup/bs4/doc/>`_ для анализа ежедневной веб-страницы газеты. Вы также можете использовать другие, более современные парсеры, если вам не нравится BeautifulSoup. calibre поставляется с `lxml <https://lxml.de/>` _ и `html5lib <https://github.com/html5lib/html5lib-python>`_, которые являются рекомендуемыми парсерами. Чтобы использовать их, замените вызов ``index_to_soup()`` следующим:

en: The final new feature is the :meth:`calibre.web.feeds.news.BasicNewsRecipe.preprocess_html` method. It can be used to perform arbitrary transformations on every downloaded HTML page. Here it is used to bypass the ads that the nytimes shows you before each article.
ru: Последняя новая функция - это метод :meth:`calibre.web.feeds.news.BasicNewsRecipe.preprocess_html`. Его можно использовать для выполнения произвольных преобразований на каждой загруженной HTML-странице. Здесь он используется для обхода рекламы, которую nytimes показывает перед каждой статьей.

en: Tips for developing new recipes
ru: Советы по созданию новых рецептов

en: The best way to develop new recipes is to use the command line interface. Create the recipe using your favorite Python editor and save it to a file say :file:`myrecipe.recipe`. The `.recipe` extension is required. You can download content using this recipe with the command::
ru: Лучший способ разработать новые рецепты - использовать интерфейс командной строки. Создайте рецепт, используя ваш любимый редактор Python, и сохраните его в файл, скажем :file:`myrecipe.recipe`. Требуется расширение `.recipe`. Вы можете скачать контент, используя этот рецепт с командой::

en: The command :command:`ebook-convert` will download all the webpages and save them to the EPUB file :file:`myrecipe.epub`. The ``-vv`` option makes ebook-convert spit out a lot of information about what it is doing. The :option:`ebook-convert-recipe-input --test` option makes it download only a couple of articles from at most two feeds. In addition, ebook-convert will put the downloaded HTML into the ``debug/input`` folder, where ``debug`` is the folder you specified in the :option:`ebook-convert --debug-pipeline` option.
ru: Команда :command:`ebook-convert` загрузит все веб-страницы и сохранит их в файл EPUB :file:`myrecipe.epub`. Параметр ``-vv`` заставляет ebook-convert выдавать много информации о том, что он делает. Параметр :option:`ebook-convert-recipe-input --test` позволяет загружать только пару статей максимум из двух каналов. Кроме того, ebook-convert поместит загруженный HTML-код в папку debug/input, где debug - это папка, указанная в параметре :option:`ebook-convert --debug-pipeline`.

en: Once the download is complete, you can look at the downloaded :term:`HTML` by opening the file :file:`debug/input/index.html` in a browser. Once you're satisfied that the download and preprocessing is happening correctly, you can generate e-books in different formats as shown below::
ru: После завершения загрузки вы можете просмотреть загруженный файл :term:`HTML`, открыв файл :file:`debug/input/index.html` в браузере. Убедившись, что загрузка и предварительная обработка выполняются правильно, вы можете создавать электронные книги в различных форматах, как показано ниже::

en: If you're satisfied with your recipe, and you feel there is enough demand to justify its inclusion into the set of built-in recipes, post your recipe in the `calibre recipes forum <https://www.mobileread.com/forums/forumdisplay.php?f=228>`_ to share it with other calibre users.
ru: Если вы удовлетворены своим рецептом и чувствуете, что существует достаточный спрос, чтобы оправдать его включение в набор встроенных рецептов, опубликуйте свой рецепт на `форуме рецептов calibre <https://www.mobileread.com/forums /forumdisplay.php?f=228>`_, чтобы поделиться им с другими пользователями.

en: On macOS, the command line tools are inside the calibre bundle, for example, if you installed calibre in :file:`/Applications` the command line tools are in :file:`/Applications/calibre.app/Contents/MacOS/`.
ru: В macOS инструменты командной строки находятся внутри пакета calibre, например, если вы установили calibre в :file:`/Applications`, то инструменты командной строки будут в :file:`/Applications/calibre.app/Contents/MacOS/`.

en: :doc:`generated/en/ebook-convert`
ru: :doc:`generated/ru/ebook-convert`

en: The command line interface for all e-book conversion.
ru: Интерфейс командной строки для всех конвертаций электронных книг.

en: Further reading
ru: Дальнейшее чтение

en: To learn more about writing advanced recipes using some of the facilities, available in ``BasicNewsRecipe`` you should consult the following sources:
ru: Чтобы узнать больше о написании расширенных рецептов с использованием некоторых средств, доступных в ``BasicNewsRecipe``, вам следует обратиться к следующим источникам:

en: :ref:`API documentation <news_recipe>`
ru: :ref:`Документация API <news_recipe>`

en: Documentation of the ``BasicNewsRecipe`` class and all its important methods and fields.
ru: Документация класса ``BasicNewsRecipe`` и всех его важных методов и полей.

en: The source code of ``BasicNewsRecipe``
ru: Исходный код ``BasicNewsRecipe``

en: `Built-in recipes <https://github.com/kovidgoyal/calibre/tree/master/recipes>`_
ru: `Встроенные рецепты <https://github.com/kovidgoyal/calibre/tree/master/recipes>`_

en: The source code for the built-in recipes that come with calibre
ru: Исходный код для встроенных рецептов, которые идут с calibre

en: `The calibre recipes forum <https://www.mobileread.com/forums/forumdisplay.php?f=228>`_
ru: `Форум рецептов calibre <https://www.mobileread.com/forums/forumdisplay.php?f=228>`_

en: Lots of knowledgeable calibre recipe writers hang out here.
ru: Много знающих авторов рецепта calibre тусуются здесь.

en: API documentation
ru: Документация API
