特别是我正在寻找一个电子邮件与主题'您的预订已确认我试着点击邮件正文中的链接。我的代码通常在确认邮件发送后立即运行,我将进一步优化它以打开第一封带有此主题行的电子邮件。你知道吗
代码如下所示。我试图获取的超链接包含“=”,但在打印或返回时,程序似乎完全删除了等号(=)。显然,我需要写更多的东西才能发布这个。你知道吗
我不知道还能怎么写,但假设我有一个属性
你知道吗https://stackoverflow.com/php。?i=857398425237459“>; 我在代码中的“value”将返回“https://stackoverflow.com/php.?i857398425237459”。这使得我无法正确获取链接信息以备将来使用。你知道吗
import imaplib
import email
import quopri
import HTMLParser
import time
from selenium import webdriver
from selenium.webdriver.support.ui import Select
from bs4 import BeautifulSoup
class parseLinks(HTMLParser.HTMLParser):
def handle_starttag(self, tag, attrs):
global global_futures_fair_value
if tag == 'a':
for name, value in attrs:
if name == 'href':
#print name
print value.type()
linkList.append(value)
def gmailLogin(username, password):
M = imaplib.IMAP4_SSL('imap.gmail.com')
M.login(username, password)
M.select('Inbox')
rv, data = M.search(None, 'ALL')
mail_ids = data[0]
id_list = mail_ids.split()
latest_email_id = int(id_list[-1])
typ, msg_data = M.fetch(latest_email_id, '(RFC822)')
msg = email.message_from_string(msg_data[0][1])
msg = str(msg.get_payload()[1])
msg = quopri.decodestring(msg)
linkParser = parseLinks()
linkParser.feed(msg)
M.close()
M.logout()
print linkList[0]
return str(linkList[0])
linkList = []
browser = webdriver.Chrome()
answer = gmailLogin('USERNAME','PASSWORD')
browser.get(answer)
我想出来了,这和quopri和它如何编码信息有关。在这里看到: How to understand the equal sign '=' symbol in IMAP email text?
相关问题 更多 >
编程相关推荐