2010-07-08 5 views
4

Ok, je dois être en mesure de éditer les commentaires de fichier dans les fichiers .RAR de Python.Modifier les commentaires du fichier .RAR à partir de python

Je peux déjà voir les commentaires en utilisant UnRAR. Cependant, j'ai besoin d'incorporer des métadonnées dans les fichiers d'une manière qui est préservée sur plusieurs systèmes de fichiers (par exemple, des flux de données alternatifs sont sortis), donc je ne peux pas vraiment penser à d'autres alternatives.

rarfilesemble comme ça pourrait fonctionner, mais il n'a pas vraiment fonctionner correctement sous Windows, malgré sa demande d'indépendance de la plate-forme (ou le format .rar a changé, mais cela semble considérer peu probable d'autres services publics de la même époque travail d'époque). Il ouvre bien l'archive, mais il ne reconnaît pas qu'il y a des commentaires.

Pour répondre de manière préventive à certains des commentaires inévitables -
Non, je ne peux pas convertir les archives (il y en a des milliers).
Tout mode de stockage de métadonnées dépendant du système de fichiers est supprimé, car je dois prendre en charge NTFS, XFS et ext3.
Les fichiers cachés seraient un désordre, et vous devez vous assurer qu'ils sont déplacés avec le fichier associé, ce que je ne peux pas faire.

+0

Sinon, quelqu'un connaît-il de bonnes sources de documentation interne sur le format rar? De cette façon, je peux commencer à pirater à rarfile, et peut-être comprendre pourquoi il barfing sur mes fichiers .rar. (J'ai vu http://kthoom.googlecode.com/hg/docs/unrar.html) –

+0

Est-ce que l'édition de quelque chose dans l'archive n'indique probablement pas l'extraction et la recompression de toute façon? (sauf si le format rar est beaucoup plus intelligent que ce que je lui attribue ...) Dans ce cas, je ne vois pas pourquoi la conversion vers un type d'archive plus convivial est hors de question. – James

+0

Oui, c'est ce que j'espère éviter. D'après ce que je peux dire de l'architecture .rar, le commentaire est compressé séparément, il devrait donc être possible. –

Répondre

1

Je pense que vous n'avez pas de chance. Malheureusement, le format RAR est fermé et non documenté, et aucun module Python ne fait ce que vous voulez faire.

Le seul outil open-source que je sais que décompresser des fichiers RAR est The Unarchiver. Je pense que votre meilleur pari est de vérifier leur sources et d'écrire votre propre outil Python pour modifier les commentaires du fichier.

Vous pouvez également essayer de poser cette question au comp.compression conseils, j'ai eu un issue similaire il ya quelques années avec un format de compression obscur et les gens là-bas ont pu m'aider en un rien de temps.

Questions connexes