java网络图片抓取及其引发的相关问题

这篇博文以及上篇博文的“诞生”的原因都是因为本人想抓取一下蛋蛋网mz图引出的(声明:本人是一个志趣高洁,脱离了低级趣味的程序员,抓取mz图片只为技术研究使用得意)。


抓取网络图片是个比较简单的过程,基本思路如下:

基于上篇博文,已经拿到图片地址了,将图片地址(使用URLConnection)转化为输入流。

将输入流和输出流对接,存到本地。


一般网站可能会防止图片抓取,这时候的解决办法就是模拟浏览器访问,添加header。


思路简单,但是当解析mz图网页的HTML时,解析不出src,看了一下html源代码,为了防止抓取,蛋蛋网对图片地址做了处理,直接解析不出来。

继续分析,发现蛋蛋网通过JavaScript对图片地址进行了处理,接下来有两个选择:

1.在java中执行javascript 

2.将蛋蛋网图片地址Javascipt处理函数用java重写一遍


最后我选择的第二种方法(第一种方法充满了大坑),其中经过了MD5加解密,base64加解码,各种转化,截取,终于解析出了图片地址(图片其实是保存在新浪图片服务器上的),蛋蛋网应该只保存了图片地址。

运行代码,喝杯茶后,接下来,就是欣赏艺术的时间得意


如有错误,欢迎指正

end

猜你喜欢

转载自blog.csdn.net/wjw521wjw521/article/details/78815362