繁体   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