Python实现网页爬虫基本实现代码解读

开发 后端
Python实现网页爬虫的实现,可以帮助用户轻松的实现网页的离线查看,那么在这篇文章中,我们将会通过一段代码为大家详细解读相关操作方法。

Python是一款功能强大的计算机程序语言,同时也可以被看做是一款面向对象的通用型语言。它的功能特点比较突出,极大的方便开发人员应用。在这里我们先来一起了解一下有关Python市县网页爬虫的方法。

今天看到一个网页,又因为在家里用电话线上网,一直在线阅读很麻烦。所以就写了个简单的程序把网页抓下来离线阅读,省点电话费:)这个程序因为主页面链接到的页面都在同一个目录下,结构很简单,只有一层。因此写了一些硬编码做链接地址的分析。

Python实现网页爬虫代码如下:

  1. #!/usr/bin/env python  
  2. # -*- coding: GBK -*-  
  3. import urllib  
  4. from sgmllib import SGMLParser  
  5. class URLLister(SGMLParser):  
  6. def reset(self):  
  7. SGMLParser.reset(self)  
  8. self.urls = []  
  9. def start_a(self, attrs):  
  10. href = [v for k, v in attrs if k == 'href']  
  11. if href:  
  12. self.urls.extend(href)  
  13. url = r'http://www.sinc.sunysb.edu/Clubs/buddhism/JinGangJingShuoShenMo/' 
  14. sock = urllib.urlopen(url)  
  15. htmlSource = sock.read()  
  16. sock.close()  
  17. #print htmlSource  
  18. f = file('jingangjing.html', 'w')  
  19. f.write(htmlSource)  
  20. f.close()  
  21. mypath = r'http://www.sinc.sunysb.edu/Clubs/buddhism/JinGangJingShuoShenMo/' 
  22. parser = URLLister()  
  23. parser.feed(htmlSource)  
  24. for url in parser.urls:  
  25. myurl = mypath + url  
  26. print "get: " + myurl  
  27. sock2 = urllib.urlopen(myurl)  
  28. html2 = sock2.read()  
  29. sock2.close()  
  30. # 保存到文件  
  31. print "save as: " + url  
  32. f2 = file(url, 'w')  
  33. f2.write(html2)  
  34. f2.close() 

以上就是我们为大家介绍的有关Python实现网页爬虫的实现方法。

【编辑推荐】

  1. 深度讲述Python标准语言特性
  2. 深度剖析Python语言奥秘
  3. 探秘简单强大的Python语言
  4. 对Python测试问题全解析
  5. 几分钟教会您Python程序配置问题
责任编辑:曹凯 来源: 博客园
相关推荐

2010-02-06 09:46:46

C++单向链表

2010-08-04 11:37:44

PHP NFS

2010-07-17 00:53:50

CMD Telnet

2010-03-05 13:38:13

Python数据转换

2010-06-04 14:24:12

Linux 查看网络流

2010-09-13 14:17:42

CSS纵向导航菜单

2009-12-18 16:12:11

Ruby加密

2021-04-15 21:21:59

代码热Python函数

2017-05-16 15:33:42

Python网络爬虫核心技术框架

2010-06-24 17:57:45

chkconfig h

2024-08-19 09:04:50

2010-02-06 13:42:36

C++单件模式

2010-06-17 15:01:24

Linux查看磁盘空间

2020-04-02 15:39:51

代码编译器前端

2011-08-29 11:25:29

清空service bSQL Server

2023-11-09 09:28:09

Java代码

2010-02-01 13:34:07

C++获得系统时间

2010-03-03 13:32:08

Python压缩文件

2017-08-09 15:27:33

python爬虫开发工具

2020-04-10 12:25:28

Python爬虫代码
点赞
收藏

51CTO技术栈公众号