What about the FREE 24K geotiff DRGs available through the Libre Map Project? All 24K DRGs for all 50 states are available there. They are collared, but I had access to GlobalMapper, which has a nice function that removes collars easily (and surely there are other ways to deal with those). They are filed nicely on the server at the Internet Archive and the Python script below, in conjunction with wget, fetches tons of 'em quickly and easily:
import os, shutil, string, time
# This script fetches raster images (DRGs) from the web using an os.system call to wget
# The directory of states is at: http://libremap.org/data/
# For each 24K quad in the list, it gets both
# the tif, tfw, and fgd (metadata), then moves them to new home. Moves on to next image in list
# Data is actually stored at the internet archive, with a URI like so:
wgetDir = 'C:/Program Files/wget/o'
list = [['32094f5','HARLETON','TX'],
exts = ['tif', 'tfw', 'fgd']
url = 'http://www.archive.org/download/'
home = '//share/Imagery/EastTexas/TOPOs/24k/'
# List of images we want to fetch
images = list
if __name__ == '__main__':
for image in images:
for ext in exts:
# Piece together out image/world file URI, so it looks like so:
fullurl = url + 'usgs_drg_' + image.lower() + '_' + image[:5] + '_' + image[5:] + '/o' + image + '.' + ext
# Get to wget thru an os.system call
os.system('wget %s' % (fullurl))
# Move the file to where we want it to live, with a descriptive filename, as in:
shutil.move(wgetDir + image + '.' + ext,
home + string.upper(image) + '_' + string.replace(image, ' ', '_') + '_' + 'o' + image + '.' + ext)
I usually build the list of input quads by selecting the quads I want from a 24K topo vector footprint in ArcMap, exporting out the records to a dbf (or better yet directly to Excel with XTools), then in Excel, build the list by concatenating the fields of interest together, something like:
="['" & quad_id & "','" & quad_name & "','" & state & "'],"
I then copy the list of lists into my script or a external module and call it from there. Maybe not the most elegant method, but it works nicely. HTH.