<?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: Comparing a Search Cursor list to number of PDFs Created. in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63816#M5219</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Answered!!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 11 Mar 2013 14:46:34 GMT</pubDate>
    <dc:creator>MichelleCouden1</dc:creator>
    <dc:date>2013-03-11T14:46:34Z</dc:date>
    <item>
      <title>Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63775#M5178</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I need some help on my program. I have the parameters set to ask user to pick an mxd and the folder where those data driven PDFs are located. I started with Search Cursor to create a list from the Sheet_ID field of an mxd. To get total number of pages of that mxd. Now I need to write in for the program to compare the list created from the Sheet numbers to the number of PDFs created and tell me if there is a difference in the total count. For Example: If there are 1 out of 11 sheets for the mxd, then there should be 11 PDFs created and so on. MY code is below:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#Purpose: Compares SheeID field to the toal PDFs created from Data Driven Pages Program&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Import arcpy, os, string, sys&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#Make parameters for people to choose mxd and folder of PDFs to compare&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxdList = string.split(arcpy.GetParameterAsText(0), ";")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;dir = arcpy.GetParameterAsText(1)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#Use Search Cursor to go through Attribuite Table to get Sheet number info&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;rows = arcpy.SearchCursor(mxdList, "Sheet_ID")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#Use list from Sheet_ID field to match the number of PDFs created to get difference&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Mar 2013 17:48:13 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63775#M5178</guid>
      <dc:creator>MichelleCouden1</dc:creator>
      <dc:date>2013-03-01T17:48:13Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63776#M5179</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I think you are on the right track here, but you are not using the search cursor correctly.&amp;nbsp; A search cursor can only be ran on a feature class.&amp;nbsp; You are using a list of mxd's.&amp;nbsp; Here is a way to check a through the attribute table of your feature class that contains the Sheet_ID field.&amp;nbsp; I set up another parameter called fc_path where you can have the user point to the feature class that will have the Sheet_ID field.&amp;nbsp; It will then search through each mxd from the input list for a layer that has a data source that matches the fc (in case the layers have different names in the mxd).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
#Purpose: Compares SheeID field to the toal PDFs created from Data Driven Pages Program

import arcpy, os, sys

#Make parameters for people to choose mxd and folder of PDFs to compare
mxdList = string.split(arcpy.GetParameterAsText(0), ";")
dir = arcpy.GetParameterAsText(1)
fc_path = arcpy.GetParameterAsText(2)

