我想验证单词 "anything" 是否为粗体
I want to verify if the word "anything" is in bold or not
网站是enter link description here
往下看会发现一些POSTS,所以我想验证里面写的"anything"是粗体还是不用Selenium,最好是Python!
我面临的问题是因为整个文本不是粗体,因此当我使用 属性
element1= driver.find_element_by_xpath(".//*[@id='post-2662']/div/p")
a=element1.value_of_css_property('font-weight')
它给了我 400,但是,我只想查找 "Anything" 是否为粗体,如果 "Anything" 为粗体那么我们也可以单独搜索它,因为它在标签内但如果 "anything" 不是粗体,则无法单独搜索。
完整的场景是这样的:
*假设用户已登录
当他们添加博客时
标题:“这是 test_user 的博客”
内容“测试用户喜欢写博客。博客的内容可以随便。”
然后查看博客应该以粗体显示“任何内容”*
我不明白你的逻辑,但你可以简单地检查段落是否包含粗体 "Anything"
,如下所示:
element1= driver.find_element_by_xpath(".//*[@id='post-2662']/div/p")
try:
element1.find_element_by_xpath(".//b[.='anything']")
except:
print("No bold 'Anything' found")
你的 xpath 应该是这样的
"//article[1]/div/p[contains(b/text(), 'anything')]"
我会采取一些不同的方法。当我处理这样的问题时,我会尝试考虑通用(可重用)的解决方案。在这种情况下(根据我从您的问题和评论中收集到的信息),您想了解给定博客 post 中的某些文本是否为粗体。使用 XPath,您可以指定要检查的博客 post,将文本拉入 B
(粗体)并将其与您期望的进行比较。 XPath 看起来像
//article[1]//p/b
其中 1 是您要搜索的博客 post 的索引。这将在博客 post #1 的文本中找到一个 B
标签(如果存在)。因此,给定此 XPath... 我们将要确定此元素是否存在(post 中的任何内容都是粗体),如果存在,则从中获取文本并将其与 "anything" 进行比较。我会将这一切包装在一个函数中以使其可重用
def is_text_bold_in_post(post_index, search_string):
for bold in driver.find_elements_by_xpath("//article[" + post_index + "]//p/b")
if search_string in bold.text
# search string found
return true
# not found
return false
网站是enter link description here
往下看会发现一些POSTS,所以我想验证里面写的"anything"是粗体还是不用Selenium,最好是Python!
我面临的问题是因为整个文本不是粗体,因此当我使用 属性
element1= driver.find_element_by_xpath(".//*[@id='post-2662']/div/p")
a=element1.value_of_css_property('font-weight')
它给了我 400,但是,我只想查找 "Anything" 是否为粗体,如果 "Anything" 为粗体那么我们也可以单独搜索它,因为它在标签内但如果 "anything" 不是粗体,则无法单独搜索。
完整的场景是这样的:
*假设用户已登录
当他们添加博客时 标题:“这是 test_user 的博客” 内容“测试用户喜欢写博客。博客的内容可以随便。”
然后查看博客应该以粗体显示“任何内容”*
我不明白你的逻辑,但你可以简单地检查段落是否包含粗体 "Anything"
,如下所示:
element1= driver.find_element_by_xpath(".//*[@id='post-2662']/div/p")
try:
element1.find_element_by_xpath(".//b[.='anything']")
except:
print("No bold 'Anything' found")
你的 xpath 应该是这样的
"//article[1]/div/p[contains(b/text(), 'anything')]"
我会采取一些不同的方法。当我处理这样的问题时,我会尝试考虑通用(可重用)的解决方案。在这种情况下(根据我从您的问题和评论中收集到的信息),您想了解给定博客 post 中的某些文本是否为粗体。使用 XPath,您可以指定要检查的博客 post,将文本拉入 B
(粗体)并将其与您期望的进行比较。 XPath 看起来像
//article[1]//p/b
其中 1 是您要搜索的博客 post 的索引。这将在博客 post #1 的文本中找到一个 B
标签(如果存在)。因此,给定此 XPath... 我们将要确定此元素是否存在(post 中的任何内容都是粗体),如果存在,则从中获取文本并将其与 "anything" 进行比较。我会将这一切包装在一个函数中以使其可重用
def is_text_bold_in_post(post_index, search_string):
for bold in driver.find_elements_by_xpath("//article[" + post_index + "]//p/b")
if search_string in bold.text
# search string found
return true
# not found
return false