java网络编程——获取网页图片

2025-03-01 10:39:29
推荐回答(3个)
回答1:

这个很容易的,用JAVA发HTTP请求就行了,如果是要登录的话,就先用HTTP请求先模拟登录后,带上头部的SESSION信息,再用JAVA发HTTP请求就行了。
下面是程序的代码:
图片地址先要用HTTP请求在网页中抓出来。

String urlStr2="图片地址";
URL url2 = new URL(urlStr2);
HttpURLConnection connection2 = (HttpURLConnection) url2.openConnection();
cookieVal=null;
key=null;
for (int i = 1; (key = connection2.getHeaderFieldKey(i)) != null; i++ ) {
if (key.equalsIgnoreCase("set-cookie")) {
cookieVal = connection2.getHeaderField(i);
cookieVal = cookieVal.substring(0, cookieVal.indexOf(";"));
cookies=cookies+cookieVal+";";
}
}
String maks="要存放的路径";
String picname=System.currentTimeMillis()+".jpg";
File imgCodeFile = new File(maks+picname);
connection2.connect();
BufferedImage image = ImageIO.read(connection2.getInputStream());
ImageIO.write(image, "gif", imgCodeFile);

回答2:

当然可以,既然是网络编程,双方自然是已知的啊。
socket可以通过
getinetaddress()获取,但我怀疑你想问得是web编程,那就通过request的getremotehost()
获取。

回答3:

HttpClient 模拟浏览器登录、下载