gpt4 book ai didi

java - JEdi​​torPane 无法接受 Google 搜索查询,为什么?

转载 作者:行者123 更新时间:2023-12-01 16:09:11 25 4
gpt4 key购买 nike

我正在使用 JEditorPane 创建一个非常基本的 Web 浏览器,只是为了自学 Java 中的 Swing 和 GUI,但在实现类似 Firefox 的 Google 搜索栏时遇到了困难。

如果是由于 JEditorPane 的限制或我缺乏理解,我不会,但如果我尝试将输入到“Google 搜索”栏中的字符串并使用 JEditorPane 的 setPage() 方法,它不会工作。

这是我的“Google 搜索”按钮的 ActionListener 代码:

public void actionPerformed(ActionEvent arg0) 
{
try
{
content.setPage("http://www.google.com/search?q=" + searchBar.getText());
}
catch (IOException e)
{
JOptionPane.showMessageDialog(frame, "Error searching for: " + searchBar.getText());
}
}

即使我尝试做 content.setPage("http://www.google.com/search?p=test ");它不起作用,那么这是否与 setPage() 获取 URL 字符串的方式有关?因为它不喜欢“?”或“=”字符或者还有其他方法一起完成这一切吗?

感谢您的宝贵时间,

英菲尼迪菲兹

最佳答案

添加一些内容来打印您捕获的异常,您将看到您收到 403 Forbidden from Google .

有很多 Java 机器人,网站已经开始阻止用户代理字段中带有“java”的请求。谷歌会让你获得他们的主页,但不会让你搜索,除非你覆盖用户代理字段。

使用 -Dhttp.agent=myappname/1.0 启动您的 jvm,其中 myappname 是您的应用程序的名称。

关于java - JEdi​​torPane 无法接受 Google 搜索查询,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1842495/

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