OWSLib
OWSLib copied to clipboard
[WFS 2.0.0] Feature request using "POST" fails
- Version:
OWSLib = '0.25.0'
My getfeature
query:
response = wfs2.getfeature(
typename=name,
filter=filter_query,
propertyname=['geom', 'ID'],
method='GET',
outputFormat='json'
)
With method='GET'
it works fine but when method='POST'
is passed the following error occurs:
Traceback (most recent call last):
File "<src_path>", line 37, in <module>
response = ahn_wfs.getfeature(
File "<env_path>/site-packages/owslib/feature/wfs200.py", line 310, in getfeature
url, data = self.getPOSTGetFeatureRequest(
File "<env_path>/site-packages/owslib/feature/__init__.py", line 352, in getPOSTGetFeatureRequest
request.set_filter(filter)
File "<env_path>/site-packages/owslib/feature/postrequest.py", line 182, in set_filter
self._query.append(sub_elem)
TypeError: append() argument must be xml.etree.ElementTree.Element, not None
Reproducible example:
from owslib.etree import etree
from owslib.fes2 import PropertyIsEqualTo
from owslib.wfs import WebFeatureService
wfs2 = WebFeatureService(
url="https://geodata.nationaalgeoregister.nl/ahn3/wfs?request=GetCapabilities",
version="2.0.0"
)
filter_query = PropertyIsEqualTo(propertyname='has_data_laz', literal="true")
filter_query = etree.tostring(filter_query.toXML()).decode("utf-8")
response = wfs2.getfeature(
typename='ahn3:ahn3_bladindex',
filter=filter_query,
method='POST',
outputFormat='json'
)