아나콘다와 ArcPy를 함께 사용하게 하시겠습니까?


23

나는 "에 대한 답변에서 단계별 지침을 따르려고 노력하고 어떻게는 ArcGIS 파이썬 설치를 분리하는 "하지만, 경로 파일을 찾을 수 없습니다 DTBGGP64.pthC:\Python27\ArcGIS10.2\Lib\site-packages.

누군가 비슷한 문제에 직면 했습니까?

Anaconda에게 arcpy가 설치된 위치를 알려주는 경로 파일을 포함하여 해결 방법이 있는지 궁금합니다. 다음 텍스트가 포함 된 .pth 파일을 만들려고했습니다.

# .pth file for arcpy

C:\Program Files (x86)\ArcGIS\Desktop10.2\bin 
C:\Program Files (x86)\ArcGIS\Desktop10.2\arcpy
C:\Program Files (x86)\ArcGIS\Desktop10.2\Scripts

그것을 저장했습니다 C:\Anaconda\Lib\site-packages(즉, 실제로 모든 패키지가 저장되어있는 경우)하지만 다음 오류가 발생합니다.

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Program Files (x86)\ArcGIS\Desktop10.2\arcpy\arcpy\__init__.py", line 21, in <module>
    from arcpy.geoprocessing import gp
  File "C:\Program Files (x86)\ArcGIS\Desktop10.2\arcpy\arcpy\geoprocessing\__init__.py", line 14, in <module>
    from _base import *
  File "C:\Program Files (x86)\ArcGIS\Desktop10.2\arcpy\arcpy\geoprocessing\_base.py", line 14, in <module>
    import arcgisscripting
ImportError: DLL load failed: %1 is not a valid Win32 application.

Windows 7 (64bit) 플랫폼에서 conda 3.7-py27을 실행 중입니다. Anaconda는에 설치 C:\Anaconda되고 ArcMap은에 설치됩니다 C:\ArcGIS\Desktop10.2. Anaconda와 Arcpy를 함께 사용할 수있는 대체 솔루션이 있습니까? Powershell에서 스크립트를 실행할 수 있기를 원합니다.


cmd 프롬프트에서 'python'을 입력하면 어떤 버전 / 설치가 에코됩니까? (즉, arcgis 또는 anaconda?)-죄송합니다. 이것이 조금 오래된 것으로 나타났습니다. 지금까지 해결되었습니다.
fluidmotion

Esri UC의 개발자로부터 Anacondas가 ArcGIS 10.5에 내장 될 것이라고 들었습니다. 필요한 모듈 만 설치하는 것이 좋습니다. 그렇지 않으면 지저분해질 수 있습니다.
dgrubman

이것은 다음과 같습니다 ^ ^ ArcGIS 10.5 시스템 요구 사항
WxCZar

답변:


13

Anaconda 설치에서 64 비트 버전의 Python을 사용하고 있으며 ArcMap의 Python은 32 비트입니다. 64 비트 ArcGIS 빌드 (64 비트 백그라운드 지오 프로세싱 또는 서버용 ArcGIS)를 설치하고 대신이를 가리 키거나 32 비트 Anaconda 인스턴스를 설치 한 후 다시 시도해야합니다. 참조 다운로드 페이지 및 32 비트 설치를 얻을.


33

이 튜토리얼에서는 ArcGIS 10.4 및 ArcGIS Pro 1.3에서 작동하도록 콘다 환경을 설정하는 방법을 보여줍니다.

ArcGIS 10.4로 Anaconda를 설정하는 워크 플로우

  • Esri의 파이썬 스택을 깨기 위해 Windows 환경 (경로, 레지스트리)을 손상시키지 않고 Anaconda를 설치하십시오
  • 원하는 특정 애드온으로 Anaconda를 구성하고
  • 적절한 Anaconda 컨텐츠를 인식하도록 ArcGIS의 Python을 구성하십시오.

