- Manage unneeded objects, delete them from memory if they are not needed anymore using the del statement. (you can always extend some object to use using statements as well)
- If the area of interest is large and the grid area is small, it's going to take a long time to complete. Get a cup of coffee!
- Eliminate the need to reference multiple Map Documents. If you need a left and right page, use one Map Document and turn the layers on/off as needed.
- Use cached local map services if possible for basemap data. This should speed production up.
- Modules like shutil.copy() can be quicker than some arcpy functions, so use them.
- Always check to see if the PDF file name exists (os.path.isfile()) and use arcpy.CreateUniqueName() frequently
- If the map book is going to be large (2000+ pages), consider splitting the book into multiple books
- Subprocessing module can be your friend and enemy, use it wisely or it will destroy you.
- Reference local data, not data over the network when possible
Please add your comments/tips to improve map automation, I'd love see what you have encountered.