你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 网络与通信
多线程文章抓取工具的实现(一)
 

   本文探讨如何使用Python语言实现多线程方式下对网络文章进行抓取。

关键词 Python;多线程;文章抓取

 

随着信息时代的发展,人们的生活越来越离不开网络,越来越多的信息通过网络进行传播。笔者习惯在网络上浏览文章,阅读小说,但是如果文章组织为许多章节时,阅读时要经常进行切换,并且页面上还可能有广告之类的东西。因此笔者就想:能否编写一个工具可以将分散的内容抓取下来,合并成单个纯文本文件,这样既可以在不上网时进行阅读,也可以考虑拷贝到手机等设备上进行阅读。经过试验,笔者使用Python语言开发了一个多线程文章抓取工具,它可以对采用以目录方式来组织的文章或小说文本进行抓取。考虑到许多网站的页面代码并不统一,此工具还提供了一个可扩展的框架,基于这个框架,只需要编写对某个网站的内容提取处理模块,就可以完成对新网站的支持。为了提高抓取效率,它还采用了多线程的处理方式。

本文将对整个工具的设计进行详细的描述。

 

一、功能介绍

1. 功能描述

1)多线程页面下载。

2)可对不支持站点进行扩展。

3)支持代理服务器。

4)下载完毕后自动将每章文本合并成一个单个的文本文件。

5)自动识别页面的编码,文件名使用GB18030编码,正文使用utf-8编码。

 

2.环境要求

此工具是使用Python语言开发的,因此需要安装Python(http://www.python.org/)语言环境。同时它使用了pycurl第三方模块(http://pycurl.sourceforge.net/),需要单独下载安装。它是一个命令行程序,可以在命令行下执行:

 

python main.py

 

这样可以看到帮助信息。最简单的执行方式为:

 

python main.py 链接地址

 

其中链接为想要下载内容的目录页面。

结果将保存在zipbooks的子目录下。

 

二、总体设计

1.处理流程

1)主程序对命令行参数进行分析,得到要处理的目录页面地址。抓取此页面。

2)根据地址的域名查找相应的内容解析模块,进行动态装载。然后对目录页面内容进行分析,得到对应的目录信息,将目录信息保存于队列中。

  推荐精品文章

·2024年12月目录 
·2024年11月目录 
·2024年10月目录 
·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089