Atitit.网页爬虫的架构总结

1. 总数的结构..(接口方法) 1

2. 获得页数 1

3. 跳页处理(接口方法) 2

4. 单个的页面处理(接口方法) 2

4.1. 获得页面url 3

4.2. 获得页面html 3

4.3. 获得list 3

4.4. 处理单个的数据条目 3

5. 调用 4

6. 日志的实现 4

7. 参考 4

1. 总数的结构..(接口方法)

public String exec( ) throws IOException     {

fx=new filex(fileName);

int pages=getpage();

;i<=pages;i++)

{

if(i<pageStart)

continue;

try {

singlePage(i);

} catch (Exception e) {

e.printStackTrace();

}

}

fx.close();

2. 获得页数

getpage();

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

3. 跳页处理(接口方法)

if(i<pageStart)

continue;

4. 单个的页面处理(接口方法)

*/

private void singlePage(int page) throws ConnEx, NoRztEx, ParseLsitEx {

String html = null;

try {

String api = (String) getCurPageUrl(page);

//http://www.czvv.com/k5bu6562Rp0c0cc0s0m0e0f0d0.html

websitex wc = new websitex();

wc.refer="

);

}   catch (Exception e) {

e.printStackTrace();

throw new ConnEx(e.getMessage());

}

//================trace

if (new File("C:\\traceOk").exists())

filex.save_safe(html, "c:\\rztTrace.html");

List li=getList(html);

for(Object obj:li)

{

try {

processItem(obj);

} catch (Exception e) {

e.printStackTrace();

}

}

4.1. 获得页面url

4.2. 获得页面html

4.3. 获得list

private List getList(String html) throws NoRztEx, ParseLsitEx {

try {

Document doc = null;

doc = Jsoup.parse(html);

Elements tabs = doc.getElementsByTag("ol");

return tabs;

} catch (Exception e) {

e.printStackTrace();

//System.out.println("norzt:" + addr);

throw new ParseLsitEx("noRzt");

}

4.4.  处理单个的数据条目

private void processItem(Object obj) {

Element item=(Element) obj;

).text();

);

).text();

).text();

).text();

String line = name+","+tel+","+lyesyiren+","+addr;

fx.appendLine_flush_safe(line);

System.out.println( line);

}

5. 调用

WebInfoX x=new WebInfoX();

];// "c:\\r2.csv";

]);

]);;

x.exec( );

System.out.println("--fi");

}

6. 日志的实现

使用默认的console最简单的..或者使用queue+textarea....麻烦的

7. 参考

paip.c++ qt 网页爬虫 的 网络编程 总结 - attilax的专栏 - 博客频道 - CSDN.NET.htm

