Використовуєте функцію ArcGIS в Python без запуску ArcMap (наприклад, окремий редактор / середовище)?


26

Я намагаюся зробити наступний крок у програмуванні ArcGIS за допомогою Python і побачити, чи дійсно можливо запустити мій скрипт / код, не завантажуючи ArcMap і вставити їх у вікно Python. Я думаю, я зробив би це уявлення, якесь IDE, характерне для Python, що щось завантажує з ArcGIS.

Як я став би робити це?


Оновлення: короткий зміст рішення

Я пішов маршрутом Eclipse + PyDev. Ось мої замітки про встановлення всього та налагодження його роботи:

Завантажте затемнення

Це трохи заплутано, враховуючи всі різні аромати, які доступні (Java, Java EE, C / C ++ тощо). Я пішов з C / C ++, оскільки це мені знайоме. Це не має особливого значення, оскільки PyDev встановлюється після цього кроку. Виберіть те, що хочете.

Встановіть PyDev

PyDev буде встановлений через Eclipse. Вказані інструкції спрацювали чудово.

Налаштування PyDev

Вищезазначене запитання дає скріншот конфігурації Windows, тоді як це посилання з блогу ESRI містить більше інформації для систем Unix, хоча це ще з 2008 року.

Пройшов тестовий сценарій

Запустив сценарій, над яким я працював, і він спрацював. Мабуть, є деякі відмінності в виконанні коду таким чином у способі доступу до форм-файлів та робочої області тощо. Потрібно більше чіткості. Більше дізнатися тут.


Зізнаюся, це здається майже більшою мірою питанням Python, а також зраджує моє незнання оточення Python, але, сподіваємось, відповідь корисна іншим, хто не знайомий з ArcGis + Python!
mindless.panda

Я думаю, що використовувати IDLE було б простіше. PyDev трохи перевантажений в цій ситуації, я думаю. Ви також можете створити деякі моделі в Model Builder та експортувати їх у формат .py. Таким чином, ви відчуваєте код Python.
РК

Це просто повторення того, що я сказав! Це найкраще, хоча це не так. Ключовим способом його використання є те, що ви можете створювати Об'єкти та класи, які деякі інші способи не підтримують. Це дозволяє по-справжньому зосередитись на створенні крекінг-коду, розгорнутого на сервері. Удачі!
Волохатий

2
Тут безглуздо, лише одна відповідь згадує рішення Eclipse + PyDev. Чи є причина, що ви її не проголосували?
whuber

Немає. Я прийняв пропозицію Eclipse, оскільки саме таким шляхом я пішов і віддав перевагу. Я відповів лише на власне запитання, щоб документувати процес налаштування. Якась причина моєї відповіді повинна бути змінена у питанні? Можливо, це має бути КВ?
mindless.panda

Відповіді:


11

Найкращий спосіб я знайшов використовувати Python - це використання Eclipse з PyDev. Це хороший IDE для розробки та дозволяє вбудовувати налагодження, а не відзначати налагодження рядків, і це все спонукало мене створити дуже професійні додатки для управління даними в широкому масштабі.

На мою думку, IDLE корисний лише для тестування скриптів, і не підходить для проектування складних об'єктних рішень.

Це також неймовірно просто налаштувати.


Чи багато стосується отримання Eclipse + PyDev для роботи з функціоналом ArcGIS? Інші відповіді, схоже, вказують на деякі особливості використання нестатусного встановленого Python?
mindless.panda

Нічого, просто переконайтесь, що у вас встановлений арггізський робочий стіл, і налаштуйте Eclipse для роботи з PyDev, і ви не вдома. Щоб його налаштувати, знадобилося 5 хвилин, і тоді все, що вам потрібно зробити, - це посилання arcpy у вашому сценарії. Серйозніше, я не бачив більш легкого, кращого способу зробити це.
Волохатий

15

Я щойно почав стикатися з Python та arcpy, і мені здалося, PyScripter дуже корисний. Це повноцінний IDE Python


2
Кращий IDE, який я раніше використовував, - це PyScripter, і це безкоштовно!
Хорнбідд

2
PyScripter дійсно чудовий. Відмінне завершення коду, підсвічування синтаксису, пошук та заміна, вкладки для показу декількох PY-скриптів. На мою думку набагато корисніше, ніж IDLE.
RyanDalton

15

Якщо я розумію питання, потрібно запустити сценарії окремо, поза сеансом ArcMap. Повністю робити. Збережіть свій код у файлі Python (.py). Щодо редагування, для цього ви можете використовувати IDLE або будь-який текстовий редактор (навіть Блокнот). Іноді, коли ви починаєте, простіше користуватися текстовим редактором, щоб ви могли зосередитись на вивченні коду, а не IDE. Переконайтеся, що ви налаштували змінні середовища PATH належним чином, щоб вони включали в себе каталог встановлення Python, наприклад:

C:\Python26\ArcGIS10.0\Lib\site-packages\;C:\Python26\ArcGIS10.0;C:\Python26\ArcGIS10.0\Scripts

Тоді просто питання відкриття командного рядка (Пуск> Виконати> введіть 'cmd' [без лапок]) і введіть:

python c:\path\to\python\script.py

Тепер це передбачає, що всі ваші шляхи передачі даних зафіксовані в сценарії.

Це основи. Звичайно, існує набагато більше, як, наприклад, використання вхідних параметрів.


3
лише коментар щодо IDLE або стандартного редактора тексту. Я особисто вважаю PythonWin набагато простішим способом роботи, оскільки він має кращі можливості налагодження - вирішальне значення під час навчання. Дивіться інструкції щодо встановлення PythonWin з ArcGIS 10. Вам потрібно переконатися, що ви встановили версію PythonWin з DVD ArcGIS, інакше це може порушити встановлення Python.
Стівен Ведучий

6

Коли ArcGIS встановлює, він встановлює власну версію python (тобто вам не потрібно імпортувати залежності) .. не забудьте використовувати цю ..

Я використовую python CLI як калькулятор, а також виконуючи збережені сценарії.

Python як калькулятор чудовий, тому що ви можете визначити змінні .. Цю пораду я отримав із підручників python http://docs.python.org/

У мене є ярлик до CLI через командний рядок на моїй панелі завдань% windir% \ system32 \ cmd.exe / k "C: \ Python26 \ ArcGIS10.0 \ python.exe"

Я використовував заплановані завданнями Windows, щоб виконати деяке обслуговування за допомогою скриптів, які я експортував із конструктора моделей, а потім зламав деякі зміни вбудованих програм python, такі як застосування дат до імен файлів для резервного копіювання.


5

Я вважаю, що IDE для python поставляється з установкою ArcGIS-10. Він називається IDLE і є простим, але ефективним інструментом для взаємодії з ArcPy без відкриття екземпляра самого ArcMap. Ви повинні знайти його в каталозі "Python 2.6" вашої установки ArcGIS у меню "Пуск". Будьте впевнені, import arcpyперш ніж виконувати щось конкретне для пакета! Будь-який приклад сценарію, який ви бачите у посиланні ArcPy для автономних сценаріїв, буде працювати в інтерфейсі IDLE.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.