0

我正在尝试使用多个搜索词通过 Google Contacts API 搜索联系人。按单个术语搜索可以正常工作并返回联系人:

query = gdata.contacts.client.ContactsQuery()
query.text_query = '1048'
feed = gd_client.GetContacts(q=query)
for entry in feed.entry:
  # Do stuff

但是,我想按多个字词搜索:

query = gdata.contacts.client.ContactsQuery()
query.text_query = '1048 1049 1050'
feed = gd_client.GetContacts(q=query)

当我这样做时,不会返回任何结果,并且到目前为止我发现空格正在被 + 符号替换:

https://www.google.com/m8/feeds/contacts/default/full?q=3066+3068+3073+3074

我现在正在挖掘 gdata-client-python 代码以找到它在哪里构建查询字符串,但也想把问题抛到那里去。

根据文档,API 支持这两种类型的搜索,在搜索相关 API(文档、日历等)时,我看到了一些类似的文档:

https://developers.google.com/google-apps/contacts/v3/reference#contacts-query-parameters-reference

谢谢!

4

1 回答 1

0

看起来我对 gdata 查询字符串功能的理解有误。

https://developers.google.com/gdata/docs/2.0/reference?hl=en#Queries

'该服务返回与所有搜索词匹配的所有条目(例如在词之间使用 AND)。

有助于阅读文档并理解它们!

于 2015-09-11T16:19:34.113 回答