将元素打印到电子邮件正文问题 Python Selenium SMTPLIB
Print Element to Email Body Issue Python Selenium SMTPLIB
我真的卡在这里了。我学会了如何使用 Selenium 来获取价格,在上面的示例中,它用于燃料/天然气/汽油网站。我可以在我的终端机上打印价格:
print("Best Petrol Price in Perth today is:", elem.text)
虽然我不知道如何将价格引用到电子邮件正文中 - 我使用的是 smtplib 和 Gmail。凭据已编辑,电子邮件已替换为虚拟持有人。
from webdriver_manager.chrome import ChromeDriverManager
browser = webdriver.Chrome(ChromeDriverManager().install())
browser.execute_script("window.open('https://www.fuelwatch.wa.gov.au/fuelwatch/pages/home.jspx');")
browser.switch_to.window(browser.window_handles[-1])
elem = browser.find_element_by_css_selector('#homepage\:j_idt84\:bestMetroPrices\:0\:j_idt96\:1\:bestMetroPrice')
print("Best Petrol Price in Perth today is:", elem.text)
price = elem.text
import smtplib
conn = smtplib.SMTP('smtp.gmail.com', 587)
type (conn)
conn
conn.ehlo()
conn.starttls()
conn.login('XXXXXXXXXXXXX', 'XXXXXXXXXXXXX')
conn.sendmail('example@mail.com', 'example2@mail.com', 'Subject: Best Petrol Price in Perth today is:\n\n "price"')
conn.quit()
代码运行并有效,但电子邮件正文显示“空消息”或“价格”。
如何正确引用元素文本并在电子邮件正文中引用它?
预先感谢您的帮助。
我想在电子邮件中包含价格,可能想尝试使用 f 字符串:
msg=f'Subject: Best Petrol Price in Perth today is:\n\n {price}'
从这里可以知道——
https://www.geeksforgeeks.org/formatted-string-literals-f-strings-python/
我真的卡在这里了。我学会了如何使用 Selenium 来获取价格,在上面的示例中,它用于燃料/天然气/汽油网站。我可以在我的终端机上打印价格:
print("Best Petrol Price in Perth today is:", elem.text)
虽然我不知道如何将价格引用到电子邮件正文中 - 我使用的是 smtplib 和 Gmail。凭据已编辑,电子邮件已替换为虚拟持有人。
from webdriver_manager.chrome import ChromeDriverManager
browser = webdriver.Chrome(ChromeDriverManager().install())
browser.execute_script("window.open('https://www.fuelwatch.wa.gov.au/fuelwatch/pages/home.jspx');")
browser.switch_to.window(browser.window_handles[-1])
elem = browser.find_element_by_css_selector('#homepage\:j_idt84\:bestMetroPrices\:0\:j_idt96\:1\:bestMetroPrice')
print("Best Petrol Price in Perth today is:", elem.text)
price = elem.text
import smtplib
conn = smtplib.SMTP('smtp.gmail.com', 587)
type (conn)
conn
conn.ehlo()
conn.starttls()
conn.login('XXXXXXXXXXXXX', 'XXXXXXXXXXXXX')
conn.sendmail('example@mail.com', 'example2@mail.com', 'Subject: Best Petrol Price in Perth today is:\n\n "price"')
conn.quit()
代码运行并有效,但电子邮件正文显示“空消息”或“价格”。 如何正确引用元素文本并在电子邮件正文中引用它? 预先感谢您的帮助。
我想在电子邮件中包含价格,可能想尝试使用 f 字符串:
msg=f'Subject: Best Petrol Price in Perth today is:\n\n {price}'
从这里可以知道—— https://www.geeksforgeeks.org/formatted-string-literals-f-strings-python/