使用 Selenium 将文件附件上传到 Outlook Office 365 电子邮件 Python
Uploading a File Attachment to Outlook Office 365 Email using Selenium Python
我正在从事一个项目,该项目要求 Outlook Office 365 由 Selenium 自动化。我想上传一个文件附件到我的电子邮件,但尽管进行了广泛的研究,但还是不知道如何上传。我已多次尝试找到用于发送文件路径的正确元素,但 none 成功并导致没有任何操作发生,或者抛出“NoSuchElementException”错误。
如何使用 Selenium 将文件作为电子邮件附件上传到 Office 365 中的电子邮件草稿?
我试过的一个代码示例:
fileInputElement = driver.find_element_by_css_selector('input[type="file"]')
driver.execute_script("((el) => el.style.display = 'block', fileInputElement)")
fileInputElement.send_keys('abs/path/to/attachment/file')
上面的修改示例:
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
fileInputElement = driver.find_element_by_css_selector('input[type="file"]')
driver.execute_script("((el) => el.style.display = 'block', fileInputElement)")
element = WebDriverWait(driver, 10).until(
EC.visibility_of(fileInputElement)
)
element.send_keys('abs/path/to/attachment/file')
wait=WebDriverWait(driver,10)
elem=wait.until(EC.presence_of_element_located((By.CSS_SELECTOR,"input[type='file']")))
driver.execute_script("arguments[0].style.display = 'block';", elem)
elem.send_keys(absolutepath)
你要做的是等待元素出现,然后设置为显示块,然后发送密钥。
进口:
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
我正在从事一个项目,该项目要求 Outlook Office 365 由 Selenium 自动化。我想上传一个文件附件到我的电子邮件,但尽管进行了广泛的研究,但还是不知道如何上传。我已多次尝试找到用于发送文件路径的正确元素,但 none 成功并导致没有任何操作发生,或者抛出“NoSuchElementException”错误。
如何使用 Selenium 将文件作为电子邮件附件上传到 Office 365 中的电子邮件草稿?
我试过的一个代码示例:
fileInputElement = driver.find_element_by_css_selector('input[type="file"]')
driver.execute_script("((el) => el.style.display = 'block', fileInputElement)")
fileInputElement.send_keys('abs/path/to/attachment/file')
上面的修改示例:
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
fileInputElement = driver.find_element_by_css_selector('input[type="file"]')
driver.execute_script("((el) => el.style.display = 'block', fileInputElement)")
element = WebDriverWait(driver, 10).until(
EC.visibility_of(fileInputElement)
)
element.send_keys('abs/path/to/attachment/file')
wait=WebDriverWait(driver,10)
elem=wait.until(EC.presence_of_element_located((By.CSS_SELECTOR,"input[type='file']")))
driver.execute_script("arguments[0].style.display = 'block';", elem)
elem.send_keys(absolutepath)
你要做的是等待元素出现,然后设置为显示块,然后发送密钥。
进口:
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC