[英]jSoup get data from webpage and display in JavaFX TableView
我想从以下网页获取日期,距离和Fin列: http ://www.gbgb.org.uk/raceCard.aspx?dogName=Ballymac%20Monleek并在JavaFX的TableView中显示该数据。
我将如何使用jSoup选择指定的列,然后将这些列放入TableView中?
我当前的代码只能从该网页上获取“ Fin”列-我发现很难弄清楚如何获得其他两列,然后我不确定如何将它们放入“可观察列表”中在表格视图中显示。
Dog dog = (Dog)tblRunners.getSelectionModel().getSelectedItem();
String selectedDog = dog.getName();
//getHistory
String dogPage = "http://www.gbgb.org.uk/raceCard.aspx?dogName=" + selectedDog;
Document doc1 = Jsoup.connect(dogPage).get();
Element tblHeader = doc1.select("tbody").first();
for (Element element1 : tblHeader.children()){
String position = element1.select("td:eq(4)").text();
System.out.println("Position: " + position);
}
谢谢罗布
public class DogDetail {
private String date;
private String distance;
private String fin;
public String getDate() {
return date;
}
public void setDate(String date) {
this.date = date;
}
public String getDistance() {
return distance;
}
public void setDistance(String distance) {
this.distance = distance;
}
public String getFin() {
return fin;
}
public void setFin(String fin) {
this.fin = fin;
}
}
FXCollections.observableArrayList
函数具有可观察的列表。 编码: Element tblHeader = doc1.select("table.MasterTable_Web20 tbody").first();
List<DogDetail> data = new ArrayList<>();
for (Element element1 : tblHeader.children()){
DogDetail dogDetail = new DogDetail();
dogDetail.setDate(element1.select("td:eq(0)").text());
dogDetail.setDistance(element1.select("td:eq(1)").text());
dogDetail.setFin(element1.select("td:eq(4)").text());
data.add(dogDetail);
}
TableView<DogDetail> table = new TableView<DogDetail>(FXCollections.observableArrayList(data));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.