for mapDoc in mxdList:
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.mapping.MapDocument(mapDoc)
&amp;nbsp;&amp;nbsp;&amp;nbsp; for lyr in m.ListLayers(mxd):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.supports('DATASOURCE'):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.dataSource == fc_path:
&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; max_list = []
&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; rows = arcpy.SearchCursor(fc_path, "Sheet_ID")
&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; for row in rows:
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; max_list.append(row.Sheet_ID)
&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; pdf_count = max(max_list)
&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; arcpy.AddMessage('Sheet count:&amp;nbsp; %s'%pdf_count)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&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; arcpy.AddError('No layers in %s match data source'%mapDoc)
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am a little confused about comparing the number of pages from the Sheet_ID field from a feature class.&amp;nbsp; Are you going to have the user select PDF's manually to check?&amp;nbsp; If this is the case you will have to find a way to match up the mxd's to the pdf's to make sure the sheet count is corresponding to the correct pdf.&amp;nbsp; This would be easy if the pdf's are named after the mxd's.&amp;nbsp; You will also need to read the page count from each pdf which can be done like this:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
pdfDoc = arcpy.mapping.PDFDocumentOpen(path)
print pdfDoc.pageCount
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 22:26:56 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63776#M5179</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2021-12-10T22:26:56Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63777#M5180</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I'm getting an "Object: Error in getting parameter as text" error. Could it be I need to drop the dir = because of the fc_path =? I did add the pdfDoc because you guessed right. I am having the user pick the mxd and the folder with all the pdfs in it. For Example the mxd is named Abilene_Base_Map and the pdf is named Abilene_Base_Map1 ,Abilene_Base_Map2 and so on.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Please check my code to make sure I got it right. Thanks!!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;import arcpy, os, string, sys&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#Make parameters for people to choose mxd and folder of PDFs to compare&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxdList = string.split(arcpy.GetParameterAsText(0), ";")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;dir = arcpy.GetParameterAsText(1)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;fc_path = arcpy.GetParameterAsText(2)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pdfDoc = arcpy.mapping.PDFDocumentOpen(path)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#Use Search Cursor to go through Attribuite Table to get Sheet number info&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for mapDoc in mxdList:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.mapping.MapDocument(mapDoc)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for lyr in m.ListLayers(mxd):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.supports('DATASOURCE'):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.dataSource == fc_path:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; max_list&amp;nbsp; = []&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; rows = arcpy.SearchCursor (mxdList, "Sheet_ID")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; for row in rows:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; max_list.append(row.Sheet_ID)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; pdf_count = max(max_list)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; arcpy.AddMessage('Sheet count: %s'%pdf_count)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; arcpy.AddError('No Layers in %s match data source'%mapDoc)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;print pdfDoc.pageCount&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Mar 2013 16:40:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63777#M5180</guid>
      <dc:creator>MichelleCouden1</dc:creator>
      <dc:date>2013-03-04T16:40:36Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63778#M5181</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am a little confused about your PDF files.&amp;nbsp; You say they are named&amp;nbsp; Abilene_Base_Map1 , Abilene_Base_Map2 etc.&amp;nbsp; Are these separate map books or are they individual 1 page pdf's that will be combined into one map book?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Mar 2013 17:56:15 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63778#M5181</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2013-03-04T17:56:15Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63779#M5182</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;The pdfs are created from the one mxd. For example: Abilene has 11 sheets (data driven pages) so when that tool makes the PDFs it makes 11 PDFS. One for each sheet or Data driven page. I am having a little trouble with your code that you sen earlier. It is saying m. is not defined. You have it typed for lyr in m.ListLayers(mxd): Can you tell me what m. is so I can fix it? &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;import arcpy, os, string, sys&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#Make parameters for people to choose mxd and folder of PDFs to compare&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxdList = string.split(arcpy.GetParameterAsText(0), ";")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;dir = arcpy.GetParameterAsText(1)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;fc_path = arcpy.GetParameterAsText(2)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#Use Search Cursor to go through Attribuite Table to get Sheet number info&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for mapDoc in mxdList:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.mapping.MapDocument(mapDoc)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for lyr in mxdList.ListLayers(mxd):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.supports('DATASOURCE'):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.dataSource == fc_path:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; max_list&amp;nbsp; = []&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; rows = arcpy.SearchCursor (mxdList, "Sheet_ID")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; for row in rows:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; max_list.append(row.Sheet_ID)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; pdf_count = max(max_list)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; arcpy.AddMessage('Sheet count: %s'%pdf_count)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; arcpy.AddError('No Layers in %s match data source'%mapDoc)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pdfDoc = arcpy.mapping.PDFDocumentOpen(path)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;print pdfDoc.pageCount&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Mar 2013 18:03:42 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63779#M5182</guid>
      <dc:creator>MichelleCouden1</dc:creator>
      <dc:date>2013-03-04T18:03:42Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63780#M5183</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;The pdfs are created from the one mxd. For example: Abilene has 11 sheets (data driven pages) so when that tool makes the PDFs it makes 11 PDFS. One for each sheet or Data driven page.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Using Data Driven Pages should be creating only one PDF that is 11 pages for that MXD.&amp;nbsp; You need to set the 'multiple_files' to the 'SINGLE_FILE' option.&amp;nbsp; That way you get all the sheets into one pdf.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//00s300000030000000" rel="nofollow noopener noreferrer" target="_blank"&gt;http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//00s300000030000000&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;As for the m, I forgot to add the import statement.&amp;nbsp; As a shortcut I always import arcpy.mapping as m so I only have to type m instead of the full arcpy.mapping namespace.&amp;nbsp; You should try re-exporting your mxd's using the multiple page option so that you will have only one pdf with all the sheets, then you can do a page count on each pdf.&amp;nbsp; I added a part at the end to make a text file inside the pdf folder that will report any that do not match up.&amp;nbsp; But as I said, I would recommend re-exporting your DDP into multi page documents.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
#Purpose: Compares SheeID field to the toal PDFs created from Data Driven Pages Program

import arcpy, os, sys
from os import path as p
from arcpy import mapping as m

