gpt4 book ai didi

java - 处理响应代码 : 403 for URL with clojure enlive

转载 作者:可可西里 更新时间:2023-11-01 16:25:46 26 4
gpt4 key购买 nike

我正在尝试使用 enlive 的 html-resource 函数抓取网页内容,但我收到响应 403,因为我不是来自浏览器。我猜这可以在 Java 中被覆盖(找到答案 here ) ,但我希望看到一个 clojure 方法来处理这个问题。也许这可以通过向 html-resource 函数提供参数来实现,但我还没有遇到过如何以及需要将什么作为参数传递的示例。任何建议将不胜感激。

谢谢。

最佳答案

Enlive 的 html-resource 没有提供覆盖默认请求属性的方法。您可以像找到的其他答案一样,自己打开连接并将生成的 InputStream 传递给 html-resource

类似下面的东西会处理它:

(with-open [inputstream (-> (java.net.URL. "http://www.example.com/")
.openConnection
(doto (.setRequestProperty "User-Agent"
"Mozilla/5.0 ..."))
.getContent)]
(html-resource inputstream))

不过,拆分成自己的函数可能看起来更好。

关于java - 处理响应代码 : 403 for URL with clojure enlive,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18683565/

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