def __init__(self, file_abs_path): """ __init__(self, file_abs_path): Arguments: - file_abs_path: (string) Absolute file path. """ self.absolute_path = file_abs_path self.name = os.path.basename(self.absolute_path) application_messages.print_file_name(self.name) application_messages.print_document_info('Path', self.absolute_path) try: document = PdfFileReader(file(self.absolute_path, 'rb'), strict=False) self.__get_encrypted_status(document) document_info = document.getDocumentInfo() if document_info: self.__parse_document_info(document_info) self.num_pages = str(document.getNumPages()) self.size = str(os.path.getsize(file_abs_path)) self.__get_keywords(document) except Exception as ex: if 'encode' not in str(ex): raise Exception(ex)
def __init__(self, file_abs_path): """ __init__(self, file_abs_path): Arguments: - file_abs_path: (string) Absolute file path. """ self.absolute_path = file_abs_path self.name = os.path.basename(self.absolute_path) application_messages.print_file_name(self.name) application_messages.print_document_info('Path', self.absolute_path) try: document = PdfFileReader(file(self.absolute_path, 'rb')) self.__get_encrypted_status(document) document_info = document.getDocumentInfo() if document_info: self.__parse_document_info(document_info) except Exception as ex: if 'encode' not in str(ex): raise Exception(ex)
def print_info(self): """ print_info(self) Displays the metadata in a nice format. """ if self.title: application_messages.print_document_info('Title', self.title) if self.author: application_messages.print_highlighted('Author', self.author) if self.creator: application_messages.print_document_info('Creator', self.creator) if self.subject: application_messages.print_document_info('Subject', self.subject) if self.producer: application_messages.print_document_info('Producer', self.producer) if self.creation_date: application_messages.print_date('Creation date', self.creation_date) if self.modification_date: application_messages.print_date('Modification date', self.modification_date) if self.encrypted: if self.encrypted == 'Yes': application_messages.print_highlighted('Encrypted', self.encrypted) else: application_messages.print_document_info( 'Encrypted', self.encrypted) if self.num_pages: application_messages.print_document_info('Pages', self.num_pages) if self.size: application_messages.print_document_info( 'Size', '{0} bytes'.format(self.size)) if self.keywords: application_messages.print_document_info('Keywords', self.keywords) print
def print_info(self): """ print_info(self) Displays the metadata in a nice format. """ if self.title: application_messages.print_document_info('Title', self.title) if self.author: application_messages.print_highlighted('Author', self.author) if self.creator: application_messages.print_document_info('Creator', self.creator) if self.subject: application_messages.print_document_info('Subject', self.subject) if self.producer: application_messages.print_document_info('Producer', self.producer) if self.creation_date: application_messages.print_date('Creation date', self.creation_date) if self.modification_date: application_messages.print_date('Modification date', self.modification_date) if self.encrypted: if self.encrypted == 'Yes': application_messages.print_highlighted('Encrypted', self.encrypted) else: application_messages.print_document_info('Encrypted', self.encrypted) if self.num_pages: application_messages.print_document_info('Pages', self.num_pages) if self.size: application_messages.print_document_info('Size', '{0} bytes'.format(self.size)) print