溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在Jav中使用httpclient與Jsoup實現獲取動態(tài)生成的數據

發(fā)布時間:2020-11-19 15:52:35 來源:億速云 閱讀:374 作者:Leah 欄目:編程語言

這期內容當中小編將會給大家?guī)碛嘘P在Jav中使用httpclient與Jsoup實現獲取動態(tài)生成的數據,文章內容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

Java爬蟲Jsoup+httpclient獲取動態(tài)生成的數據

String startPage="https://item.jd.com/11476104681.html";

Document document = Jsoup.connect(startPage).userAgent
("Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) 
Chrome/52.0.2743.116 Safari/537.36").get();

演示:

在Jav中使用httpclient與Jsoup實現獲取動態(tài)生成的數據

通過這張截圖可以看到他傳過來的只是一個靜態(tài)資源頁面根本沒有價格參數,那么價格怎么來的呢,繼續(xù)找發(fā)現這個接口:

在Jav中使用httpclient與Jsoup實現獲取動態(tài)生成的數據

在Jav中使用httpclient與Jsoup實現獲取動態(tài)生成的數據

你會發(fā)現在這個接口是很多參數拼接上去的,那么我們要做的就是分析是不是所有的參數都有用

https://p.3.cn/prices/mgets?callback=jQuery9734926&type=1&area=1&pdtk=
pduid=14930020970791835891856&pdpin=jd_6738608ee8eed&pdbp=0&skuIds=J_11476104681&source=item-pc

可以試著刪除一些參數發(fā)現最終這個接口需要的參數其實很簡單:

https://p.3.cn/prices/mgets?callback=jQuery9734926&type=1&area=1&skuIds=J_11476104681&source=item-pc

看到這里是不是很激動了,你其實可以換一些其他的JD商品ID一樣能獲取到當前價格和最高價格已經那什么價格我也不清楚,我們需要做的只是寫一個Httpclient模擬請求這個接口

String doGet = HttpUtils.doGet("https://p.3.cn/prices/mgets?callback=jQuery9734926&type=1&area=1&skuIds=J_"+"11476104681"+"&source=item-pc", null);
System.out.println(doGet);

結果是這樣:

jQuery9734926([{"id":"J_11476104681","p":"880.00","m":"980.00","op":"980.00"}]);

至于后面的你直接解析下JSON字符串那么你要的數據就GET到了。

上述就是小編為大家分享的在Jav中使用httpclient與Jsoup實現獲取動態(tài)生成的數據了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI