0
我的程序進入我的uni結果頁面,找到所有鏈接並保存到文件。然後我讀取該文件並僅複製包含所需鏈接的行並將其保存到另一個文件。然後我再次解析它以提取所需的數據java數據結構替換文件io
public class net {
public static void main(String[] args) throws Exception {
Document doc = Jsoup.connect("http://jntuconnect.net/results_archive/").get();
Elements links = doc.select("a");
File f1 = new File("flink.txt");
File f2 = new File("rlink.txt");
//write extracted links to f1 file
FileUtils.writeLines(f1, links);
// store each link from f1 file in string list
List<String> linklist = FileUtils.readLines(f1);
// second string list to store only required link elements
List<String> rlinklist = new ArrayList<String>();
// loop which finds required links and stores in rlinklist
for(String elem : linklist){
if(elem.contains("B.Tech") && (elem.contains("R07")||elem.contains("R09"))){
rlinklist.add(elem);
}
}
//store required links in f2 file
FileUtils.writeLines(f2, rlinklist);
// parse links from f2 file
Document rdoc = Jsoup.parse(f2, null);
Elements rlinks = rdoc.select("a");
// for storing hrefs and link text
List<String> rhref = new ArrayList<String>();
List<String> rtext = new ArrayList<String>();
for(Element rlink : rlinks){
rhref.add(rlink.attr("href"));
rtext.add(rlink.text());
}
}// end main
}
我不想創建文件來執行此操作。有沒有更好的方式來獲取外部鏈接並只鏈接特定網址的文本而不創建文件?
它使用Apache的公共文件實用程序,jsoup
您已經擁有內存中的列表('Elements links')。就此操作。您的代碼寫入和從文件讀取是完全沒有必要的。 – vanza 2012-07-11 04:24:50