<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Finding All Geodatabases Inside Main Folder and Subfolders in Geoprocessing Questions</title>
    <link>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67145#M2401</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;First problem is the regexp doesn't match, for it to match your pattern must account for the start of the string. Use &lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;re.search&lt;/SPAN&gt;&lt;SPAN&gt; instead if you don't want to tweak your regexp.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Also, since file GDBs are actually folders, you can look for them in your &lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;root&lt;/SPAN&gt;&lt;SPAN&gt; variable within the main loop.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;e.g. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;for root, dirname, filenames in os.walk(folder):
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (re.search("([A-Za-z0-9_]*).gdb", root)):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases.append(root)
&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for file in filenames:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (re.match("([A-Za-z0-9_]*).mdb", file)):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases.append(os.path.join(root,file))&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 10 Dec 2021 22:35:03 GMT</pubDate>
    <dc:creator>LoganPugh</dc:creator>
    <dc:date>2021-12-10T22:35:03Z</dc:date>
    <item>
      <title>Finding All Geodatabases Inside Main Folder and Subfolders</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67144#M2400</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Good morning everyone,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am working on trying to figure out how to create a list of full-path geodatabases that are inside a user-given folder.&amp;nbsp; I would like it to be able to look down into any number of subfolders to find geodatabases ( I.E. if the main folder is "D:\Data\, I would like it to find a geodatabase that is located in "D:\Data\this\is\my\deep\subfolder\path\something.gdb" ).&amp;nbsp; I currently have it working to pick up all personal databases by using regular expression matching, but the file geodatabases are giving me a lot of trouble.&amp;nbsp; Here is the code that I have so far:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;for root, dirname, filenames in os.walk ( folder ):
&amp;nbsp;&amp;nbsp;&amp;nbsp; for file in filenames:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( re.match ( "([A-Za-z0-9_]*).gdb", file ) ):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases.append ( os.path.join ( root, file ) )
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; elif ( re.match ( "([A-Za-z0-9_]*).mdb", file ) ):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases.append ( os.path.join ( root, file ) )&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;What its doing is that it will find all of the files that are in the file geodatabase folder (which are conveniently named *.gdbindex and such, which are caught by my regular expression) and put those in the list.&amp;nbsp; I just want it to be able to figure out that it is a file geodatabase and put the path of the geodatabase in the list.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you for your time!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Jeremy&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 23 Jul 2010 13:41:45 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67144#M2400</guid>
      <dc:creator>JeremyKoontz</dc:creator>
      <dc:date>2010-07-23T13:41:45Z</dc:date>
    </item>
    <item>
      <title>Re: Finding All Geodatabases Inside Main Folder and Subfolders</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67145#M2401</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;First problem is the regexp doesn't match, for it to match your pattern must account for the start of the string. Use &lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;re.search&lt;/SPAN&gt;&lt;SPAN&gt; instead if you don't want to tweak your regexp.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Also, since file GDBs are actually folders, you can look for them in your &lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;root&lt;/SPAN&gt;&lt;SPAN&gt; variable within the main loop.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;e.g. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;for root, dirname, filenames in os.walk(folder):
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (re.search("([A-Za-z0-9_]*).gdb", root)):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases.append(root)
&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for file in filenames:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (re.match("([A-Za-z0-9_]*).mdb", file)):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases.append(os.path.join(root,file))&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 22:35:03 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67145#M2401</guid>
      <dc:creator>LoganPugh</dc:creator>
      <dc:date>2021-12-10T22:35:03Z</dc:date>
    </item>
    <item>
      <title>Re: Finding All Geodatabases Inside Main Folder and Subfolders</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67146#M2402</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Logan,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you for your help!&amp;nbsp; With a minor modification to your code, I was able to get it working!&amp;nbsp; The issue with it was that by using search and just appending the root variable to my list, it was matching all of the files inside the file geodatabase, which have the extensions .gdbtables, .gdbindexes, etc.&amp;nbsp; It was picking all of those files up in the search and was appending the same geodatabase to the list multiple times.&amp;nbsp; I just did a simple check to see if the database had already been added.&amp;nbsp; It's not a huge deal now since it works correctly, but is there some regular expression to allow it to match ONLY .gdb and not .gdb******?&amp;nbsp; I can't seem to figure that one out, but it works now, so it's quite alright if no one knows it!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is the modified code that will search through a parent folder and find all personal and file geodatabases and append them to a list:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;for root, dirname, filenames in os.walk ( folder ):
