簡體   English   中英

使用Java的URLConnection出現問題

[英]An issue with an URLConnection using java

我正在嘗試讀出網站的代碼。 但是,如果我想接收該站點的代碼,就會出現問題:“ https://www.amazon.de/gp/bestsellers/pet-supplies/#2 ”我嘗試了很多,但仍然只是收到https://www.amazon.de/gp/bestsellers/pet-supplies的代碼”。因此,某些事情行不通,因為我想接收21-40而不是1-20的位置。我使用的是URLConneciton和BufferedReader:

public String fetchPage(String urlS){       
    String s = null;
    String qc = null;

    try{
    URL url = new URL(urlS);
    URLConnection uc = url.openConnection();
    uc.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:51.0) Gecko/20100101 Firefox/51.0");

    BufferedReader reader = new BufferedReader(new InputStreamReader(uc.getInputStream()));


    while((s = reader.readLine()) != null){
        qc += s;
    }
    reader.close();
    } catch(IOException e) {            
        e.printStackTrace();
        qc = "receiving qc failed";
    }
    return qc;
}

預先感謝您的努力:)

您要獲取的URL包含一個achor(末尾為#2)。 錨是客戶端概念,最初用於跳轉到頁面的特定部分。 某些Web應用程序(主要是單頁應用程序)使用定位符來跟蹤某種狀態(例如,您正在查看的產品頁面)。

由於錨是客戶端概念,因此響應的網絡服務器(或瀏覽器/ HTTP客戶端庫)僅會丟棄所有錨 ,就好像您實際請求了https://www.amazon.de/gp/bestsellers/pet-supplies

最重要的是,您將永遠不會獲得第二頁。。。雖然刮刮亞馬遜,但運氣不錯;)

暫無
暫無

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

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