19.03.2024, 05:54 UhrDeutsch | English
Hallo Gast [ Registrierung | Anmelden ]

Neues Thema eröffnen   Neue Antwort erstellen
Vorheriges Thema anzeigen Druckerfreundliche Version Einloggen, um private Nachrichten zu lesen Nächstes Thema anzeigen
Poll
was rockt am meisten ?
python
100%
 100%  [ 2 ]
perl
0%
 0%  [ 0 ]
javascript (ECMA)
0%
 0%  [ 0 ]
anderes / nix des obigen
0%
 0%  [ 0 ]
Stimmen insgesamt : 2


Autor Nachricht
mai77
13 Titel: Krename Ersatz: python script : PDF Titel Extraktor  BeitragVerfasst am: 08.05.2011, 11:24 Uhr



Anmeldung: 08. Mai 2011
Beiträge: 18

http://pastebin.com/CDmgbkPG
http://blog.isnotworking.com/2006/08/extract-pdf-title-from-all-files-on.html

manchmal (zB Dateisystem crash) hat man viele Dateien (PDF, mp3 ...) ohne aussagefähige Dateinamen.

Massenumbenennung nach dem PDF-Titel oder mp3-tag ist nun gefragt.

mit Krename geht es. WerSonderfunktionen mit PDF machen will, kann auch das obige script nehmen und selbst tätig werden. Mit Python einfach nutzbar.
 
 Benutzer-Profile anzeigen Private Nachricht senden  
Antworten mit Zitat Nach oben
mai77
29 Titel: Krename Ersatz: python script : PDF Titel Extraktor  BeitragVerfasst am: 08.05.2011, 11:28 Uhr



Anmeldung: 08. Mai 2011
Beiträge: 18

Code:


# -*- coding: cp1252 -*-
# script to rename PDF files according to with title + name (unique)
# pyPdf available at http://pybrary.net/pyPdf
# runs as  python thisPy.py      in  a UNIX-shell (in windows "python" not required)
# http://blog.isnotworking.com/2006/08/extract-pdf-title-from-all-files-on.html


from pyPdf import PdfFileWriter, PdfFileReader
import os
trgtfilename = ""

for fileName in os.listdir('.'):
  if fileName.lower()[-3:] != "pdf": continue
  try:
    actfile = file(fileName, "rb")
    input1 = PdfFileReader(actfile) 
    trgtfilename = input1.getDocumentInfo().title + "_" + fileName
  except:
    print "\n## ERROR ## %s Title could not be extracted. PDF file may be encrypted!" % fileName
    continue
 
  del input1
  actfile.close()

  print 'Trying to rename from:', fileName, ' to ', trgtfilename
  try:
    os.rename(fileName,trgtfilename)
  except:
    print fileName, ' could not be renamed!'
    print '\n error: are prior names unique? Maybe the filename already exists or the document is already opened!'

 
 Benutzer-Profile anzeigen Private Nachricht senden  
Antworten mit Zitat Nach oben
TheOne
Titel: Krename Ersatz: python script : PDF Titel Extraktor  BeitragVerfasst am: 08.05.2011, 13:30 Uhr



Anmeldung: 15. Mar 2008
Beiträge: 610

Hallo mai77,
herzlich willkommen bei Kanotix!

Ich selbst habe solch einen Crash noch nie mit erleben müssen, zum Glück. Ich erwartet von einem stabilen System mit ausgereiften Dateisystemen aber auch keine so massiven Crashs.

Zu dem Script: Ist ganz schick, vielleicht noch das Python Shebang setzen, dann spart man sich beim Aufruf das python vorn.
Falls so ein PDF wirklich encrypted sein sollte, dann könntest ja noch ne PW Abfrage starten und probieren obs sich entschlüsseln lässt. Ob das in einem solchen Szenario in der Form erfolgreich ist weiß ich nicht (Problem: woher soll man das PW für ein File wissen, dessen Namen man nicht kennt).

Gruß TheOne

_________________
Lenovo ThinkPad X220 | Core i7-2640M 16GB | Hellfire 3.6
FSC Tablet T4220 | Core2 Duo T7250 2GHz 3GB | Intel GMA X3100 | Hellfire 3.6
Clevo M570U | Core2 T7200 2GHz 2GB | Geforce Go 7950gtx | Hellfire 3.2
 
 Benutzer-Profile anzeigen Private Nachricht senden  
Antworten mit Zitat Nach oben
mai77
Titel: Krename Ersatz: python script : PDF Titel Extraktor  BeitragVerfasst am: 09.05.2011, 14:58 Uhr



Anmeldung: 08. Mai 2011
Beiträge: 18

außerdem wäre ein Abfangen illegaler filenamen (Klammern, semikolon) nützlich.

leider ist auch krename nicht so powervoll wie bulk-rename-utility
 
 Benutzer-Profile anzeigen Private Nachricht senden  
Antworten mit Zitat Nach oben
Beiträge vom vorherigen Thema anzeigen:     
Gehe zu:  
Alle Zeiten sind GMT + 1 Stunde
Neues Thema eröffnen   Neue Antwort erstellen
Vorheriges Thema anzeigen Druckerfreundliche Version Einloggen, um private Nachrichten zu lesen Nächstes Thema anzeigen
PNphpBB2 © 2003-2007 
 
Deutsch | English
Logos and trademarks are the property of their respective owners, comments are property of their posters, the rest is © 2004 - 2006 by Jörg Schirottke (Kano).
Consult Impressum and Legal Terms for details. Kanotix is Free Software released under the GNU/GPL license.
This CMS is powered by PostNuke, all themes used at this site are released under the GNU/GPL license. designed and hosted by w3you. Our web server is running on Kanotix64-2006.