Your question prompted me to review the current KiCad Python documentation. I don’t see a python function to reload the netlist or to update footprints. You could possibly use python to navigate the wxPython windows and call functions on those windows. I use wxPython, for example, to insert a new dockable window in both LayerViewSet and KiCommand. Any such script would be heavily dependent on GUI changes, however. Maybe someone else knows about calling, from Python, KiCad commands that are available n the GUI.