need help in Plugin
Hello there:
I am a newcomer to plugin developer.
firstly , I downloaded the Helloworld plugin and made a slight change to it. I want to change the metadata of the ebooks. but it didn't work.
Anyone can kindly tell me the reason? Thanks in advance.
commandline:
calibre-customize -b .
output: Plugin updated: SGF File (1, 0, 0)
I intended to update the metadata ,but nothing changed to ebooks in calibre library.
the changed python script:
#!/usr/bin/env python
# vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai
from __future__ import (unicode_literals, division, absolute_import,
print_function)
__license__ = 'GPL v3'
__copyright__ = '2011, Kovid Goyal <kovid@kovidgoyal.net>'
__docformat__ = 'restructuredtext en'
import os
from calibre.customize import MetadataWriterPlugin
class HelloWorld(MetadataWriterPlugin):
name = 'SGF File' # Name of the plugin
description = 'Set the publisher to Hello World for all new conversions'
supported_platforms = ['windows', 'osx', 'linux'] # Platforms this plugin will run on
author = 'Acme Inc.' # The author of this plugin
version = (1, 0, 0) # The version number of this plugin
file_types = set(['SGF', 'sgf']) # The file types that this plugin will be applied to
on_postprocess = True # Run this plugin after conversion is complete
minimum_calibre_version = (0, 7, 53)
def run(self, path_to_ebook):
from calibre.ebooks.metadata.meta import get_metadata, set_metadata
file = open(path_to_ebook, 'r+b')
ext = os.path.splitext(path_to_ebook)[-1][1:].lower()
mi = get_metadata(file, ext)
mi.publisher = 'Hello World'
set_metadata(file, mi, ext)
return path_to_ebook
|