【问题标题】:How to use java to detect a bold font?如何使用java检测粗体字体?
【发布时间】:2019-12-10 12:05:06
【问题描述】:

我想为 gmail 制作一个自动电子邮件回复器。

我可以区分已读和未读电子邮件的唯一方法是未读电子邮件的字体为粗体。

我将如何编写一个程序来扫描元素,检测给定文本是否为粗体,如果它粗体,请单击该元素?

【问题讨论】:

  • 你说的是JavaMail API吗?如果是这样,请搜索关键字 Flag.SEEN。如果您共享当前代码而不是图片,将会很有帮助。

标签: java android automation appium


【解决方案1】:
  1. 对于移动网络浏览器和/或 WebViews,您可以使用 WebElement.getCssValue() 函数并查看 font-weight 值,对于粗体文本,该值应该是 bold700
  2. 对于本机 Web 应用程序,您将无法使用相同的技巧,如果您要自动化本机应用程序,最好坚持使用 Unread 文本,该文本应位于 content-desc 属性中:

    如果您选择此选项,您应该能够使用XPath contains() or starts-with() functions 找到“未读”元素

    driver.findElements(By.xpath("//android.view.View[contains(@content-desc,'Unread')]")).forEach(element -> ...);
    

    driver.findElements(By.xpath("//android.view.View[starts-with(@content-desc,'Unread')]")).forEach(element -> ...);
    

【讨论】:

  • 如何使用 forEach() 函数?我在括号里放什么?
猜你喜欢
  • 2013-05-17
  • 1970-01-01
  • 2011-10-02
  • 2013-01-07
  • 2015-11-14
  • 2011-07-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多