java獲取百度網盤真實下載連結
1. [程式碼]獲取方法
import java.net.URLEncoder; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import org.json.JSONArray; import org.json.JSONObject; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; public class BaiduNetDisk { public static List<Map<String, Object>> getUrl(String url) throws Exception { List<String> fs_id = new ArrayList<String>(); List<Map<String, Object>> list = new ArrayList<Map<String, Object>>(); Document doc = Jsoup.connect(url).get(); String html = doc.toString(); int a = html.indexOf("{\"typicalPath"); int b = html.indexOf("yunData.getCon"); int sign_head = html.indexOf("yunData.SIGN = \""); int sign_foot = html.indexOf("yunData.TIMESTAMP"); int time_head = html.indexOf("yunData.TIMESTAMP = \""); int time_foot = html.indexOf("yunData.SHARE_UK"); int share_id_head = html.indexOf("yunData.SHARE_ID = \""); int share_id_foot = html.indexOf("yunData.SIGN "); String sign = html.substring(sign_head, sign_foot); sign = sign.substring(sign.indexOf("\"") + 1, sign.indexOf("\";")); String time = html.substring(time_head, time_foot); time = time.substring(time.indexOf("\"") + 1, time.indexOf("\";")); String share_id = html.substring(share_id_head, share_id_foot); share_id = share_id.substring(share_id.indexOf("\"") + 1, share_id.indexOf("\";")); System.out.println(share_id); html = html.substring(a, b); a = html.indexOf("{\"typicalPath"); b = html.indexOf("};"); JSONObject jsonObject = new JSONObject(html.substring(a, b + 1)); String uk = jsonObject.getString("uk"); String shareid = jsonObject.getString("shareid"); String path = URLEncoder.encode(jsonObject.getString("typicalPath"), "utf-8"); jsonObject = new JSONObject(jsonObject.getString("file_list")); JSONArray jsonArray = new JSONArray(jsonObject.getString("list")); jsonObject = jsonArray.getJSONObject(0); String app_id = jsonObject.getString("app_id"); if (jsonObject.getString("isdir").equals("1")) { String url1 = "http://pan.baidu.com/share/list?uk=" + uk + "&shareid=" + shareid + "&page=1&num=100&dir=" + path + "&order=time&desc=1&_=" + time + "&bdstoken=c51077ce0e0e313a16066612a13fbcd4&channel=chunlei&clienttype=0&web=1&app_id=" + app_id; String fileListJson = HttpRequest.getData(url1); System.out.println(fileListJson); jsonObject =new JSONObject(fileListJson); jsonArray = new JSONArray(jsonObject.getString("list")); } final int size = jsonArray.length(); for (int i = 0; i < size; i++) { Map<String, Object> map = new HashMap<String, Object>(); jsonObject = jsonArray.getJSONObject(i); String fileName = jsonObject.getString("server_filename"); //儲存檔名 map.put("fileName", fileName); fs_id.add(jsonObject.getString("fs_id")); String fileInfo = HttpRequest .getData("http://pan.baidu.com/api/sharedownload?sign=" + sign + "×tamp=" + time + "&bdstoken=c51077ce0e0e313a16066612a13fbcd4&channel=chunlei&clienttype=0&web=1&app_id=250528&encrypt=0&product=share&uk=" + uk + "&primaryid=" + share_id + "&fid_list=%5B" + fs_id.get(i) + "%5D"); JSONObject json_data = new JSONObject(fileInfo); if (json_data.getString("errno").equals("0")) { JSONArray jsonArray2 = new JSONArray(json_data.getString("list")); json_data = jsonArray2.getJSONObject(0); //儲存檔案下載實鏈 map.put("url", json_data.getString("dlink")); } else if (json_data.getString("errno").equals("-20")) { return null; // String getVerCode(); } else { return null; } list.add(map); } return list; } }
2. [程式碼]HttpRequest.java
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.RandomAccessFile; import java.lang.reflect.Method; import java.net.HttpURLConnection; import java.net.URL; public class HttpRequest { public static String getData(String u) throws Exception { String re=""; URL url = new URL(u); HttpURLConnection httpURLConnection = (HttpURLConnection) url .openConnection(); httpURLConnection.setRequestMethod("GET"); httpURLConnection.setDoInput(true); httpURLConnection.setDoOutput(true); InputStream is = httpURLConnection.getInputStream(); InputStreamReader isr = new InputStreamReader(is); BufferedReader bufferedReader = new BufferedReader(isr); String iL = ""; while ((iL = bufferedReader.readLine()) != null) { re += iL + "\n"; } return re; } }
相關推薦
java獲取百度網盤真實下載連結
1. [程式碼]獲取方法 import java.net.URLEncoder; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.M
教大家獲取百度雲盤真實下載連結(告別雲盤客戶端,全速下載)
先把百度雲盤資源分享到自己的雲盤中,然後建立公開連結。2.瀏覽器開啟該網頁,以360瀏覽器為例,按F12進入開發者模式,找到Console(控制檯),複製以下程式碼到控制檯,然後回車!$.ajax({type: "POST",url: "/api/sharedownload?
JAVA獲取百度網盤下載真實地址
這是一個java寫的獲取百度網盤真實下載連結進行下載的程式。 程式裡面一些引數拼接是根據瀏覽器抓包來的。具體的抓包方法網上一大堆,可以參考。這裡給出了原始碼和匯出的jar包。 url網址使用於百度分享的地址。暫時沒有適配有提取碼的地址。 執行的方法: 1、在當前的目錄
獲取百度網盤真是下載地址
time ole 不想 https _id 地址 360瀏覽器 data upload 1、將要下載的文件分享出去,是公開分享,私密不行 2、打開分享後的頁面,按下f12進入調試模式,在控制臺輸入一下代碼,點擊回車,既可看到真實下載地址 var ur
獲取百度網盤下載真實地址
這是一個java寫的獲取百度網盤真實下載連結進行下載的程式。 程式裡面一些引數拼接是根據瀏覽器抓包來的。具體的抓包方法網上一大堆,可以參考。這裡給出了原始碼和匯出的jar包。 url網址使用於百度分享的地址。暫時沒有適配有提取碼的地址。 執行的方法: 1
java 版百度網盤功能
java 版百度網盤功能,目前已經實現: 1:百度網盤登入 2:列出百度網盤檔案 3: 切換目錄 4: 多執行緒下載檔案 速度有待優化。思路已經成型。 原始碼地址:https://gitee.com/xiaoyaofeiyang/BaiduPcs #
百度網盤直接下載助手-不需要登入和安裝客戶端
360瀏覽器:外掛中心搜尋安裝Tamper monkey外掛 谷歌瀏覽器 :https://chrome.google.com/webstore/search/tampermonkey 進入安裝 倆眼睛那個 安裝完成後,點以下地址,安裝指令碼 https://greasyfork.org/zh-CN/s
Vue2.5開發去哪兒網App 從零基礎入門到實戰專案百度網盤免費下載
Vue2.5開發去哪兒網App 從零基礎入門到實戰專案百度網盤免費下載 2018最新Vue2.5零基礎入門到專案實戰開發旅遊網站App課程視訊教程下載。本課程從理論到專案,涵蓋Vue各個層面的基礎知識和開發技巧。從Vue基礎語法入手,逐層遞進,實戰專案貼近企業流程,完全按照企業級別程式碼質量和工程開發流程進
又一款好用的百度網盤免費下載不限速
之前我再某寶購買了一個百度網盤下載檔案不限速神器!一直用到現在,感覺非常好用! 免費推薦給大家使用!本人親測,無毒。下載不限速,下載大檔案必備。 https://download.csdn.net/download/aaa8086/10783779 無需安裝,電腦版,不支援移動版。個人覺
面對不穩定的百度網盤離線下載,這些備用方案可以幫你應急
由於伺服器正在優化升級,百度網盤日前宣佈磁力連結和 BT 種子下載功能暫停使用。前幾天恢復後,不少資源都出現了進度條始終為零的問題。如果你對離線下載比較依賴的話,不妨試試以下幾種替代服務。 太長不看版 概覽 Offcloud Offcloud
百度雲百度網盤for mac 破解 分享一個MAC下繞開百度網盤限速下載的方法,三步操作永久生效~~~
相信大家都比較困惑,百度網盤客戶端限速後一般只有幾十K的下載速度,Windows有百度網盤破解版,但MAC的破解版似乎不存在,要提速的話,一般的做法是開超級會員(27元/月),身為程式設計師的我們,是不是有更黑科技一點的方法呢?答案是肯定的,接下來我介紹一種正在使用的方法。(
百度網盤資源下載加速教學
百度網盤資源在迅雷下載、瀏覽器下載中的加速教學 我們在下載百度網盤資源的時候,速度正常是很慢的,正常下載如下圖(注意看下載地址),速度非常非常非常慢 那怎麼做才能更快呢 首先,Ctrl + C 網址; 其次,在新的位址列Ctrl + V,點H
百度網盤真實地址
使用wget下載 先在控制檯把cookie提取出來, 檢視wget的文件,發現它使用cookie的方法跟curl有點不一樣,得將cookie放到一個檔案裡,而不能像curl那樣從標準輸入傳入。 ➜
《一個APP的誕生——從零開始設計你的手機應用》讀後感,電子書百度網盤PDF下載
一開始看到書名,還以為是講APP程式開發的,所以拿來看看,沒想到這本書是著重“設計”。全書內容以設計為主,UI介面設計、EI體驗設計、互動/視覺/服務等,雖然提到了開發實現,但是基本上跟APP開發也沒啥關係。從一個做過產品的人的角度上講,這本書的內容可以參考,但是又感覺這本書
Pandownload關了,還有更牛逼的百度網盤全速下載方法
Pandownload軟體關停公告大家好,我是PanDownload的作者。很遺憾的告訴大家,由於個別黑心商家將本免費軟體有償售賣,現決定即日起暫停軟體使用。本軟體自去年2月9號首次釋出以來,一直堅持免費使用,我也花費了很多時間和精力進行維護更新。可是,原本免費分享給大家的軟體,卻被一些無良商家擅自拿到交易平
【2016年12月2日】百度網盤 IDM下載外掛完美圖文教程 完美解決開發者警告問題
總所周知,目前百度網盤外掛已在Chrome商店上下架。目前只能通過載入開發者外掛來進行使用。但是每次啟動Chrome都會提示你去禁用未經許可的外掛。這樣真的很煩。。。很煩。。。為了更好的下載!下載!!下載!!!我終於在外掛開發者的Git上找到了解決方案。我先把最
畢小朋《精通Android studio》讀後感,以及電子書百度網盤PDF下載
自從看了《Android Studio實戰 快速高效地構建Android應用》之後,我就越發相信要用一個工具,就得先熟悉這個工具。就像一個兵器,只有這個兵器用的得心應手了,才能更好的發揮它的作用。工欲善其事必先利其器,所以我把這本《精通Android studio》拿來看看。
百度網盤 突破下載限速 Aria2
macOS: mac上配置比較簡單 重新整理百度雲盤,發現多了個匯出下載,就是它了,選擇需要下載的檔案,點它就行 Windows: 也可以去下載最新版(不過需要自己配置) 步驟: 1.從上面的連結百度網盤下載檔案,Aria2 for Window
分享一個MAC下避開百度網盤限速下載的方法,三步操作永久生效
感謝博主Oliver556的分享。 相信大家都比較困惑,百度網盤客戶端限速後一般只有幾十K的下載速度,Windows有百度網盤破解版,但MAC的破解版似乎不存在,要提速的話,一般的做法是開超級會員(27元/月),身為程式設計師的我們,是不是有更黑科技一點的方法呢?答案是
破解百度網盤 -- 使下載速度增加20倍
需要條件 Windows 10 作業系統 Firefox瀏覽器(當然Chrome也行, 不過本人是火狐忠實支持者, Chrome用得不習慣, 操作大同小異!) 願意折騰的你 必備工具 Aria2下載器, 對應OS版本 A