1

我按照这个网站给出的例子: https ://docs.microsoft.com/en-us/outlook/rest/python-tutorial

我正在尝试获取来自特定电子邮件地址的所有消息。

按照示例,我想我需要编辑 query_parameters 代码。我已经这样做了:

query_parameters = {'$top': '30',
                      '$select': 'receivedDateTime,subject,from',
                      '$search': '"=from:someperson@mail.com"',
                      '$orderby': 'receivedDateTime DESC'}

它给了我一个错误,因为它没有在调用中返回任何内容。

有没有人成功地将示例更改为仅返回来自特定电子邮件地址的结果?

4

2 回答 2

0

我在https://github.com/jasonjoh/python_tutorial.git的项目中成功使用了以下一组查询参数

  query_parameters = {'$top': '25',
                      '$select': 'receivedDateTime,subject,from',
                      '$search': '"from:some.user@mycompany.ccTLD"',
                      }

搜索似乎不支持 orderBy 查询参数——当我尝试添加它时输出:

messages    
('400: {\r\n'
 '  "error": {\r\n'
 '    "code": "SearchWithOrderBy",\r\n'
 '    "message": "The query parameter \'$orderBy\' is not supported with '
 '\'$search\'.",\r\n'
 '    "innerError": {\r\n'
 '      "request-id": "1416dd7c-81o4-4b52-953d-ab23c0933be9",\r\n'
 '      "date": "2018-10-02T11:30:12"\r\n'
 '    }\r\n'
 '  }\r\n'
 '}')
于 2018-10-02T21:41:28.923 回答
0

您需要删除=您的$search短语。角色由=SDK 自动添加。正如它所写的那样,您的查询参数最终$search="=from:someperson@mail.com"不是预期的$search="from:someperson@mail.com".

query_parameters = {'$top': '30',
                    '$select': 'receivedDateTime,subject,from',
                    '$search': '"from:somepersotn@mail.com"'}

此外,您不能在使用时指定排序顺序$search。从文档

搜索结果按发送邮件的日期和时间排序。

于 2018-10-03T02:47:05.963 回答