Atitit.网页爬虫的架构总结的更多相关文章

  1. Python静态网页爬虫相关知识

    想要开发一个简单的Python爬虫案例,并在Python3以上的环境下运行,那么需要掌握哪些知识才能完成一个简单的Python爬虫呢? 爬虫的架构实现 爬虫包括调度器,管理器,解析器,下载器和输出器. ...

  2. Atitit 网络爬虫与数据采集器的原理与实践attilax著 v2

    Atitit 网络爬虫与数据采集器的原理与实践attilax著 v2 1. 数据采集1 1.1. http lib1 1.2. HTML Parsers,1 1.3. 第8章 web爬取199 1 2 ...

  3. Python 网页爬虫 & 文本处理 & 科学计算 & 机器学习 & 数据挖掘兵器谱(转)

    原文:http://www.52nlp.cn/python-网页爬虫-文本处理-科学计算-机器学习-数据挖掘 曾经因为NLTK的缘故开始学习Python,之后渐渐成为我工作中的第一辅助脚本语言,虽然开 ...

  4. [resource-]Python 网页爬虫 & 文本处理 & 科学计算 & 机器学习 & 数据挖掘兵器谱

    reference: http://www.52nlp.cn/python-%e7%bd%91%e9%a1%b5%e7%88%ac%e8%99%ab-%e6%96%87%e6%9c%ac%e5%a4% ...

  5. 【Python】Python 网页爬虫 & 文本处理 & 科学计算 & 机器学习 & 数据挖掘兵器谱

    本文转载自:https://www.cnblogs.com/colipso/p/4284510.html 好文 mark http://www.52nlp.cn/python-%E7%BD%91%E9 ...

  6. Python 3实现网页爬虫

    1 什么是网页爬虫 网络爬虫( 网页蜘蛛,网络机器人,网页追逐者,自动索引,模拟程序)是一种按照一定的规则自动地抓取互联网信息的程序或者脚本,从互联网上抓取对于我们有价值的信息.Tips:自动提取网页 ...

  7. atitit.attilax的软件 架构 理念.docx

    atitit.attilax的软件 架构 理念.docx 1. 预先规划.1 2. 全体系化1 3. 跨平台2 4. 跨语言2 5. Dsl化2 5.1. 界面ui h5化2 6. 跨架构化2 7. ...

  8. Atitit.研发管理---TOGAF架构跟 (ADM开发方法)总结

    Atitit.研发管理---TOGAF架构跟 (ADM开发方法)总结 1. TOGAF是在过去二十年间出现的企业架构框架 1 2. TOGAF内容结构 1 3. TOGAF 实现过程 2 4. 参考 ...

  9. cURL 学习笔记与总结(2)网页爬虫、天气预报

    例1.一个简单的 curl 获取百度 html 的爬虫程序(crawler): spider.php <?php /* 获取百度html的简单网页爬虫 */ $curl = curl_init( ...

随机推荐

  1. 第八章openwrt 703N使用HUB(集线器)插U盘等设备

    在这里就要吐槽一下了,在网上一搜索竟然没有一篇详细的关于703N使用hub后挂载u盘的文章,想了很久问了别人还弄了一天晚上终于弄好了.好吧下面开始言归正传: 1.其实一般质量可以的集线器例如SSK这类 ...

  2. 2016/4/14腾讯Android实习面试

    腾讯实习面试,面试官会先问你会什么,擅长什么.然后会依照这个问,问的也不是非常偏,问道你不会的就换下一个知识点. 主要问我的有这几个问题 图形学 1.Bizer曲线怎么绘制的.原理是什么 2.对栅格有 ...

  3. RS报表设计采用Total汇总过滤出错

    错误信息: DMR 子查询计划失败,并产生意外错误.: java.lang.NullPointerException 如图 原因是在RS过滤器中添加了: total([门诊人次] for [明细科室] ...

  4. k-means聚类算法C++实现

    原文:http://www.cnblogs.com/luxiaoxun/archive/2013/05/09/3069594.html Clustering 中文翻译作“聚类”,简单地说就是把相似的东 ...

  5. 如何:创建签名的友元程序集(C# 和 Visual Basic)

    如何:创建签名的友元程序集(C# 和 Visual Basic) Visual Studio 2013    本示例演示了如何将友元程序集和具有强名称的程序集一起使用. 这两种程序集必须都使用强名称. ...

  6. 【python】如何安装requests

    在cmd窗口输入pip install requests 即可,如下 C:\Users\horn1\Desktop\python\4>pip install requestsCollecting ...

  7. (C++)函数参数传递中的一级指针和二级指针

    主要内容: 1.一级指针和二级指针 2.函数指针传递的例子 3.什么时候需要传递二级指针? 4.二级指针在链表中的使用 1.一级指针和二级指针 一级指针:即我们一般说的指针,就是内存地址: 二级指针: ...

  8. C语言 域名通配符实现

    本例实现通配符 * 的功能,不支持*在字符串的末尾, 仅提供思路,函数仅做简单单元测试. 如有使用,还请自己进行修改 // str1: 待匹配字符串 // str2: 带通配符字串 int wildc ...

  9. PHP XML Parser函数

    PHP XML Parser 函数 PHP XML Parser 简介 XML 函数允许您解析 XML 文档,但无法对其进行验证. XML 是一种用于标准结构化文档交换的数据格式.您可以在我们的 XM ...

  10. log4cplus的安装与使用初步

    1. 简单介绍 log4cplus是C++编写的开源的日志系统,The purpose of this project is to port the excellentLog for Java (lo ...