簡體   English   中英

Imaplib使用python搜索帶有特殊字符的主題行

[英]Imaplib search for subject line with special characters using python

我正在嘗試使用搜索特殊字符主題行

typ, msg_ids = self.imap.uid('search', None, 'SUBJECT "Report #160496147 : "AU report QTD date wise MediaOps" from Dhruv Sapra"')

但它引發了錯誤的請求命令錯誤。

任何想法為什么會發生,以及任何解決方案。

以下解決方案不起作用。

Python3 IMAP搜索特殊字符

您的問題首先是在帶引號的字符串中有雙引號,這是一種語法錯誤:

typ, msg_ids = self.imap.uid('search', None, 'SUBJECT "Report #160496147 : "AU report QTD date wise MediaOps" from Dhruv Sapra"')

嘗試轉義內部引號:

typ, msg_ids = self.imap.uid('search', None, 'SUBJECT "Report #160496147 : \"AU report QTD date wise MediaOps\" from Dhruv Sapra"')

還要注意, SEARCH實際工作方式是特定於實現的。 搜索一兩個單詞通常效果很好,但是搜索文字字符串通常效果不佳,這取決於服務器如何為它建立索引。 例如,gmail服務器僅索引單詞,而搜索子字符串或標點符號通常不起作用。 如果您的服務器兼容,則僅搜索報告編號(帶或不帶#)可能會或不會帶來更好的結果。

typ, msg_ids = self.imap.uid('search', None, 'SUBJECT "#160496147"')
typ, msg_ids = self.imap.uid('search', None, 'SUBJECT "160496147"')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM