簡體   English   中英

以編程方式完成下載時,始終重定向到其他URL(Java)

[英]always redirected to a different url when download is done programmatically (Java)

這就是我需要做的。 我需要從市場下載一堆apk。 使用Multi-apk工具分析每個文件中是否包含廣告,然后再次對其進行壓縮(這不是問題,因此我將不作進一步討論)

現在,我正在做的事情是從特定市場下載apk。 我獲得了頁面的源代碼,並獲得了所有以.APK結尾的URL。

從頁面提取每個URL后,我使用commons io下載它。 但是,無論何時下載完成,我都注意到它們的大小都是相同的。 這讓我認為它正在下載相同的文件。

我嘗試使用wget,但發現所有URL都重定向到一個URL。

當我轉到頁面並單擊“下載到PC”按鈕下載相同的文件時,它可以正常工作並下載了我想要的文件。

有什么方法可以下載所需的文件? 我可以修改代碼中的內容以獲得正確的APK嗎? 這是Web編程中的功能之一嗎?

這是下載APK的代碼

private static void downloadSample(String directLink) throws Exception
    {
        String[] getAPKName = directLink.split("/");
        System.out.println(getAPKName[getAPKName.length -1]);
        String APKName = getAPKName[getAPKName.length -1];        
        org.apache.commons.io.FileUtils.copyURLToFile(new URL(directLink), new File("C:\\Users\\Documents\\NetBeansProjects\\JavaApplication21\\APK\\"
+ APKName));

    }

有什么方法可以下載所需的文件? 我可以修改代碼中的內容以獲得正確的APK嗎? 這是Web編程中的功能之一嗎?

從技術上講,是的,有一種方法,但是我們不能告訴您它是什么。 基本上,您已經弄清楚了與Java請求有關的內容是什么導致服務器與從瀏覽器發出請求時的行為有所不同。 使用FireBug(或等效工具)查看瀏覽器的請求將是一個不錯的開始。 檢查從Java下載的文件以查看其中包含的內容也是值得的。 可能是錯誤消息,通知或其他內容。

但是,您還應該考慮為什么要設置服務器來執行此操作。

  • 您是否檢查了網站的條款和條件?
  • 你在按照他們的方式做什么?
  • 您是否有權做自己的工作?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM