Sadly the answer to this question suggests that it is not possible to script ArcScan from within a python script.
Therefore, does anyone know of any alternatives to ArcScan (either within ArcGIS, or within another GIS, or anything really...) that are scriptable? The functionality that I am in need of is the ability to convert from raster to vector by 'intelligently' vectorising lines. For example, ArcScan allows you to set a distance tolerance so that any lines that are vectorised and are less than that distance apart will be joined together. It also does various other sensible things with raster lines (for example, if a line is 3 pixels wide it vectorises it to a single line placed in the middle of the raster line).