#Make parameters for people to choose mxd and folder of PDFs to compare
mxdList = arcpy.GetParameterAsText(0).split(';')
pdf_path = arcpy.GetParameterAsText(1)
fc_path = arcpy.GetParameterAsText(2)

report = {}
for mapDoc in mxdList:
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.mapping.MapDocument(mapDoc)
&amp;nbsp;&amp;nbsp;&amp;nbsp; for lyr in m.ListLayers(mxd):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.supports('DATASOURCE'):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.dataSource == fc_path:
&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; max_list = []
&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; rows = arcpy.SearchCursor(fc_path, "Sheet_ID")
&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; for row in rows:
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; max_list.append(row.Sheet_ID)
&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; pdf_count = max(max_list)
&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; arcpy.AddMessage('Sheet count:&amp;nbsp; %s'%pdf_count)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&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; arcpy.AddError('No layers in %s match data source'%mapDoc)
&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; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; # List all PDF's in the pdf_path folder
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.env.workspace = ws = pdf_path
&amp;nbsp;&amp;nbsp;&amp;nbsp; for pdf_doc in arcpy.ListFiles('*.pdf'):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ''.join([a for a in pdf_doc.split('.')[0] if a.isalpha()]) == mapDoc.replace('_',''):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pdf = p.join(ws, pdf_doc)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pdf_object = arcpy.mapping.PDFDocumentOpen(pdf)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; page_count = pdf_object.pageCount
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if page_count == pdf_count:
&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; arcpy.AddMessage('%s Sheet Count matches number of pages in %s' %(mapDoc,pdf_doc))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&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; report[mapDoc] = pdf_doc

# Report maps that do not match up
if len(report &amp;gt; 0):
&amp;nbsp;&amp;nbsp;&amp;nbsp; f = open(p.join(ws,'Page_Report.txt'))
&amp;nbsp;&amp;nbsp;&amp;nbsp; for k,v in report.iteritems():
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f.write('%s Sheet Count does not match number of pages in %s\n\n' %(k,v))
&amp;nbsp;&amp;nbsp;&amp;nbsp; f.close()
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage('Created report for map documents and PDF\'s')
else:
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage('All PDF\'s have the correct amount of pages')
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 22:26:59 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63780#M5183</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2021-12-10T22:26:59Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63781#M5184</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;If your goal is to have all the PDF's into individual pages (for example if you want 11 indvidual PDF's for one map book) you could try this code:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
#Purpose: Compares SheeID field to the toal PDFs created from Data Driven Pages Program

import arcpy, os, sys
from os import path as p
from arcpy import mapping as m

#Make parameters for people to choose mxd and folder of PDFs to compare
mxdList = arcpy.GetParameterAsText(0).split(';')
pdf_path = arcpy.GetParameterAsText(1)
fc_path = arcpy.GetParameterAsText(2)

report = {}
page_list = []
for mapDoc in mxdList:
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.mapping.MapDocument(mapDoc)
&amp;nbsp;&amp;nbsp;&amp;nbsp; for lyr in m.ListLayers(mxd):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.supports('DATASOURCE'):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.dataSource == fc_path:
&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; max_list = []
&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; rows = arcpy.SearchCursor(fc_path, "Sheet_ID")
&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; for row in rows:
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; max_list.append(row.Sheet_ID)
&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; sheet_count = max(max_list)
&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; arcpy.AddMessage('Sheet count:&amp;nbsp; {0}'.format(sheet_count))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&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; arcpy.AddError('No layers in %s match data source'%mapDoc)
&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; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; # List all PDF's in the pdf_path folder
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.env.workspace = ws = pdf_path
&amp;nbsp;&amp;nbsp;&amp;nbsp; for pdf_doc in arcpy.ListFiles('%s*.pdf' %mapDoc):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; page_list.append(''.join([i for i in pdf_doc.split('.')[0] if i.isdigit()]))
&amp;nbsp;&amp;nbsp;&amp;nbsp; page_count = max(page_list)
&amp;nbsp;&amp;nbsp;&amp;nbsp; if page_count == sheet_count:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage('%s Sheet Count matches number of pages in %s' %(mapDoc,pdf_doc))
&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; report[mapDoc] = pdf_doc

# Report maps that do not match up
if len(report &amp;gt; 0):
&amp;nbsp;&amp;nbsp;&amp;nbsp; f = open(p.join(ws,'Page_Report.txt'))
&amp;nbsp;&amp;nbsp;&amp;nbsp; for k,v in report.iteritems():
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f.write('%s Sheet Count does not match number of pages in %s\n\n' %(k,v))
&amp;nbsp;&amp;nbsp;&amp;nbsp; f.close()
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage('Created report for map documents and PDF\'s')
else:
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage('All PDF\'s have the correct amount of pages')
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 22:27:02 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63781#M5184</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2021-12-10T22:27:02Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63782#M5185</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;We actually have two scripts for the data driven pages one that does one PDF with all 11 pages inside, then we have the other which does 11 different PDFs. I work for the State they have very wierd requests at times. You have to cover your A##, and be ready for any and all wierd requests. Thanks for the correction. I'll work with the code and let you know.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Mar 2013 18:39:00 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63782#M5185</guid>
      <dc:creator>MichelleCouden1</dc:creator>
      <dc:date>2013-03-04T18:39:00Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63783#M5186</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I'm getting a mxd is not defined. I'm wondering if it is how I have the parameters set up. I have the user putting in mxd then feature class then pdf folder. Should I make it the same order as the code. mxd, pdf, fc.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;import arcpy, os, sys&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;from os import path as p&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;from arcpy import mapping as m&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#Make parameters for people to choose mxd and folder of PDFs to compare&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxdList = arcpy.GetParameterAsText(0).split(';')&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pdf_path = arcpy.GetParameterAsText(1)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;fc_path = arcpy.GetParameterAsText(2)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;report = {}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;page_list = []&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#Use Search Cursor to go through Attribuite Table to get Sheet number info&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for mapDoc in mxdList:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.mapping.MapDocument(mapDoc)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for lyr in m.ListLayers(mxd):&amp;nbsp; (It stops right here with mxd error.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Mar 2013 19:07:01 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63783#M5186</guid>
      <dc:creator>MichelleCouden1</dc:creator>
      <dc:date>2013-03-04T19:07:01Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63784#M5187</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I apologize I was very sloppy with my code I posted. It was untested and was full of errors.&amp;nbsp; I just did a quick test and this should work:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
#Purpose: Compares SheeID field to the toal PDFs created from Data Driven Pages Program

import arcpy, os, sys
from os import path as p
from arcpy import mapping as m

#Make parameters for people to choose mxd and folder of PDFs to compare
mxdList = arcpy.GetParameterAsText(0).split(';')
pdf_path = arcpy.GetParameterAsText(1)
fc_path = arcpy.GetParameterAsText(2)


report = {}
page_list = []
for mapDoc in mxdList:
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage(mapDoc)
&amp;nbsp;&amp;nbsp;&amp;nbsp; mxd = arcpy.mapping.MapDocument(mapDoc)
&amp;nbsp;&amp;nbsp;&amp;nbsp; for lyr in m.ListLayers(mxd):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.supports('DATASOURCE'):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.dataSource == fc_path:
&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; max_list = []
&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; rows = arcpy.SearchCursor(lyr)
&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; for row in rows:
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; max_list.append(row.Sheet_ID)
&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; sheet_count = max(max_list)
&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; arcpy.AddMessage('Sheet count:&amp;nbsp; %s'%sheet_count)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&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; arcpy.AddError('No layers in %s match data source'%mapDoc)
&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; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; # List all PDF's in the pdf_path folder
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.env.workspace = ws = pdf_path
&amp;nbsp;&amp;nbsp;&amp;nbsp; for pdf_doc in arcpy.ListFiles('*.pdf'):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; page_list.append(int(''.join([i for i in pdf_doc.split('.')[0] if i.isdigit()])))
&amp;nbsp;&amp;nbsp;&amp;nbsp; page_count = max(page_list)
&amp;nbsp;&amp;nbsp;&amp;nbsp; if page_count == sheet_count:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage('%s Sheet Count matches number of pages in %s' %(mapDoc,pdf_doc))
&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; report[mapDoc] = pdf_doc

# Report maps that do not match up
if len(report) &amp;gt; 0:
&amp;nbsp;&amp;nbsp;&amp;nbsp; f = open(p.join(ws,'Page_Report.txt'))
&amp;nbsp;&amp;nbsp;&amp;nbsp; for k,v in report.iteritems():
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f.write('%s Sheet Count does not match number of pages in %s\n\n' %(k,v))
&amp;nbsp;&amp;nbsp;&amp;nbsp; f.close()
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage('Created report for map documents and PDF\'s')
else:
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage('All PDF\'s have the correct amount of pages')
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 22:27:04 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63784#M5187</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2021-12-10T22:27:04Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63785#M5188</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Problem! Can't have it read the layer inside the mxd because every grid layer is named differently. We have to have the user chose the feature class where it will find the Sheet_Id field to compare. Please check the code to see if I changed it correctly? Thanks!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;import arcpy, os, sys&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;from os import path as p&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;from arcpy import mapping as m&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#Make parameters for people to choose mxd and folder of PDFs to compare&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxdList = arcpy.GetParameterAsText(0).split(';')&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pdf_path = arcpy.GetParameterAsText(1)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;fc_path = arcpy.GetParameterAsText(2)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;report = {}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;page_list = []&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#Use Search Cursor to go through Attribuite Table to get Sheet number info&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for mapDoc in mxdList:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mxd = arcpy.mapping.MapDocument(mapDoc)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for lyr in m.ListLayers(mxd):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.dataSource == fc_path:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (So here I would delete the if lyr.supports("Datasource) so that it doesn't try to&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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;&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;&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;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; find the layer correct?)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; max_list&amp;nbsp; = []&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; rows = arcpy.SearchCursor(mxdList, "Sheet_ID")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; for row in rows:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; max_list.append(row.Sheet_ID)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; sheet_count = max(max_list)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; arcpy.AddMessage('Sheet count: {0}'.format(sheet_count))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; arcpy.AddError('No Layers in %s match data source'%mapDoc)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pdfDoc = arcpy.mapping.PDFDocumentOpen(path)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;print pdfDoc.pageCount&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Mar 2013 19:48:40 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63785#M5188</guid>
      <dc:creator>MichelleCouden1</dc:creator>
      <dc:date>2013-03-04T19:48:40Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63786#M5189</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Problem! Can't have it read the layer inside the mxd because every grid layer is named differently. We have to have the user chose the feature class where it will find the Sheet_Id field to compare. Please check the code to see if I changed it correctly? Thanks!&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
import arcpy, os, sys
from os import path as p
from arcpy import mapping as m

#Make parameters for people to choose mxd and folder of PDFs to compare
mxdList = arcpy.GetParameterAsText(0).split(';')
pdf_path = arcpy.GetParameterAsText(1)
fc_path = arcpy.GetParameterAsText(2)

report = {}
page_list = []

#Use Search Cursor to go through Attribuite Table to get Sheet number info
for mapDoc in mxdList:
&amp;nbsp;&amp;nbsp;&amp;nbsp; mxd = arcpy.mapping.MapDocument(mapDoc)
&amp;nbsp;&amp;nbsp;&amp;nbsp; for lyr in m.ListLayers(mxd):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.dataSource == fc_path:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (So here I would delete the if lyr.supports("Datasource) so that it doesn't try to
&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;&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;&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;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; find the layer correct?)
&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; max_list&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;&amp;nbsp; rows = arcpy.SearchCursor(mxdList, "Sheet_ID")
&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; for row in rows:
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; max_list.append(row.Sheet_ID)
&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; sheet_count = max(max_list)
&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; arcpy.AddMessage('Sheet count: {0}'.format(sheet_count))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&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; arcpy.AddError('No Layers in %s match data source'%mapDoc)
pdfDoc = arcpy.mapping.PDFDocumentOpen(path)
&lt;/PRE&gt;&lt;BR /&gt;print pdfDoc.pageCount&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Do all the layers in the mxd use the same grid?&amp;nbsp; I had it set up if all the grid layers use the same feature class, and it works in mine regardless of what the layer is called in the mxd.&amp;nbsp; If they all use different data sources it will need to be modified.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 22:27:07 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63786#M5189</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2021-12-10T22:27:07Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63787#M5190</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Yeah, I checked all grids are named differently so I need the user to pick the feature class to run the search cursor. I am new to PYthon so Thank You very much for your help. I wanted to see if I could help with the changes. I've made some changes in the code, see if I'm right or I'm way off.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;import arcpy, os, sys&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;from os import path as p&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#Make parameters for people to choose mxd and folder of PDFs to compare&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxdList = arcpy.GetParameterAsText(0).split(';')&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pdf_path = arcpy.GetParameterAsText(1)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;fc_path = arcpy.GetParameterAsText(2)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;report = {}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;page_list = []&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#Use Search Cursor to go through Attribuite Table to get Sheet number info&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for mapDoc in mxdList:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mxd = arcpy.mapping.MapDocument(mapDoc)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for fcClass in fc_path:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fc = arcpy.ListFeatureClasses(fcClass)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; max_list = []&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rows = arcpy.SearchCursor(mxdList, "Sheet_ID")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for row in rows:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; max_list.append(row.Sheet_ID)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; sheet_count = max(max_list)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; arcpy.AddMessage('Sheet count: {0}'.format(sheet_count))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; arcpy.AddError('No Layers in %s match data source'%mapDoc)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pdfDoc = arcpy.mapping.PDFDocumentOpen(path)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;print pdfDoc.pageCount&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Mar 2013 12:21:28 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63787#M5190</guid>
      <dc:creator>MichelleCouden1</dc:creator>
      <dc:date>2013-03-05T12:21:28Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63788#M5191</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I think you are closer now.&amp;nbsp; But using the pdfDoc.pageCount is not necessary since your PDF's are only one page each.&amp;nbsp; That will only return 1 for each PDF.&amp;nbsp; I did a test map book and exported each page out to single pages and was able to get the below code to work.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
#Purpose: Compares SheeID field to the toal PDFs created from Data Driven Pages Program

import arcpy, os, sys
from os import path as p
from arcpy import mapping as m

# Make parameters for people to choose mxd and folder of PDFs to compare
mxdList = arcpy.GetParameterAsText(0).split(';')
pdf_path = arcpy.GetParameterAsText(1)
fc_path = arcpy.GetParameterAsText(2)

report = {}
for mapDoc in mxdList:
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage(mapDoc)
&amp;nbsp;&amp;nbsp;&amp;nbsp; mxd = arcpy.mapping.MapDocument(mapDoc)
&amp;nbsp;&amp;nbsp;&amp;nbsp; for lyr in m.ListLayers(mxd):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.supports('DATASOURCE'):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.dataSource == fc_path:
&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; max_list = []
&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; rows = arcpy.SearchCursor(lyr)
&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; for row in rows:
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; max_list.append(row.Sheet_ID)
&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; sheet_count = max(max_list)
&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; arcpy.AddMessage('Sheet count:&amp;nbsp; %s'%sheet_count)
&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; print 'Sheet count:&amp;nbsp; %s'%sheet_count
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&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; arcpy.AddError('No layers in %s match data source'%mapDoc)
&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; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; page_list = []&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; # List all PDF's in the pdf_path folder
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.env.workspace = ws = pdf_path
&amp;nbsp;&amp;nbsp;&amp;nbsp; for pdf_doc in arcpy.ListFiles('*.pdf'):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pname = ''.join([a for a in pdf_doc.split('.')[0] if a.isalpha()])
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mname = p.basename(mapDoc.replace('_','')).split('.')[0]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if pname == mname:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; page_list.append(int(''.join([i for i in pdf_doc.split('.')[0] if i.isdigit()])))
&amp;nbsp;&amp;nbsp;&amp;nbsp; page_count = max(page_list)
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage('Page Count:&amp;nbsp; %s'%page_count)
&amp;nbsp;&amp;nbsp;&amp;nbsp; print 'Page Count:&amp;nbsp; %s'%page_count
&amp;nbsp;&amp;nbsp;&amp;nbsp; if page_count == sheet_count:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage('%s Sheet Count matches number of pages in %s' %(mapDoc,pdf_doc))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print '%s Sheet Count matches number of pages in %s' %(mapDoc,pdf_doc)
&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; report[mapDoc] = pdf_doc

# Report maps that do not match up
if len(report) &amp;gt; 0:
&amp;nbsp;&amp;nbsp;&amp;nbsp; f = open(p.join(ws,'Page_Report.txt'),'w')
&amp;nbsp;&amp;nbsp;&amp;nbsp; for k,v in report.iteritems():
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f.write('"%s" Sheet Count does not match number of pages in "%s"\n\n' %(k,v))
&amp;nbsp;&amp;nbsp;&amp;nbsp; f.close()
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage('Created report for map documents and PDF\'s')
&amp;nbsp;&amp;nbsp;&amp;nbsp; print 'Created report for map documents and PDF\'s'
else:
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddMessage('All PDF\'s have the correct amount of pages')
&amp;nbsp;&amp;nbsp;&amp;nbsp; print 'All PDF\'s have the correct amount of pages'

&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Since your PDF's are named like Abilene_Base_Map1, Abilene_Base_Map2, etc you will just want to extract the number that is on the PDF.&amp;nbsp; I then put those numbers in a list and use the max() function to find the maximum value (the last page of the PDF) and if that matches the max page number from the Sheet_ID field then it will tell you that there is the correct amount of pages.&amp;nbsp; If not, it will create a text file in the PDF folder that tells you which mxd and map book do not match up. The fc_path parameter is for the user to select the feature class that has the grid.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The text file had this output:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
"C:\Users\GIS\Desktop\DDP\mxd\other_map.mxd" Sheet Count does not match number of pages in "other_map3.pdf"
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 22:27:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63788#M5191</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2021-12-10T22:27:10Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63789#M5192</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I think I am the one causing this error. Could it be how I have the parameters setup? Look at attached. It goes 12 times searching the mxd and says it can't find data source.&amp;nbsp; I'm puzzled because I am putting in the mxd, then putting in the PDF folder, and then putting in the feature class that has the field Sheet_ID. I think its me and my parameter setup.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Mar 2013 15:03:20 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63789#M5192</guid>
      <dc:creator>MichelleCouden1</dc:creator>
      <dc:date>2013-03-05T15:03:20Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63790#M5193</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hmmm I am not sure.&amp;nbsp; What are the input parameters you are using?&amp;nbsp; It looks like it only worked on one of them.&amp;nbsp; If all these maps use the same grid feature class it should work even if the layers are named differently in the map because it checks by data source and not layer name.&amp;nbsp; But if they all use a different grid feature class this will be tricky.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Mar 2013 15:11:08 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63790#M5193</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2013-03-05T15:11:08Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63791#M5194</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;The code should be fine. I have it where my parameters (listed in order) are set for the user to select one mxd (which is the one that does have the fc in it), then select the folder that holds all the pdfs that were created, and then last select the grid layout(feature class\Shapefile) for that mxd (that has the field Sheet_ID). Its wierd! It goes through some of the steps gives a sheet count right from the attribute table "Sheet count: Sheet 9 out of 11 Base Sheets" and then goes through a few more and then gives a page count: 11. I'll continue to look it over.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Mar 2013 18:00:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63791#M5194</guid>
      <dc:creator>MichelleCouden1</dc:creator>
      <dc:date>2013-03-05T18:00:36Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63792#M5195</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;So maybe that's it. I have to make my parameters for multiple mxds and all of their featureclass\shapefiles (multiple fc's). Now like I said before all maps grids have different names. But if we put in each feature class, it should work. Can't we make the code look through one feature class?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Mar 2013 18:46:39 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63792#M5195</guid>
      <dc:creator>MichelleCouden1</dc:creator>
      <dc:date>2013-03-05T18:46:39Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63793#M5196</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Yes, that is possible.&amp;nbsp; Or one thing that may be easier, if you are able to make the grid layer the same name in all mxd's I would just do that.&amp;nbsp; Otherwise you could set the parameter to accept multi values and check if any of the layers in each mxd have a data source inside the list of grid feature classes.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Mar 2013 19:05:42 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63793#M5196</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2013-03-05T19:05:42Z</dc:date>
    </item>
    <item>
      <title>Re: Comparing a Search Cursor list to number of PDFs Created.</title>
      <link>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63794#M5197</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Can't change the name of the grid files because they are at different locations around the State of Texas. For Example: Houston has one that covers all its counties and then that tells us how many sheets (Data Driven Pages) are needed for that reference scale. If that makes sense. If the program though searches for the datasource, can I not have the program search the one featureclass\shapefile for the field Sheet_ID. Because, sheet_ID is in the feature class\shapefile. I'll try to figure out how to change that.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Also, will the program run on one mxd?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Mar 2013 19:33:33 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/comparing-a-search-cursor-list-to-number-of-pdfs/m-p/63794#M5197</guid>
      <dc:creator>MichelleCouden1</dc:creator>
      <dc:date>2013-03-05T19:33:33Z</dc:date>
    </item>
  </channel>
</rss>

