mirror of
				https://github.com/kovidgoyal/calibre.git
				synced 2025-10-31 02:27:01 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			33 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| #!/usr/bin/env python
 | |
| # vim:fileencoding=UTF-8:ts=4:sw=4:sta:et:sts=4:ai
 | |
| 
 | |
| 
 | |
| __license__   = 'GPL v3'
 | |
| __copyright__ = '2011, Kovid Goyal <kovid@kovidgoyal.net>'
 | |
| __docformat__ = 'restructuredtext en'
 | |
| 
 | |
| import os
 | |
| 
 | |
| from calibre.customize import FileTypePlugin
 | |
| 
 | |
| 
 | |
| class HelloWorld(FileTypePlugin):
 | |
| 
 | |
|     name                = 'Hello World Plugin'  # 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          = {'epub', 'mobi'}  # 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
 | |
|         with open(path_to_ebook, 'r+b') as file:
 | |
|             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
 |