最近爬虫下载论坛时出现了一些奇怪的问题。
1.下载一半就无法下载
2.下载了很多空页面,提示说页面不存在
问题一:原因分析,由于网站对一个IP在一个时间片内访问太频繁,导致封IP。
解决方案:减缓爬虫下载间隔,多个网站一起下载,而且网站越多越好,可以错开下载。
问题二:初步分析,下载的页面是html的,怎么可能有这个问题?因为下载的论坛是开源的discuz,我们都知道discuz有一个缓存机制,管理员可以删除帖子,可是被删除的帖子还存在服务器缓存中,由此可以证明那些html都是伪静态的页面,而且爬虫下载是通过服务器缓存的。通过日志可以发现: 类似于百度,google这类的大网站,他们的爬虫都是不通过服务器缓存的。
爬虫也是 通过 URLConnection 啊那什么HTTPURLConnection 还是 httpclient 都继承这个建立连接 服务器返回给你什么就是什么,做了缓存服务器就返回给你缓存
爬虫通过URL建立Socket,和服务器通信,获取资源即可。所以抓不抓后台,在于服务器给它什么资源.爬虫是不知道什么后台不后台的。都是服务器给它资源,也就是InputStream
分享到:
相关推荐
Servercache(处理器缓存):存放服务器的持久信息,能够被爬行部件随时 查到,包括IP地址,历史记录,机器人策略。 处理器链: 预取链:主要是做一些准备工作,例如,对处理进行延迟和重新处理,否决随后的操作...
1. **启动与安装**: 首先,你需要下载Heritrix的源码或预编译的二进制包,根据系统环境进行安装。安装完成后,通过命令行启动Heritrix,如在Java环境中使用`java -jar heritrix.jar`。 2. **配置文件结构**: ...
Heritrix是一个开源,可扩展的web爬虫项目。...服务器缓存(Server cache)存放服务器的持久信息,能够被爬行部件随时查到,包括被抓取的Web服务器信息,例如DNS查询结果,也就是IP地址。 标签:Heritrix
Heritrix的这些链结构使得开发者可以根据需要定制复杂的爬虫策略,通过调整和扩展各个链中的处理器,实现对网络内容的精确抓取和处理。无论是处理DNS解析、HTTP请求,还是从各种格式的文档中提取链接,Heritrix的...
Heritrix支持多种协议(如HTTP、HTTPS)下载网页,并处理重定向、缓存、Cookie等网络交互细节。它还提供了断点续传功能,以提高爬取效率。 4. **内容解析**: 爬取到的网页会通过解析器进行处理,提取出文本内容...
3. **下载器(Fetcher)**:下载器负责从Web服务器获取页面内容,同时处理HTTP请求和响应,如重定向、缓存控制和重试策略。 4. **解析器(Parser)**:解析器对下载的HTML、XML或其他格式的文档进行解析,提取出...
同时,可以通过调整Lucene的各种参数来优化搜索性能,例如设置分词器、使用缓存等。 在"testDWR"这个文件中,可能包含了演示如何将Heritrix与Lucene集成的代码示例或配置文件。DWR(Direct Web Remoting)是一个...
论文中将着重讲解如何搭建一个高效稳定的搜索引擎系统,以及如何对系统进行性能优化,包括但不限于查询处理、索引构建、数据加载、缓存策略等方面。 值得注意的是,论文中还提到了一些相关的互联网历史和搜索引擎的...
6. **默认服务器缓存(Default Server Cache)**: - 功能:缓存服务器信息。 - 作用:减少重复请求,提高效率。 7. **Heritrix HTTP方法重试处理器(Heritrix Http Method Retry Handler)**: - 功能:处理...
- Lucene+Heritrix:全文搜索和爬虫。 21. **开源许可协议**: - MPL,PGL,Artistic,Public Domain,LGPL,Apache,BSD:了解并选择合适的开源许可证。 22. **编程协议**: - HTTP,SMTP,POP3,SNMP,UDP,...
- **Web应用服务器**:熟练使用Tomcat、JBoss、Resin、Jetty、Apache、EasyPHP等。 - **缓存技术**:熟练使用Redis,掌握Jetis API。 - **前端技术**:熟练使用jQuery制作网页特效,了解ExtJs 3.0;了解...