&amp;nbsp;&amp;nbsp;&amp;nbsp; for file in filenames:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( re.search ( "([A-Za-z0-9_]*).gdb", root ) ):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( root not in geodatabases ):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases.append ( root )
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; elif ( re.match ( "([A-Za-z0-9_]*).mdb", file ) ):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases.append ( os.path.join ( root, file ) )&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks again Logan, you're a life saver!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Jeremy&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 22:35:06 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67146#M2402</guid>
      <dc:creator>JeremyKoontz</dc:creator>
      <dc:date>2021-12-10T22:35:06Z</dc:date>
    </item>
    <item>
      <title>Re: Finding All Geodatabases Inside Main Folder and Subfolders</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67147#M2403</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hmm, the code I posted works for me. The key was not to search for *.gdb in file in the filenames loop, but root names in the main loop, because file geodatabases are folders, not files.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;In response to your other question, you can use the $ character to match the end of the string, meaning the last character in the match must be at the end of the string. So to make my example code a little more robust (for example if someone had renamed test.gdb to test.gdb.backup, the test.gdb.backup would not be matched):&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;for root, dirname, filenames in os.walk(folder):
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (re.search("([A-Za-z0-9_]*).gdb$", root)):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases.append(root)
&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for file in filenames:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (re.match("([A-Za-z0-9_]*).mdb", file)):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases.append(os.path.join(root,file))&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 22:35:09 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67147#M2403</guid>
      <dc:creator>LoganPugh</dc:creator>
      <dc:date>2021-12-10T22:35:09Z</dc:date>
    </item>
    <item>
      <title>Re: Finding All Geodatabases Inside Main Folder and Subfolders</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67148#M2404</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Logan,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm sorry, you were completely right!&amp;nbsp; I didn't notice that you changed the loop like you did, I thought the only changes were the "file -&amp;gt; root" and "re.match -&amp;gt; re.search".&amp;nbsp; Using the code that you posted worked perfectly as well, and the knowledge of the $ will be useful too!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you very much for your time and knowledge!&amp;nbsp; I appreciate it!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Jeremy&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 23 Jul 2010 15:16:05 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67148#M2404</guid>
      <dc:creator>JeremyKoontz</dc:creator>
      <dc:date>2010-07-23T15:16:05Z</dc:date>
    </item>
    <item>
      <title>Re: Finding All Geodatabases Inside Main Folder and Subfolders</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67149#M2405</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Glad to help!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;One thing I forgot to mention. "." is a special character in regular expressions, it means to match any character except a newline. So you should escape the . with a backslash (\.)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;A description of Python's regular expression syntax is here: &lt;/SPAN&gt;&lt;A href="http://docs.python.org/release/2.5.1/lib/re-syntax.html"&gt;http://docs.python.org/release/2.5.1/lib/re-syntax.html&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;And because Access .mdb files will be found by your second regular expression, you should test whether they are valid personal geodatabases or not. However I am not aware of any foolproof way of doing that in Python. I was hoping the Describe properties for a Workspace would be of help but they do not differentiate between normal Access .MDBs and valid personal geodatabases.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 23 Jul 2010 15:50:17 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67149#M2405</guid>
      <dc:creator>LoganPugh</dc:creator>
      <dc:date>2010-07-23T15:50:17Z</dc:date>
    </item>
    <item>
      <title>Re: Finding All Geodatabases Inside Main Folder and Subfolders</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67150#M2406</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;To be ESRI-compliant, you should really use pgdbList = gp.listworkspaces("","ACCESS") and fgdbList = gp.listworkspaces("","FILEGDB") as part of the os.walk command, but how about this:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;import os
rootDir = r"D:\csny490"
gdbList = []
mdbList = []
for dirPath, dirNames, fileNames in os.walk(rootDir, topdown=True):
&amp;nbsp;&amp;nbsp; if dirPath.endswith(".gdb") or ".gdb." in dirPath:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gdbList.append(dirPath)
&amp;nbsp;&amp;nbsp; for file in fileNames:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if file.endswith(".mdb"):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mdbList.append(dirPath + "\\" + file)&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 22:35:11 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67150#M2406</guid>
      <dc:creator>ChrisSnyder</dc:creator>
      <dc:date>2021-12-10T22:35:11Z</dc:date>
    </item>
    <item>
      <title>Re: Finding All Geodatabases Inside Main Folder and Subfolders</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67151#M2407</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Logan,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I did know that '.' was a special character in regular expressions, but I wasn't sure how to make it so it would recognize the '.' in a file extension and not the special character!&amp;nbsp; Thanks for the info!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Chris,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you for letting me know about listWorkspaces, that hopefully is the answer to Logan's problem with making sure that they are actual personal geodatabases and not just access databases!&amp;nbsp; This is what I came up with by using your code and the listWorkspaces method:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;for dirPath, dirNames, fileNames in os.walk ( folder ):
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.workspace = dirPath
&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases2 = gp.listWorkspaces ( "*", "Access" )
&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( len ( geodatabases2 ) &amp;gt; 0 ):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases.append ( geodatabases2 )
&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases2 = gp.listWorkspaces ( "*", "FileGDB" )
&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( len ( geodatabases2 ) &amp;gt; 0 ):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; geodatabases.append ( geodatabases2 )&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;It walks through each directory and changes the workspace according to which folder it is in, and then checks to see if there are any personal or file geodatabases in there.&amp;nbsp; If there aren't, it will not append anything to the main list, but if there is, it will add that path to the main list.&amp;nbsp; It seems to work perfectly, and by using the ESRI method, it should only find Access databases that are valid to Arc and not ones that were created outside.&amp;nbsp; I hope this bit of code helps someone in the long run, it has definitely helped me!&amp;nbsp; Thank you both for your support!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Jeremy&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 22:35:14 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67151#M2407</guid>
      <dc:creator>JeremyKoontz</dc:creator>
      <dc:date>2021-12-10T22:35:14Z</dc:date>
    </item>
    <item>
      <title>Re: Finding All Geodatabases Inside Main Folder and Subfolders</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67152#M2408</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;From my testing (on 9.3.1 SP2, may be different in 10) gp.ListWorkspaces("*", "Access") still returns normal Access mdb files, not just personal geodatabases. It's also dreadfully slow if you're walking through a fair amount of directories.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Using .endswith is a good idea though, it's bound to be a lot faster than using an uncompiled regular expression.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 23 Jul 2010 17:14:32 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67152#M2408</guid>
      <dc:creator>LoganPugh</dc:creator>
      <dc:date>2010-07-23T17:14:32Z</dc:date>
    </item>
    <item>
      <title>Re: Finding All Geodatabases Inside Main Folder and Subfolders</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67153#M2409</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Curious to see if anyone/ESRI knows of a foolproof way in Python to determine whether an MDB file is a geodatabase or a plain old Access database.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 08 Sep 2010 17:31:54 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67153#M2409</guid>
      <dc:creator>LoganPugh</dc:creator>
      <dc:date>2010-09-08T17:31:54Z</dc:date>
    </item>
    <item>
      <title>Re: Finding All Geodatabases Inside Main Folder and Subfolders</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67154#M2410</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Maybe try looking for the standard PGDG tables inside the .mdb. For example, all PGDBs have a table called GDB_ReleaseInfo.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 08 Sep 2010 17:59:13 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67154#M2410</guid>
      <dc:creator>ChrisSnyder</dc:creator>
      <dc:date>2010-09-08T17:59:13Z</dc:date>
    </item>
    <item>
      <title>Re: Finding All Geodatabases Inside Main Folder and Subfolders</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67155#M2411</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Maybe try looking for the standard PGDG tables inside the .mdb. For example, all PGDBs have a table called GDB_ReleaseInfo.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Is there a way to do this without using a 3rd party OLEDB/Jet library? The arcgisscripting ListTables command doesn't list those tables.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 08 Sep 2010 20:05:09 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/finding-all-geodatabases-inside-main-folder-and/m-p/67155#M2411</guid>
      <dc:creator>LoganPugh</dc:creator>
      <dc:date>2010-09-08T20:05:09Z</dc:date>
    </item>
  </channel>
</rss>

