gpt4 book ai didi

java - 用Java模拟cURL

转载 作者:行者123 更新时间:2023-12-01 19:04:27 29 4
gpt4 key购买 nike

我想用Java(准确地说是java 7)获取页面的内容。当我使用浏览器进入该网站时,我得到的是关于 cookie、个性化广告等的模式/弹出窗口,当我使用以下示例时,也会发生同样的情况:

URL url = new URL(v1.getUrl());
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestMethod("GET");
InputStream is = con.getInputStream();

偶然间,我发现使用 Bash 中的 cURL 可以得到网站的“正确”输出。和curl URL 我在没有此模式的情况下得到响应。当我在 Java 代码中使用 curl 时,也会发生同样的事情:

ArticleExtractor.getInstance().getText(new InputStreamReader(new ProcessBuilder(("curl "+url).split("")).start().getInputStream())).

有没有办法不使用curl并在Java中获得相同的结果?

最佳答案

尝试在 con.setRequestMethod() 之后添加此行。

con.setRequestProperty("User-Agent", "curl/7.65.0");

如果有效,则意味着 HTTP 服务器为 curl 提供的内容与其他浏览器不同。

关于java - 用Java模拟cURL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59586048/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com