2012-12-06 46 views
3

我喜歡Jsoup解析html,但是它們的連接有問題,我需要發送請求到同一個網站,但是不同的查詢參數,比如說「id = XXX」,請求是這樣的:重用Jsoup連接

http://website/?id=XXX 

我不想爲每個ID一個新的連接,而不是我一直對所有的ID請求一個連接,這裏是我的代碼:

Connection conn = null; 

.. 
if (_conn == null) { 
_conn = Jsoup.connect("http://website/"; 
} 
doc = _conn.data("id", id).get() 
.. 

但似乎只適用於第一次,然後每次我的代碼運行時重複相同的請求,在這種情況下,我只能查詢冷杉即使我在其他時間通過了不同的身份證,也是如此。我該如何解決這個問題?

回答

2

我已經成功地達到某種重用通過改變_conn.url();針對你的情況每個請求 所以這將是像

String siteUrl = "http://website/"; 
Connection _conn = Jsoup.connect(siteUrl); 
int[] ids = {1,2,3}; 
for (int i : ids) { 
    _conn.url(siteUrl + "?id=" + i); 
    Document doc = _conn.get(); 
} 

這比在我看來,改變_conn.request().data()優雅的要少得多,但看來這是唯一的方法。

希望它有幫助。