-1

我正在爲基於Java的下載管理器開發Chrome擴展。如何監聽瀏覽器下載事件?以及下載管理器如何從YouTube這樣的站點獲取鏈接,其中直接視頻鏈接不存在於源文件中?IDM如何從Youtube等網站獲取下載鏈接?

+0

他們安裝了一個通過[nativeMessaging](https://developer.chrome.com/extensions/nativeMessaging)與外部下載器進行通信的擴展。 – wOxxOm

+0

這就是我想知道的。如何實現它?任何有用的資源鏈接? – Jack

+1

您可以查看[使用chrome.downloads API的示例擴展](https://developer.chrome.com/extensions/samples#search:downloads)並檢查這些下載程序安裝的擴展的代碼。 – wOxxOm

回答

1

我也在爲學習目的建立一個類似的應用程序。那麼,有多種方式可以做到這一點。一種方法是使用chrome的本地消息API。該API可以將您的擴展消息發送到桌面應用程序。

https://developer.chrome.com/extensions/messaging#native-messaging-host

的另一種方式是在桌面應用程序中嵌入一個小型服務器。所以,當用戶安裝應用程序時,服務器會自動部署並監聽連接。

準備好服務器後,可以發送來自您的分機的http請求。爲此,您的分機可以打開一個連接並將POST REQUEST發送到一個地址(例如127.0.0.1:9690)。當請求成功發送時,桌面應用程序會掃描url並根據url使用特定的算法來下載文件。

例如:如果網址是youtube,則使用某些技術來解析url並獲取approprite音頻或視頻。

+0

我能夠與我的桌面應用程序進行通信,但我想知道的是如何覆蓋chrome的默認下載管理器,如IDM做下載。 – Jack

+0

我認爲你想要做的是通過你的擴展禁用idm擴展。如果是這樣,那麼我認爲這是不可能的。如果你編寫一些惡意腳本,以某種方式搜索idm並打破它,但它應該很難。這也將是一個安全風險。 你可以做的是告訴用戶禁用IDM擴展。 https://developer.chrome.com/extensions/management – karna