[英]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.