Итак, у меня есть некоторый код автоматизации, написанный на Python, который заполняет строку шаблона электронной почты, один из которых является ссылкой на запрос Splunk, который содержит символ &
. После того, как я заполнил письмо, я беру переданные аргументы, чтобы создать командную строку для вызова библиотеки подпроцесса следующим образом:
pipe = subprocess.Popen(cmdline, stdin=inout, stdout=inout,
stderr=inout, close_fds=closefds,
preexec_fn=setsid, startupinfo=startupinfo)
Теперь cmdline
- это список, который содержит следующее:
['open', "mailto:comman_separated_emails?cc=dummy_email@gmail.com&subject=My subject&body=Some
text with the following problem link:
https://splunk-link.com:443/app/my_app/@go?dispatch_view=alert&s=%2FservicesNS%2Fnobody%2Fapigateway-prod%2Fsaved%2Fsearches%2FAPI%2520Gateway%2520Credential%2520Security%2520Violation%253A%2520Auth%2520Header%2520on%2520HTTP%2520%2528Non%2520SSL%2529%2520-%2520Daily"]
Каждый раз, когда открывается мой почтовый провайдер по умолчанию, в данном случае Outlook, сообщение обрезается прямо в &
в ссылке.
Я пытался поставить ссылку в двойном иодиночные кавычки, с экранированием \&\
и ^&
, но все равно не повезло.
Может кто-нибудь помочь мне? Заранее спасибо.
-Брайан