1) 모든 사용자를위한 Anaconda 설치

  1. http://continuum.io/downloads로 이동
  2. 다운로드 32 비트 아나콘다 (파이썬 2.7) 버전을
  3. 설치 대화 상자에서 :
    • 모든 사용자를 위한 설치 선택
    • 기본적으로 폴더에 설치 (C : \ Anaconda2)
    • 중요 : ArcGIS (또는 다른 소프트웨어)가 손상되지 않도록하려면 확인란을 선택 취소합니다 (a) Anaconda를 기본 Python으로 설정하고 (b) Anaconda의 Python을 PATH에 추가합니다.
  4. 시작> 모든 프로그램 (앱)> Anaconda2 (32 비트)> Anaconda Prompt로 이동하십시오. 마우스 오른쪽 버튼을 클릭하고 관리자 권한으로 실행

2) ArcGIS와 함께 사용할 Anaconda 환경 구성

  1. ArcGIS가 사용하는 numpy 및 matplotlib 버전을 찾으십시오.
ArcMap 및 해당 Python 창을 열고 다음 명령을 입력하십시오.

    • >>> 수입 시스템, numpy, matplotlib
    • >>> print (sys.version, numpy .__ version__, matplotlib .__ version__)
    • ( '2.7.10 (기본값, 2015 년 5 월 23 일, 09:40:32) [MSC v.1500 32 비트 (Intel)]', '1.9.2', '1.4.3')
  1. ArcGIS와 호환되는 Anaconda 환경 생성
    • Anaconda 명령 프롬프트 (시작> 모든 프로그램 (앱)> Anaconda2 (32 비트)로 이동하여 " Anaconda 프롬프트 "선택)를 마우스 오른쪽 단추로 클릭하고 관리자 권한으로 실행을 클릭하십시오 .
    • 유형 (ArcGIS 버전에 따라 ArcGIS 10.4를 예로 사용합니다) :
    • "conda create -n arc104 python = 2.7.10 numpy = 1.9.2 matplotlib = 1.4.3 pyparsing xlrd xlwt pandas scipy ipython ipython-notebook ipython-qtconsole"
    • 계속하려면 y 를 입력하십시오 .
    • 그런 다음 Anaconda의 conda 명령은 환경 서브 디렉토리를 설정합니다 (예 : "C : \ Anaconda2 \ envs \ arc104"). 다운로드 한 패키지를 설치하십시오.
  2. 가상 환경 테스트
    • Anaconda 명령 프롬프트에서 다음을 입력하십시오. activate arc104
    • conda list를 입력 하십시오 . 설치된 패키지 목록을 볼 수 있습니다.
  3. 더 많은 패키지 추가
    • conda install을 사용하여 더 많은 패키지를 추가 할 수 있지만 환경 버전의 python 또는 numpy를 변경하지 않는 버전 번호를 지정해야합니다 (또는 ArcGIS가 더 이상 해당 환경을 사용할 수 없음).
    • 파이썬 공간 분석 라이브러리 ( pysal ) 모듈을 추가해 봅시다 .
    • Anaconda 프롬프트 에서 다음 명령을 입력하십시오 . "conda install -n arc104 python = 2.7.10 numpy = 1.9.2 matplotlib = 1.4.3 pysal"

3) Anaconda를 보도록 ArcGIS 구성

  1. Anaconda Python에서 ArcPy로
    • 복사 Desktop10.4.pth의 사이트 패키지 폴더 아나콘다 환경에 파일을 :
    • 보낸 사람 : C : \ Python27 \ ArcGIS10.4 \ Lib \ site-packages \ Desktop10.4.pth
    • 받는 사람 : C : \ Anaconda2 \ envs \ arc104 \ Lib \ site-packages \ Desktop10.4.pth
  2. 아나콘다 파이썬에 대한 Arcpy
    • 컨텐츠가 "C : \ Anaconda \ envs \ arc104 \ lib \ site-packages"인 zconda.pth (경로) 파일을 작성하십시오 .
    • 그런 다음 zconda.pth를 C : \ Python27 \ ArcGIS10.4 \ Lib \ site-packages에 복사 하십시오.
  3. ArcMap에서 테스트
    • 일반 사용자로서 ArcMap을 시작하고 Python 창을 엽니 다.
    • "import pysal"유형
    • "pysal"을 입력하십시오. pysal 제공 기능 목록이있는 팝업 메뉴는 설치가 성공적으로 완료되었음을 나타냅니다.
  4. PyCharm에서 테스트
    • PyCharm을 시작하고 File \ Settings…에서 Project를 선택한 다음 Project Interpreter를 선택하십시오.
    • Project Interpreter의 드롭 다운 목록을 무시하고 코그 버튼을 클릭하여 로컬 추가를 클릭 한 후 파일 브라우저에서 C : \ Anaconda2 \ envs \ arc104 \ python.exe를 선택하십시오.
    • 스크립트를 실행하려면 프로젝트 창에서 마우스 오른쪽 버튼을 클릭하고 실행 또는 디버그를 선택하십시오.
    • Python 콘솔이 arc104 환경을 사용하도록 PyCharm을 다시 시작하십시오.

ArcGIS Pro 1.3으로 Anaconda를 설정하는 워크 플로우

1) ArcGIS Pro와 호환되는 Anaconda 환경 생성

  • C : \ Program Files \ ArcGIS \ Pro \ bin \ Python \ envs에서 arcgispro-py3 폴더를 복사하여 C : \ Anaconda2 \ envs에 붙여 넣습니다.
  • C : \ Anaconda2 \ envs의 arcgispro-py3 폴더 이름을 arcpro로 바꿉니다.

2) 가상 환경 테스트

  • Anaconda 명령 프롬프트에서 다음을 입력하십시오. activate arcpro
  • conda list를 입력 하십시오 . 설치된 패키지 목록을 볼 수 있습니다

3) 더 많은 패키지 추가

  • 파이썬 공간 분석 라이브러리 ( pysal ) 모듈을 추가해 봅시다 .
  • Anaconda 프롬프트 에서 다음 명령을 입력하십시오 . "conda install pysal"

4) Anaconda를 보도록 ArcGIS를 구성하거나 그 반대로

  • Anaconda Python에서 ArcPy로
    • "C : \ Anaconda2 \ envs \ arcpro \ lib \ site-packages"내의 ArcGISPro.pth (경로) 파일을 편집하십시오 .
    • 상대 ArcPy 경로를 C : \ Program Files \ ArcGIS \ Pro \ Resources \ ArcPy로 변경하십시오.
    • 상대 ArcToolBox 경로를 C : \ Program Files \ ArcGIS \ Pro \ Resources \ ArcToolBox로 변경하십시오.
  • 아나콘다 파이썬에 대한 Arcpy
    • 컨텐츠가 "C : \ Anaconda2 \ envs \ arcpro \ lib \ site-packages"인 zconda.pth (경로) 파일을 작성하십시오 .
    • 그런 다음 zconda.pth를 C : \ Program Files \ ArcGIS \ Pro \ bin \ Python \ envs \ arcgispro-py3 \ lib \ site-packages에 복사하십시오.
  • ArcGIS Pro에서 테스트
    • ArcGIS Pro를 시작하고 Python 창을 엽니 다
    • "import pysal"유형
    • "pysal"을 입력하십시오. pysal 제공 기능 목록이있는 팝업 메뉴는 설치가 성공적으로 완료되었음을 나타냅니다.
  •  PyCharm에서 테스트
    • PyCharm을 시작하고 File \ Settings…에서 Project를 선택한 다음 Project Interpreter를 선택하십시오.
    • Project Interpreter의 드롭 다운 목록을 무시하고 코그 단추를 클릭하여 로컬 추가를 클릭 한 후 파일 브라우저에서 C : \ Anaconda2 \ envs \ arcpro \ python.exe를 선택하십시오.
    • 스크립트를 실행하려면 프로젝트 창에서 마우스 오른쪽 버튼을 클릭하고 실행 또는 디버그를 선택하십시오.
    • Python 콘솔이 arcpro 환경을 사용하도록 PyCharm을 다시 시작하십시오.

참고 문헌

  1. https://goo.gl/pOyLA9

