Tôi có HTML sauLàm cách nào để thay thế một phần tử?
<html>
<head>
<title>test</title>
</head>
<body>
<table>
<caption>table title and/or explanatory text</caption>
<thead>
<tr>
<th>header</th>
</tr>
</thead>
<tbody>
<tr>
<td id=\"test\" width=\"272\"></td>
</tr>
</tbody>
</table>
<a href=\"http://www.google.fi\" style=\"color:black\">Test link</a>
<a href=\"http://www.google.fi\"><img src=\"http://www.google.se/images/nav_logo95.png\" /></a>"
</body>
</html>;
Và tôi muốn tìm liên kết đầu tiên với jsoup và thay thế bằng một văn bản
Element elem = page.select("a[href=" + link.getUrl() + "]:contains(" + link.getName() + ")").first();
Tôi chỉ có thể thay thế cho HTML bên trong với elem.html("foo")
hoặc in outerHtml với elem.outerHtml()
Có ai biết cách tôi có thể đạt được điều này không?
Điều mà tôi đã làm không đúng là lấy yếu tố sai để làm việc. Cách tốt nhất mà tôi tìm thấy, cho đến bây giờ, để chọn phần tử phù hợp là lặp qua tất cả các phần tử. Một vòng lặp lồng nhau sẽ giúp đỡ nếu vẫn không tìm được chính xác. Ví dụ: cho (Element elem: contElems) { if (elem.id()! = "") System.out.println (elem.id()); \t Các yếu tố contElems1 = contElems.select ("href, [href], [dữ liệu-href], liên kết [href], [tiêu đề]"); cho (Yếu tố elem1: contElems1) { // Đặt mã tại đây } // (hoặc/và) đặt mã tại đây } –
Tôi không biết cách đặt ngắt dòng trong nhận xét ở trên ... –