您的位置:首页 > 编程语言 > Java开发

javaweb基于内容的图片搜索引擎(5)_问题的分析与后话

2016-04-12 00:43 495 查看
前一篇最后已经表明,我的图片搜索有问题,确实有问题,为啥会有这些呢?

虽然搜索的精度都出来了的,并且也达到了预期的结果。

为啥有些东西会显示不出来呢?

主要原因:就是源网站的限制,我这样明显是在偷流量,那个网站允许爬虫恶意来爬,占资源呢。

但是,既然爬不到,那为啥又能够显示呢?当然原网站通过脚本代码限制了,一个固定的ip来访问的频率。

如果超过一定的频率就会限制的,或者直接直接不允许外网页链接本网站图片。

但是为啥我的索引库里面会有相应的索引呢?当然我推测主要我仅仅是通过流来读取,而并没有来远程链接。

解决思路:第一个找到的方法就是通过高匿名ip来代理,这样是否就可以获得其所有的图片呢?

为此我还特地找了一个专门有代理ip网站,并且自己有写了一个crawlIp来抓取ip,并且通过httclient来检测是否为高匿名。

点击打开网站

项目代码这里就不贴了,主要也是jsoup等来解析网页。

另外一个想到的方法,就是从源头来,我这个引擎呢,并没有本地图片的,爬也仅仅是借用下,用完就还了,

所以我想到的就是本地存储,但是当然这就需要物质支持的,当我把爬完的图片,都存到本地,都建立索引,

并且定期更新,然后在lire的基础上,从底层代码的基础上来提高精度,再把搜索率高的索引靠前......再继续我就是真正的想做一个引擎了

毕竟这仅仅是一个学习的项目,做不大,感觉并不现实也没有物质基础,哈哈哈。

其实最开始的时候,我打算再去利用大数据分布式的知识,这样就能够实现本地存储,但是貌似现阶段并不可能,很多前辈都分享经验,

他们做爬虫的时候,有些或者获得代理ip,或者通过来控制爬取的频率,或者通过拔插网线来更换自己的ip来爬取数据。

也曾尝试过用多线程来缩短爬取和检索的时间。

这整个项目感觉比较难得地方并没有,唯一说起来高大上的工作lire都已经帮你做了,下面给出三个项目,本人编程有限,代码大家也

仅仅参考下吧,钱袋css和html太丑了,可能有些类现在我自己感觉也特别恶心。如果发现有哪些错误和可以更好的方法解决获取不到

源图片的问题,欢迎提出来,大家共同学习

我的获取高匿名ip的项目:https://github.com/anLA7856/CrawIp

我的后台爬图项目:https://github.com/anLA7856/ImageSearch

我的前台检索项目:https://github.com/anLA7856/Crawler
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: