我正在編寫一段代碼以從 gmail 獲取值,但電子郵件本身是 HTML 文件,因此代碼也會(huì)返回列表中的 html 代碼,我無法解析該數(shù)據(jù)。我的代碼:import imaplibORG_EMAIL = "comapnyname.com"FROM_EMAIL = "automation@companyname.co"FROM_PWD = "password123!"SMTP_SERVER = "imap.gmail.com"def read_email_from_gmail(): mail = imaplib.IMAP4_SSL(SMTP_SERVER) mail.login(FROM_EMAIL, FROM_PWD) mail.select("inbox") email_type, data = mail.search(None, "ALL") mail_ids = data[0] id_list = mail_ids.split() latest_email_id = int(id_list[-1]) email_type, data = mail.fetch(str.encode(str(latest_email_id)), "(RFC822)") string_data = str(data) print('MAIL Data: ') print(string_data)read_email_from_gmail()我需要獲取值,即“952681”,該值顯示了兩次,有人可以幫助我嗎?
1 回答

UYOU
TA貢獻(xiàn)1878條經(jīng)驗(yàn) 獲得超4個(gè)贊
如果電子郵件的格式保持不變,您可以使用正則表達(dá)式來解析返回的 html 字符串:
import re
pattern = '\*([\s\S]*?)\*'
res = re.findall(pattern, your_email_text)
變量 res 包含您在第二個(gè)位置的號碼:
['automation+qa1@spekit.co', '952681']
添加回答
舉報(bào)
0/150
提交
取消