对另一个问题的回答表明,我最好在我的Android项目中使用JSoup来解析以下对网络电话的响应:
var OX_abced445 = '';
OX_abced445 += "<"+"a href=\'http://the.server.url/openx/www/delivery/ck.phpoaparams=2__bannerid=29__zoneid=3__cb=e3efa8b703__oadest=http%3A%2F%2Fsomesite.com\'target=\'_blank\'>This is some sample text to test with!<"+"/a><"+"div id=\'beacon_e3efa8b703\'style=\'position: absolute; left: 0px; top: 0px; visibility:hidden;\'><"+"img src=\'http://the.server.url/openx/www/delivery/lg.php?bannerid=29&campaignid=23&zoneid=3&loc=1&cb=e3efa8b703\' width=\'0\'height=\'0\' alt=\'\' style=\'width: 0px; height: 0px;\' /><"+"/div>\n";
document.write(OX_abced445);
我需要从此响应中提取两位并将它们存储在两个字符串中。我也知道响应将始终采用上面显示的格式。我需要href url而不是img src url所以我想我应该寻找href=\'
和'
之间的所有内容。我还需要提取目标文本,即。封装在This is some sample text to test with!
和_blank\'>
之间的<"+"/a>
。我有JSoup设置并连接到URL,检索响应但是我遇到选择器语法问题。任何意见,将不胜感激。
答案 0 :(得分:1)
稍微提出您的问题,因为我不完全了解详情。
如果html文档中有单个超链接,则可以使用
选择链接和文本Element link_el = doc.select("a").first();
String href_url = link_el.attr("href");
String target_text = link_el.text();
如果html文档中包含许多链接,那么您可能希望使用getElementsByClass为包含的类选择所需的位。
元素related_el = doc.getElementsByClass(“related-class-name”)。first(); 元素link_el.select(“a”)。first();
当然,如果有很多链接,那么你会想要迭代doc.select(“a”)