이 모든 것이 훌륭하게 작동하며 Anaconda 패키지는 ArcGIS 내부에 있으며 그 반대도 마찬가지입니다. Anaconda의 RDBMS (Oracle) 소스 기능 클래스에서 import arcpy를 누른 다음 arcpy.Describe를 시도하면 IOError : ...가 존재하지 않습니다. 파일 지오 데이터베이스 피처 클래스에서 잘 작동하지만 Oracle에 연결되지 않는 것 같습니다 (예 : arcpy.Describe (r'C : \ temp \ password_saved_sde_file.sde \ EDGIS.ElectricDataset \ EDGIS.Anchor ')).
Phil Penn

7

이 문제를 해결하려면 python27 \ Lib \ site-packages 폴더로 이동하여 "C : \ Python27 \ ArcGIS10.1 \ Lib \ site-packages"아래에 있으며 Desktop10.1.pth 파일을 찾으십시오.

내 시스템에서 Desktop10.1.pth 파일을 "C : \ AppData \ Local \ Continuum \ Anaconda \ Lib \ site-packages"에 복사하면 문제가 해결되었습니다.

Anaconda 64 비트를 실행하는 경우 ArcGIS가 32 비트를 실행하기 때문에 arcpy를 가져 오려고하면 다른 오류가 발생합니다. 따라서 64 비트가 아닌 Anaconda 32 비트가 설치되어 있는지 확인해야 ArcGIS와 일치합니다. 파일이 복사되고 Anaconda 32 비트가 있으면 import arcpy가 작동합니다.


3

Anaconda 이전에 Arc를 설치 한 경우 기본 IDLE, Python Window (Arc) 및 Python 콘솔은 항상 Arc 설치 모듈 (예 : C:\Python27\ArcGIS <version>\Lib(및 / 또는)) 에서 가져옵니다 Lib\site-packages. Anaconda와 함께 패키지를 설치하고 Arc의 Python 설치와 함께 사용하려는 경우 Python 설치간에 공유하려면 .pth 파일을 작성해야합니다 (약식 읽기 ).

예를 들어, Anaconda에서 판다 패키지를 사용하고 싶었습니다. Arc의 설치를 Anaconda 사이트 패키지에 연결하기 anaconda.pth위해 내용이 포함 된 Arc의 사이트 패키지 폴더에 텍스트 파일을 만들었습니다 C:\Anaconda\Lib\site-packages. 이제 import pandasArc에 설치된 Python 내부에서 ImportError없이 사용할 수 있습니다. numpy에 문제가 있으면 Arc가 설치된 numpy폴더의 이름을로 바꿉니다 _numpy.

반대로, Desktop<version>.pthArc site-packages 폴더 의 파일을 Anaconda의 파일 (아 카피 패키지의 실제 위치를 지정 )에 복사하여 붙여 넣은 다음 Anaconda의 Arc 사이트 패키지 폴더를 가리키는 다른 .pth 파일을 만드십시오. Spyder에서 Arc 패키지를 사용하면 사용할 수 있습니다.


2

다른 사용자가 github에 대해 비슷한 질문을했습니다. 다음은 아나콘다에 대한 아크 피 자동 완성 데이터를 가져 오기 위해 한 사용자가 권장 한 요점입니다.

DamnWidget은 2 월 26 일에 댓글을 달았습니다 https://github.com/DamnWidget/anaconda/issues/284

PowerShell 또는 CMD.exe를 열고 Sublime Text 3 % APPDATA %의 Packages 폴더 아래 anaconda 설치로 이동하십시오. anaconda_lib 폴더에 CD를 넣고 해당 경로에서 대화 형 Python 인터프리터를 시작하십시오.

다음을 복사하여 붙여 넣습니다.

import jedi

print(jedi.Script('import arcpy; arcpy.').completions())

그런 다음 (적어도 나를 위해) cmd 창에서 많은 것들을 반환했으며 작동하는 것 같습니다. Sublime Text를 다시 열었고 arcpy 함수에 대해 자동 완성을 가져옵니다.

내 문제는로드하는 데 5 초 이상 걸리는 것으로, 몇 초 이상 메모리에 arcpy를로드하지 않는 것 같습니다. 그러나 그것은 다른 생각입니다 ...


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.