我正在尝试从https://www.hackerearth.com/废弃数据 在右侧有直播活动。如果我在浏览器中看到此直播活动的源代码,那么我们可以看到整个数据。(参见图片){{ 3}}
现在这是我的jsoup代码:
else
在输出中,我们可以看到页面的所有html,但是实时事件div中的所有数据都丢失了。 在输出中我有空div标签。
Document doc=Jsoup.connect("https://www.hackerearth.com").get();
System.out.println(doc.html());
在pic中你可以看到这个div标签中有大量数据。 所以我怎么得到它?
答案 0 :(得分:1)
如果您在网络浏览器中查看您的网页来源,您会在最后看到原因:
<script>
$(document).ready(function (){
$('#header-notif-icon-trigger').click();
$('#live-events-trigger').click();
// show kone ge widget if not visited
$(window).load( function () {
var hackathon_visit_cookie = readCookie('fintech_valley_hackathon_cookie');
if (!hackathon_visit_cookie) {
$('#custom_hackathon_widget').show();
}
});
$(document).on('click', '#custom_hackathon_widget .hack-link', function(e) {
createCookie('fintech_valley_hackathon_cookie', 'true', 180);
$('#custom_hackathon_widget').fadeOut('slow');
});
});
</script>
您无法使用Jsoup执行JavaScript代码。如果您要执行JavaScript,请使用HTMLUnit或Selenium。