我正在设置基本的页面对象模式自动化测试。打开谷歌,输入搜索,点击结果链接并返回信息。我已经将其导航到需要从中提取信息的页面。我需要从www.sahipro.com的底部找到联系信息,并将其返回到测试类的控制台。我不能只收集电子邮件和电话号码,我得到了html额外的东西。而且我不知道如何在测试类中调用该页面结果。
我不能仅解析联系人文本,而且我不知道如何将其带到我的单独测试类中。我对此很陌生,所以我的知识充其量是初学者。
try {
//Get Document object after parsing the html from given url.
Document document = Jsoup.connect("http://https://sahipro.com/").get();
Element support = document.text("support@sahipro.com"); //Get Support
print(" Support Email: " + support); //Print support.
}catch (IOException e) {
e.printStackTrace();
}
print("done");
}
public static void print(String string) {
System.out.println(string);
}
我正在返回信息,但它是以html格式输入的。 控制台:
running...
Support Email: <html>
<head>
<meta http-equiv="refresh"
content="0;url=http://www.dnsrsearch.com/index.php
origURL=http://https%2Fsahipro.com%2F&bc=">
</head>
<body>
support@sahipro.com
</body>
</html>
答案 0 :(得分:0)
jsoup类Element的方法文本从给定节点获取文本。您的代码正在从文档根目录获取文本。要获取特定节点的文本,请使用select方法获取特定节点。 使用
document.select("a[^='mailto:']")[0].text();
将命令应用于代码
try {
//Get Document object after parsing the html from given url.
Document document =
Jsoup.connect("http://https://sahipro.com/").get();
String support = document.select("a[^='mailto:']")[0].text();
String phone = document.select("a[^='tel:']")[0].text();
print(" Support Email: " + support + " Support Phone: "+ phone );
}catch (IOException e) {
e.printStackTrace();
}
print("done");
}
public static void print(String string) {
System.out.println(string);
}