【问题标题】:Selenium Automation - Write text in mailSelenium 自动化 - 在邮件中写入文本
【发布时间】:2018-06-10 01:00:48
【问题描述】:

我正在尝试使用 Selenium 编写一个 python 程序,该程序在以下网站上编写和发送邮件:http://www.laposte.net/accueil

这是我的代码:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys


driver = webdriver.Chrome() 
driver.get("https://www.laposte.net/accueil")

pseudo = driver.find_element_by_name("login")
mdp = driver.find_element_by_name("password")

pseudo.send_keys("testselenium@laposte.net")
mdp.send_keys("Testselenium1")

pseudo.submit()

newmess = driver.find_element_by_id("zb__NEW_MENU")
newmess.click()

destinataire = driver.find_element_by_id("zv__COMPOSE-1_to_control")
destinataire.send_keys("adress@gmail.com")

objet = driver.find_element_by_id("zv__COMPOSE-1_subject_control")
objet.send_keys("Test selenium")

texte = driver.find_element_by_xpath("//body[@class='mceContentBody']")
texte.send_keys("Test")

我的代码有效,但我无法在正文中添加一些文本。

我收到此错误:无法定位元素:{"method":"xpath", "selector":"//body[@class='mceContentBody']"}

供参考,文本框的HTML代码为:

<body id="tinymce" class="mceContentBody "     
onload="window.parent.tinyMCE.get('DWT48_content').onLoad.dispatch();" 
contenteditable="true" dir="LTR" style="font-family: &quot;times new 
roman&quot;, &quot;new york&quot;, times, serif; font-size: 14pt; color: 
rgb(0, 0, 0);"><div><br></div></body>   

你有什么想法在邮件中写一些文字吗?

谢谢。

Lcs

【问题讨论】:

  • 编辑器可能在&lt;iframe&gt;元素中,在这种情况下,您需要先切换到框架。但是,我在使用 Selenium 自动发送电子邮件时遇到了一个基本问题。如果您的目标是自动发送电子邮件,那么有比通过基于 Web 的电子邮件客户端更好的方法来实现自动化。
  • 我不打算将此代码用于实际目的。这只是我了解 Selenium 的一种方式。关于

标签: java python selenium automation


【解决方案1】:

在你写的倒数第二行:

texte = driver.find_element_id("tinymce")

方法调用不应该是:

texte = driver.find_element_by_id("tinymce")

(注意“by”)

【讨论】:

    【解决方案2】:

    是不是因为类属性末尾有多余的空格?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-04
      相关资源
      最近更新 更多