def _main (cmd) :
    msg_base_dirs  = cmd.msg_base_dirs or PMA.msg_base_dirs
    directory      = cmd.directory
    if directory and not directory.endswith (sos.sep) :
        directory  = directory + sos.sep
    c_type     = cmd.content_type
    def_ext    = cmd.extension_default
    ignore     = cmd.ignore   or None
    name_pat   = cmd.name_pat or None
    parts      = cmd.Parts
    s_type     = cmd.sub_type
    if not cmd.regexp :
        if c_type :
            c_type = re.escape (c_type)
        if s_type :
            s_type = re.escape (s_type)
    c_type     = Re_Filter (c_type)   if c_type   else _is_false
    s_type     = Re_Filter (s_type)   if s_type   else _is_false
    ignore     = Re_Filter (ignore)   if ignore   else _is_false
    name_pat   = Re_Filter (name_pat) if name_pat else _is_false
    for msg in PMA.messages_from_args (cmd.argv, msg_base_dirs) :
        print (msg.path)
        extract_mime_attachements \
            (msg, directory, def_ext, ignore, c_type, name_pat, parts, s_type)
Exemple #2
0
 def message_from_arg (cmd, arg) :
     try :
         return first (PMA.messages_from_args ([arg], cmd.msg_base_dirs))
     except LookupError :
         raise SystemExit (1)