Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用java读取结果_Java_Sockets_Url_Https - Fatal编程技术网

用java读取结果

用java读取结果,java,sockets,url,https,Java,Sockets,Url,Https,每次我在使用socket读取Google搜索结果时收到这个错误,每次我搜索时它都会给我这个错误,有时它会给我302个响应,现在它给我301个响应,我不知道该怎么办,我只想从Google得到结果,每次我卡在这里,如何分类: HTTP/1.1 301永久移动 地点:http://www.google.com/search?q=java 内容类型:text/html;字符集=UTF-8 日期:2013年2月26日星期二10:57:46 GMT 过期时间:2013年3月28日星期四10:57:46 GM

每次我在使用socket读取Google搜索结果时收到这个错误,每次我搜索时它都会给我这个错误,有时它会给我302个响应,现在它给我301个响应,我不知道该怎么办,我只想从Google得到结果,每次我卡在这里,如何分类:

HTTP/1.1 301永久移动
地点:http://www.google.com/search?q=java
内容类型:text/html;字符集=UTF-8
日期:2013年2月26日星期二10:57:46 GMT
过期时间:2013年3月28日星期四10:57:46 GMT
缓存控制:公共,最大年龄=2592000
服务器:gws
内容长度:232
X-XSS-Protection:1;模式=块
X-Frame-Options:SAMEORIGIN
301移动
文件已移到这里
这是我的密码:

publicstringreadgoogle(字符串关键字,int页){
字符串内容=”;
试一试{
Socket s=新套接字(“google.com”,80);
PrintStream p=新的PrintStream(s.getOutputStream());
p、 打印(“获取/搜索”q=“+关键字+”&开始=“+页面
+“HTTP/1.1\r\n”);
p、 打印(“用户代理:Mozilla/4.0”
+“(兼容;MSIE 7.0;Windows NT 5.1)\r\n”);
p、 打印(“连接:关闭\r\n\r\n”);
InputStreamReader in=新的InputStreamReader(s.getInputStream());
BufferedReader buffer=新的BufferedReader(in);
弦线;
而((line=buffer.readLine())!=null){
内容+=行;
}
}捕获(例外e){
e、 printStackTrace();
}
返回内容;
}

www.google.com
根据您的IP地址将您重定向到特定国家/地区的网站


还提供了
新位置
,您需要为其创建套接字。

将完整URL放入
获取
请求:

 //           ~~~~~~~~~~~~~~~~~~~~~
 p.print("GET http://www.google.com/search?q=" + keyword + ...
 //           ^^^^^^^^^^^^^^^^^^^^^
 //           ADD THE FULL URL HERE

也许它解决了您的问题

301/302表示服务器要求您重新发出请求(重定向)。要处理此问题,请从响应中读取“Location”头,然后从服务器提供的URL发出新的GET请求。在上面的示例中,您被重定向到“”


或者,您可以下拉一个为您处理重定向的库,例如ApacheHTTPCommons。他们的教程可以在这里阅读。

请您解释一下,或者您可以为我提供解决此问题的示例代码。如果您可以放宽您的
Socket
类要求,您可以使用Apache的HttpClient使您的生活更轻松。