**Script.**

Similarly to https://blender.stackexchange.com/questions/95530/how-can-i-connect-a-texture-node-to-a-material-with-python the script below, Looks for all materials whose name has a corresponding image (note the ugly check for "_dds" to ".dds") Then for all material, image pairs adds an image texture node and connects it to the BSDF node.

Script assumes you have already loaded in the images, a simple process of multiple selecting images when opening.

    import bpy
    # all materials that have the same name as a UVTex
    materials = [(m, bpy.data.images.get(m.name.replace("_dds", ".dds"))) for m in bpy.data.materials]
         
    for m, img in materials:
        if not img:
            continue
        if m.use_nodes:
            # done this already??
            continue
        m.use_nodes = True

        nodes = m.node_tree.nodes
        # add image texture
        teximage = nodes.new('ShaderNodeTexImage')
        teximage.image = img
        bsdf = nodes.get('Diffuse BSDF')
        if bsdf:
            #link to bsdf
            m.node_tree.links.new(bsdf.inputs['Color'], 
                    teximage.outputs['Color'])