Как вернуть информацию с веб-страницы? - PullRequest
0 голосов
/ 05 июля 2019

Я настраиваю базовый тест автоматизации шаблонов объектов страниц. Откройте Google, введите поиск, нажмите ссылку из результатов и верните информацию. Я получил его там, где я перехожу на страницу, с которой мне нужно получить информацию. Мне нужно найти контактную информацию в нижней части 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&amp;bc=">
</head>
<body>
support@sahipro.com
</body>
</html>

1 Ответ

0 голосов
/ 05 июля 2019

Текст метода из класса Element из jsoup получает текст из данного узла. Ваш код получает текст из корня документа. Чтобы получить текст определенного узла в вашем случае, используйте метод 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);
 }
...