我是使用ArcGIS的地理学家,在那儿我也使用Python访问和维护我的内容(在名为ArcGIS Online的在线平台上)。为此,我使用了一个名为ArcREST的Python包。该软件包包含几个子文件夹:
ArcREST contents(图1) 通过这些,我想通过以下步骤使用子文件夹WebMap中的代码:
from arcrest import webmap
但这给了我以下错误:
Runtime error
Traceback (most recent call last):
File "", line 1, in
File "C:\Python27\ArcGIS10.3\lib\site-packages\arcrest\webmap_init_.py", line 2, in
import domain
ImportError: No module named domain
我跟踪了问题: WebMap init.py code WebMap-subfolder contents
并尝试通过以下方法解决该问题:
import sys
from os import path
sys.path.append('.../ArcREST-master/src/arcrest/webmap')
from arcrest import webmap
但是,这给了我以下错误:
Runtime error
Traceback (most recent call last):
File "", line 1, in
File "C:\Python27\ArcGIS10.3\lib\site-packages\arcrest\webmap_init_.py", line 2, in
import domain
File ".../ArcREST-master/ArcREST-master/src/arcrest/webmap\domain.py", line 6, in
from .._abstract.abstract import BaseDomain
ValueError: Attempted relative import in non-package
domain函数如下,并重定向到ArcREST的抽象子文件夹(再次参见图1): domain.py abstract.py
我认为我没有正确导入软件包的某些部分,但是我什么也没得到。有人可以帮帮我吗?我已经为此困扰了一段时间。我正在使用Python 2.7。
答案 0 :(得分:0)
首先,PyPi中似乎有此软件包的两个版本:arcrest
和ARCRest_Package
。至少在Windows上,arcrest
甚至没有包含webmap
包:),而ARCREst_Package
却没有。
如果确实需要使用该软件包,则可以git clone
或安装ARCRest_Package
。但是,我都尝试了这两种方法,可以向您保证webmap
软件包绝对不可用;一旦我将import domain
和类似的导入内容与from . import domain
和类似内容固定在一起,我在AttributeError
中发现了另一个domain.py
,其中range
@property
被注释掉了。虽然它的设置程序仍然没有注释...这不起作用:)
由于ArcREST git site已被正式存档,并将所有用户重定向到ArcGIS python API,因此我强烈建议您使用后者。