Page在这里 http://www.yildiz.edu.tr/etkinlikler/
来源: 视图源:http://www.yildiz.edu.tr/etkinlikler/
我不想放截屏,因为它真的很长。我必须放置很多截图。
我想接受这个
title: 'ss Event',
start: new Date(y, m, 1)
并非所有,仅在标题和日期之后。
但似乎没有类或其他标题,因为它在javascript类中:
</div>
</div>
</div>
</div> </div>
</div> <script>
$(document).ready(function() {
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
$('#calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
editable: false,
events: [
{
title: 'birthday party',
start: new Date(2015, 9, 26),
end: new Date(2015, 10, 13),
url: 'http://www.yildiz.edu.tr/etkinlikler/Uygarlıkların Geçiş Yolu & Anadolu Peyzajı/237'
},
{
title: 'Concert',
start: new Date(2015, 5, 12),
end: new Date(2015, 5, 19),
url: 'http://www.yildiz.edu.tr/etkinlikler/İki Seçki İki Salon İki Sergi/233'
},
]
});
});
</script>
<style type='text/css'>
#calendar {
width: 900px;
margin: 0 auto;
}
</style>
我试过
Elements event = document.select("#events");
但它不起作用。我应该使用其他工具吗?
答案 0 :(得分:0)
你需要使用别的东西。 Jsoup不允许你使用Javascript,只使用HTML解析树。
最多可以使用document.select(&#34; script&#34;)获取整个脚本文本.get(1).toString()。
获得脚本文本后,您可以考虑使用其他选项,例如正则表达式,或者某些Javascript解析工具,它可以满足您的需求。
答案 1 :(得分:0)
Document doc = Jsoup.connect("http://www.yildiz.edu.tr/etkinlikler/").get();
String script = doc.select("script").get(10).toString();
String pattern = "\\{\\s*title\\s*:\\s*(.*),\\s*start\\s*:\\s*(.*),\\s*end.*";
Pattern r = Pattern.compile(pattern);
Matcher m = r.matcher(script);
while (m.find()) {
System.out.println(m.group(1) + " -> " + m.group(2));
}
输出:
'Long Event' -> new Date(y, m, d-5)
'Lunch' -> new Date(y, m, d, 12, 0)
'Birthday Party' -> new Date(y, m, d+1, 19, 0)
'Kemal Gök Fotoğraf Sergisi :Kentleşme Sürecinde Çocuk İşçiler' -> new Date(2015, 10, 17)
'Uygarlıkların Geçiş Yolu & Anadolu Peyzajı' -> new Date(2015, 9, 26)
'Vizöre Çarpanlar' -> new Date(2015, 8, 9)
'İki Seçki İki Salon İki Sergi' -> new Date(2015, 5, 12)