Can i automatically add textures to a large amount of materials? I have around 1500 objects. Each object has a material that is named exactly after the texture it corresponds to (e.g. "Tex_01.dds", "Tex_233.dds", etc). The objects and textures are both in the same folder. Is it possible for me to make an automated method that applies the correct textures to all objects in one go?

Edit: As the question appeared too vague, i've constructed a series of images to further explain the issue.

These are all the objects which i'm trying to add a texture to. They originate from a building system from a game. I wish to recreate this in Blender with a grid system.


Each object has one material. The name of the material is the same as the name of the texture that connects to the model.



Lastly, these are the textures which i would like to put on the models. 



Edit 2: All materials have no nodes in them. The manual procedure would be to add a material output, diffuse node, image texture node and optionally a texture coordinate for UV.

I've also included a .blend with some samples if anyone would be interested in checking it out.

https://www.dropbox.com/s/blvgx98lmp8n27o/MS2Props02.zip?dl=0
Script.

Similarly to 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

for m in bpy.data.materials:
    img = bpy.data.images.get(m.name.replace("_dds", ".dds"))
    if not img:
        continue
    if m.use_nodes:
        # done this already??
        continue
    m.use_nodes = True

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