使用owslib

问题描述

我想使用owslib从URL创建geopandas数据框:

from owslib.wfs import WebFeatureService
url = 'https://somesecreturl.com/geoserver/wms?&authkey=79sd7a9sd-sda798-4531-a8a9-454hj5h3453' #(I've changed the authkey)  
wfs = WebFeatureService(url=url)

最后一行导致错误

回溯(最近通话最近一次):

文件“”,第2行,在 wfs = WebFeatureService(url = url)

文件“ C:\ ProgramData \ Anaconda3 \ lib \ site-packages \ owslib \ wfs.py”, WebFeatureService中的第42行 返回wfs100.WebFeatureService_1_0_0(clean_url,版本,xml,parse_remote_Metadata,

文件 “ C:\ ProgramData \ Anaconda3 \ lib \ site-packages \ owslib \ feature \ wfs100.py”, 第80行,新建 obj。 init (URL,版本,xml,parse_remote_Metadata,超时,

文件 “ C:\ ProgramData \ Anaconda3 \ lib \ site-packages \ owslib \ feature \ wfs100.py”, 第105行,在 init 中 self._capabilities = reader.read(self.url)

文件 “ C:\ ProgramData \ Anaconda3 \ lib \ site-packages \ owslib \ feature \ common.py”, 第53行,处于读取状态 request = self.capabilities_url(url)

文件 “ C:\ ProgramData \ Anaconda3 \ lib \ site-packages \ owslib \ feature \ common.py”, 第28行,在capabilities_url中 qs = cgi.parse_qsl(service_url.split('?')[1])

AttributeError:模块'cgi'没有属性'parse_qsl'

完全相同的代码正在另一台计算机上运行(带有某些软件包和python的其他版本)

我尝试将有效的env软件包版本导出为文本文件,并且:

conda create --name <env> --file <this file>

但这给了我

收集包元数据(current_repodata.json):完成了解决 环境:由于current_repodata.json中的repodata失败,将 重试下一个repodata源。收集软件包元数据 (repodata.json):完成解决环境:失败

PackagesNotFoundError:以下软件包不可用 当前频道:

我现在该怎么办?

解决方法

“解决方案”是卸载Anaconda并安装旧版本(Anaconda3-2019.03)

然后安装软件包:

  • 大熊猫
  • owslib

并更新pyproj软件包