batch rendering multiple audio strip files
well after a lot of testing I was able to do it and wrote something that does the trick for me
here is the code, it not perfect but it works :)
import bpy
import os

#set the directory to where the blend file is
basedir = os.path.dirname(bpy.data.filepath)
# if the blend file is not saved, operator wont be called
if not basedir:
    raise Exception(&quot;Blend file is not saved&quot;)

# the panel in the UI of sequence editor
class AUDIOSTRIPEXPORTER_PT_sequencer_panel(bpy.types.Panel):
    bl_label = &quot;strip exporter&quot;
    bl_idname = &quot;EXPORT_PT_exporter_panel&quot;
    bl_space_type = 'SEQUENCE_EDITOR'
    bl_region_type = 'UI'
    bl_category = &quot;Export&quot;

    def draw(self, context):
        layout = self.layout
        
        row = layout.row()
        rd = context.scene.render
        layout.label(text=&quot;Strip Exporter&quot;)
        row = layout.row()
        row.scale_y = 1.0
        row.operator(&quot;export.audio_strip_exporter_operator&quot;)

# the export operator
class AUDIOSTRIPEXPORTER_OT_sequencer_operator(bpy.types.Operator):
    &quot;&quot;&quot;Exports all the strips separetly&quot;&quot;&quot;
    bl_idname = &quot;export.audio_strip_exporter_operator&quot;
    bl_label = &quot;Simple Object Operator&quot;
    
    def execute(self, context):
        layout = self.layout
        strip = bpy.ops.sequencer
        selection = bpy.context.selected_editable_sequences
        select_num = len(selection)
        bpy.ops.sequencer.select_all(action='DESELECT')     
        number = 1
        
        for each_strip in selection:
            # name the file here, the code will add a number to each file like: FileName_001, FileName_002 ...
            name = &quot;FileName_&quot; + str(number)
            # joining the file name with the directory name for saving
            fn = os.path.join(basedir, name)
            
            bpy.ops.anim.start_frame_set()
            strip.strip_jump(next=True, center=False)
            bpy.ops.anim.end_frame_set()
            bpy.ops.sound.mixdown('INVOKE_DEFAULT', filepath=fn + &quot;.mp3&quot;, container='MP3', codec='MP3')

            number = number + 1
            strip.strip_jump(next=True, center=False)
        return {'FINISHED'}

classes = [AUDIOSTRIPEXPORTER_PT_sequencer_panel, AUDIOSTRIPEXPORTER_OT_sequencer_operator]
 
 
def register():
    for cls in classes:
        bpy.utils.register_class(cls)
        
 
def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)
 
 
if __name__ == &quot;__main__&quot;:
    register()

now as I said its not perfect so you have to change stuff to fit your needs
and remember:

it renders the files to the folder where the blend file is
you need to put cursor at the beginning of the first strip
add at least a few empty frames between each strip
you have to change the export name in the code

thats all I think