将request.get中的参数的JSON传递到WFS服务

时间:2019-07-26 18:17:20

标签: python parameters python-requests

我正在尝试在request.get中使用params参数来查询WFS服务。 Requests文档说params通常是一个字典,例如{'one':1,'two':2},这很好用。

但是,WFS允许通过添加字符串“ cql_filter”和过滤器参数来对查询中的某些字段进行过滤。

我想添加用于过滤查询的参数,但是这样做会添加字典的另一层(如JSON),因此在请求.get查询中不会正确格式化

请求文档和类似的StackOverflow答案说要放{'some_field':[1,2,3]},但这是不够的,因为我需要的更像是JSON,例如

    params = {'some_params':'some_values',
              'cql_filter':{'date_field>=':'01-01-2019',
                            'search_field1':'kittens',
                            'search_field2':'puppies'}
             }

试图将以上内容添加到Get命令之类

payload = requests.get(url, params = params)
print(payload.url)

产量

http://my_url.com/WFS/?some_params=somevalues&cql_filter=date_field>=&cql_filter=search_field1&cql_filter=search_field2

但这是对我的网站的无效搜索。我需要的是

http://my_url.com/WFS/?some_params=somevalues&cql_filter=date_field>=01-01-2019&search_field1='kittens'&search_field2='puppies'

0 个答案:

没有答案