思路::
(本文没有用xpath定位,xpath需要导入第三方库 from lxml import etree)
1.首先通过urllib类获取到网页的所有内容
2.通过partition获取其中的部分内容
3.在通过指定内容放到放到一个list中1!
代码如下:
#encoding: utf-8 import urllib, os # 获取网页内容 def getContent(urlAddr): page = urllib.urlopen(urlAddr) html = page.read() return html # 获取指定内容 def content(html): str = r'<div id="post_list">' content = html.partition(str)[2] str1 = r'<script>' content = content.partition(str1)[0] # 爬取内容太存到list中 def getTitleName(content, beg = 0): try: title_list = [] while True: num1 = content.index('target="_blank">', beg)+16 num2 = content.index('</a>', num1) title_list.append(content[num1:num2]) beg = num2 except ValueError: return title_list SourceUrl = "http://www.cnblogs.com/pick/" contentTotal = getContent(SourceUrl) specilContent = content(contentTotal) for i in range (1, 40): print "%d标题是:%s" % (i, getTitleName(contentTotal)[i])
显示效果为:
1标题是:架构之路(五):忘记数据库 2标题是:.NET基础拾遗(5)多线程开发基础 3标题是:你为什么不分享 4标题是:架构之路(三) 单元测试 5标题是:从中间件的历史来看移动App开发的未来 6标题是:架构之路(二):性能 7标题是:每个人都应该懂点函数式编程 8标题是:程序员读书这件事情 9标题是:前端代码异常日志收集与监控 10标题是:iOS开发系列--Swift语言 11标题是:设计-简约而不简单 12标题是:Entity Framework教程(第二版) 13标题是:搞个这样的APP要多久? 14标题是:REST简介 15标题是:探索C#之6.0语法糖剖析 16标题是:CLR 这些年有啥变化吗? 17标题是:理想的应用框架 18标题是:Web性能优化:What? Why? How? 19标题是:CSS十问——好奇心+刨根问底=CSSer 20标题是:难免的尴尬:代码依赖 21标题是:反馈或建议 22标题是:官方博客 23标题是:博客模板 24标题是:.NET招聘 25标题是:Java招聘 26标题是:C++招聘 27标题是:PHP招聘 28标题是:Web前端招聘 29标题是:<img src="http://img.cnblogs.com/friend_links/logo_aliyun.jpg" alt="阿里云" /> 30标题是:沪江网 31标题是:站长之家 32标题是:天极网 33标题是:A5源码下载 34标题是:葡萄城控件 35标题是:又拍云存储 36标题是:高考查分 37标题是:听云APP 38标题是:融云IM云 39标题是:极光推送 [Finished in 0.7s]
github地址为: