ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
	
			
		
		
			
				
																			
								Herber 							 
						Интересующийся 			
		Сообщения:  16Зарегистрирован:  17 сен 2020, 11:18Репутация:  0 Откуда:  Махачкала 
		
						
					
													
							
						
									
						Сообщение 
					 
								 Herber  17 мар 2021, 16:07 
			
			
			
			
			
			У меня есть .lyrx файлы. Хочу оттуда вытянуть таблицу аттрибутов через питон. Пробую данным способом, но поля пустые. 
Код: Выделить всё 
import arcpy
import os
lyrFile = arcpy.mp.LayerFile( os.path.join(path,"Счётчики.lyrx"))
for lyr in lyrFile.listLayers():
    print(lyr.name)
    desc = arcpy.Describe(lyr)
    try:
        fields =  desc.fields
        for field in fields:
            print(field)
    except:
        pass 
		 
				
		
		 
	 
				
		
		
			
				
																			
								Ivor 							 
						Завсегдатай 			
		Сообщения:  345Зарегистрирован:  11 дек 2006, 09:46Репутация:  102 Откуда:  Иркутск 
		
						
					
													
							
						
									
						Сообщение 
					 
								 Ivor  17 мар 2021, 16:28 
			
			
			
			
			
			Так lyr (и lyrx тож) не содержат данные, а только оформление и ссылку на собственно данные. Сами то файлы данных (shp аль база геоданных) у вас имеется и лежит там, куда указывает lyrx?
			
			
									
						
										
						 
		 
				
		
		 
	 
				
		
		
			
				
																			
								Herber 							 
						Интересующийся 			
		Сообщения:  16Зарегистрирован:  17 сен 2020, 11:18Репутация:  0 Откуда:  Махачкала 
		
						
					
													
							
						
									
						Сообщение 
					 
								 Herber  17 мар 2021, 17:01 
			
			
			
			
			
			Есть 
			
			
									
						
										
						 
		 
				
		
		 
	 
				
		
		
			
				
																			
								Herber 							 
						Интересующийся 			
		Сообщения:  16Зарегистрирован:  17 сен 2020, 11:18Репутация:  0 Откуда:  Махачкала 
		
						
					
													
							
						
									
						Сообщение 
					 
								 Herber  18 мар 2021, 09:52 
			
			
			
			
			
			Код: Выделить всё 
desc = arcpy.Describe('Счетчики')
for f in desc.fields:
    print(f.name)
Я получил все заголовки таблиц. А вот само содержимое как получить?
OID
Shape
Name
FolderPath
SymbolID
AltMode
Base
TimeSpan
TimeStamp
BeginTime
EndTime
Snippet
PopupInfo
HasLabel
LabelID
 
		 
				
		
		 
	 
				
		
		
			
				
																			
								Ivor 							 
						Завсегдатай 			
		Сообщения:  345Зарегистрирован:  11 дек 2006, 09:46Репутация:  102 Откуда:  Иркутск 
		
						
					
													
							
						
									
						Сообщение 
					 
								 Ivor  18 мар 2021, 10:09 
			
			
			
			
			
			Завести курсор и итерацией по нему. Сейчас вот прямо код не воспроизведу, но он в помощи практически сразу ищется
			
			
									
						
										
						 
		 
				
		
		 
	 
				
		
		
			
				
																			
								Skywalker 							 
						Участник 			
		Сообщения:  82Зарегистрирован:  01 май 2013, 22:38Репутация:  34 Откуда:  Сыктывкар 
		
						
					
													
							
						
									
						Сообщение 
					 
								 Skywalker  18 мар 2021, 10:38 
			
			
			
			
			
			Попробуйте таким образом:
Код: Выделить всё 
import arcpy
fgdb = 'C:/geodatabase.gdb/table'
field = 'field1'
cursor = arcpy.SearchCursor(fgdb)
for row in cursor:
    print(row.getValue(field))
 
		 
				
		
		 
	 
	
	
	
		
		Сейчас этот форум просматривают: нет зарегистрированных пользователей и 6 гостей