当前位置: 首页 > 知识库问答 >
问题:

使用java和添加签名文本的Selenium WebDriver自动发送Gmail邮件

叶华皓
2023-03-14
driver.findElement(By.xpath(".//*[text()= 'COMPOSE']")).click();
wait.until(ExpectedConditions.elementToBeClickable(By.xpath(".//textarea[contains(@aria-label, 'To')]")));
driver.findElement(By.xpath(".//textarea[contains(@aria-label, 'To')]")).click();
driver.findElement(By.xpath(".//textarea[contains(@aria-label, 'To')]")).sendKeys("abcd@gmail.com");
driver.findElement(By.name("subjectbox")).click();
driver.findElement(By.name("subjectbox")).sendKeys("efgh");
driver.findElement(By.xpath("(.//*[@aria-label='Message Body'])[2]")).click();
driver.findElement(By.xpath("(.//*[@aria-label='Message Body'])[2]")).sendKeys("This is an auto-generated mail");
driver.findElement(By.xpath("(.//*[@aria-label='Message Body'])[2]")).click();
String s = "Sir,\n This is a auto generated email. \n\n" 
    + driver.findElement(By.xpath("(.//*[@aria-label='Message Body'])[2]")).getText();
driver.findElement(By.xpath("(.//*[@aria-label='Message Body'])[2]")).clear();
driver.findElement(By.xpath("(.//*[@aria-label='Message Body'])[2]")).sendKeys(s);

代替这两行:driver.findElement(by.xpath(“(.//[@aria-label='message body'])[2]”)).click();driver.findElement(by.xpath(“(.//[@aria-label='message body'])[2]”)).sendkeys(“这是自动生成的邮件”);

但此解决方案实际上删除了签名文本的所有格式。即使使用签名文本,我也无法使用Firebug获得文本框的xpath。我必须删除完整的签名文本才能获得这些文本。我是这个自动化领域的初学者。请帮助我如何在签名文本之前写邮件正文中的文本。

共有1个答案

祁渊
2023-03-14

@Samiran Banerjee

只需使用以下代码:

driver.findElement(By.cssSelector(".Am.Al.editable.LW-avf>br")).click();
driver.findElement(By.cssSelector(".Am.Al.editable.LW-avf")).sendKeys("This is an auto-generated mail");

这将在您签名之前键入。

 类似资料:
  • 我正在尝试使用gmail从Delphi发送电子邮件。我有Indy10.5.9.0和Delphi XE3。 我从中获得了示例代码:http://www.andrecelestino.com/delphi-xe-envio-de-e-mail-com-componentes-indy/ 我还尝试了其他示例代码,但结果相同。 我有libeay32.dll和ssleay32.dll从这里:http://w

  • 所以我想知道我是否可以访问我的签名从我的Gmail帐户和发送电子邮件连同它。是否可以使用Gmail API和应用程序脚本? 这是我目前得到的。

  • 我有发送邮件与谷歌SMTP和最新版本的PHPMailer的问题。这里有很多问题,但是答案对我不起作用。我使用免费托管与免费子域。这是我的标准PHP代码发送电子邮件从文档: 我得到了这个错误: .... 2017-06-03 15:15:33服务器- 如果将与端口一起使用,我会看到相同的错误。 在我的电子邮件帐户2中,工厂身份验证处于和处于。 我真的不知道该怎么办。

  • 如何在添加签名时添加自定义值(xyz123)。因为当我添加签名时,我无法添加自定义文件进行签名。“signature1”字段自动添加到文档中。我的输出文件截图附于bello: 而不是Signature1,我想添加我的自定义值为(xyz123)

  • 问题内容: 我正在尝试smtp.gmail.com在Django 1.8中使用发送邮件 我的settings.py包含: 但是得到了这个错误 我尝试了文档所说的所有内容,并遵循了许多建议的解决方案。 例如https://accounts.google.com/DisplayUnlockCaptcha,启用安全性较低的应用程序等。 但我仍然有错误 谁能说出如何正确配置Django 1.8以使用Gma

  • 我试图通过节点邮件发送电子邮件,但无法发送电子邮件,并显示以下错误。 我使用的是nodemailer文档中所示的确切代码。 这是我正在使用的服务器端代码。 这在几天前运行良好,在其他邮件客户端和gmail上也运行良好,因此我认为这个问题可能与gmail帐户的任何安全设置有关。