Python学习 网络编程(六) 网络爬虫
来源:互联网 发布:获取访客qq js代码 编辑:程序博客网 时间:2024/05/21 22:39
所谓的网络爬虫就是利用程序抓取想要的网页或者数据。
下面对程序中所使用模块进行简单分析:
网络方面涉及Python的三个模块htmllib,urllib,urlparse。
1)htmllib这个模块定义了一个可以担当在超文本标记语言(HTML)中解析文本格式文件的基类。该类不直接与I/O有关--它必须被提供字符串格式的输入,并且调用一个“格式设置”对象的方法来产生输出。该HTMLParser类被设计用来作为其他类增加功能性的基类,并且允许它的多数方法被扩展或者重载。该HTMLParser实现支持HTML 2.0(描述在RFC1866中)语言。
2)urllib模块提供的上层接口,使我们可以像读取本地文件一样读取www和ftp上的数据。通过简单的函数调用,URL所定位的资源就可以被你作为输入使用到你的程序中。如果再配以re(正则表达式)模块,那么你就能够下载Web页面、提取信息、自动创建你所寻找的东西。urlretrieve方法直接将远程数据下载到本地。参数filename指定了保存到本地的路径(如果未指定该参数,urllib会生成一个临时文件来保存数据);
3)urlparse模块使我们能够轻松地把URL分解成元件(urlparse),之后,还能将这些元件重新组装成一个URL(urljoin)。当我们处理HTML 文档的时候,这项功能是非常方便的。
系统方面涉及Python的模块比较简单,主要是常用的sys和os两个模块。主要用于文件夹的创建,文件路径的定位和判断等常用功能。这里不再介绍深入介绍。
输入输出方面使用了cStringIO模块。StringIO的行为与file对象非常像,但它不是针对磁盘上文件,而是一个内存中的“文件”,我们可以将操作磁盘文件那样来操作StringIO。
formatter模块主要用于格式化输出。这里的格式化输出不仅仅是“格式化”输出而已。它可以将 HTML 解析器的标签和数据流转换为适合输出设备的事件流( event stream ),从 而 写将事件流相应的输出到设备上。
这个程序所使用的Python解释器版本为2.6.5
下面是代码部分
NetCrawl.py
这里的程序只是简单的抓取网页,如果要抓取指定网页可以加上也正则表达式(模块)来进行处理
- Python学习 网络编程(六) 网络爬虫
- python学习笔记(六)网络编程
- Python网络爬虫(六)-----HTTPBasicAuthHandler认证
- python网络爬虫学习
- Python网络爬虫学习
- 网络爬虫学习 python
- 网络编程学习(六)
- 学习python写网络爬虫(一)
- 学习python写网络爬虫(二)
- 学习python写网络爬虫(三)
- 学习Python之网络爬虫(一)
- Python 网络爬虫学习(一)
- Python学习(网络爬虫精讲)
- Python网络爬虫学习笔记(一)
- 网络爬虫(六):Python中的正则表达式教程
- Python网络爬虫(六):网页语言HTML
- python网络爬虫学习笔记
- Python网络爬虫 学习资源----
- AFX_MANAGE_STATE(AfxGetStaticModuleState()) (转自CSDN:何先生)
- 这是一段神奇的代码,解除禁止右键,禁止复制之类的功能
- mknod命令详解
- HEX 文件和bin文件区别
- [sql server] 查出100以内的素数(质数)
- Python学习 网络编程(六) 网络爬虫
- 购物返现将会是新的网购起点
- 數據庫常用對象查詢(轉)
- 最新MTK指令集锦
- Eclipse:安装maven插件
- ecshop短信设置和短信发送
- chmod命令详解
- ecshop整合会员的教程分析
- MTK 报错集锦