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