1. # -*- coding: UTF-8 -*-
  2. from HTMLParser import HTMLParser
  3. import sys,urllib2,string,re,json
  4.  
  5. reload(sys)
  6. sys.setdefaultencoding('utf-8')
  7.  
  8. class hp(HTMLParser):
  9.  
  10. def __init__(self):
  11. self.readingdata_a = False
  12. self.title = []
  13. self.usite = []
  14. HTMLParser.__init__(self)
  15.  
  16. def handle_starttag(self,tag,attrs):
  17. #print tag
  18. if tag == 'a':for h,v in attrs:
  19. if v == 'entrylistItemTitle':
  20. self.readingdata_a = True
  21. self.usite.append(attrs[2][1])
  22.  
  23. def handle_data(self,data):
  24. if self.readingdata_a:
  25. self.title.append(data)
  26.  
  27. def handle_endtag(self,tag):
  28. if tag == 'a':
  29. self.readingdata_a = False
  30.  
  31. def getdata(self):
  32. #return zip(self.title,self.usite) 通过zip函数将其一对一合并为tuple
  33.  
  34. i=0
  35. listr = []
  36. while i<len(self.title):
  37. listr.append(self.title[i] +' : '+self.usite[i])
  38. i=i+1
  39. return listr
  40.  
  41. url='http://www.cnblogs.com/dreamer-fish/archive/2016/03.html'
  42. request = urllib2.Request(url)
  43. response = urllib2.urlopen(request).read()
  44.  
  45. yk=hp()
  46. yk.feed(response)
  47. dd = yk.getdata()
  48.  
  49. for i in dd:
  50. print i
  51.  
  52. yk.close

结果:

spider-抓取页面内容的更多相关文章

  1. 【java】抓取页面内容,提取链接(此方法可以http get无需账号密码的请求)

    package 网络编程; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileOutpu ...

  2. 如何使用angularjs实现抓取页面内容

    <html ng-app="myApp"> <head> <title>angularjs-ajax</title> <scr ...

  3. nodejs抓取页面内容,并分析有无某些内容的js文件

    nodejs获取网页内容绑定data事件,获取到的数据会分几次相应,如果想全局内容匹配,需要等待请求结束,在end结束事件里把累积起来的全局数据进行操作! 举个例子,比如要在页面中找有没有www.ba ...

  4. PHP cURL库函数抓取页面内容

    目录 1 为什么要用cURL? 2 启用cURL 3 基本结构 4 检查错误 5 获取信息 6 基于浏览器的重定向 7 用POST方法发送数据 8 文件上传 9 cURL批处理(multi cURL) ...

  5. C#使用CSS选择器抓取页面内容

    最近在查wpf绘图资料时,偶然看到Python使用CSS选择器抓取网页的功能.觉得很强,这里用C#也实现一下. 先介绍一下CSS选择器 在 CSS 中,选择器是一种模式,用于选择需要添加样式的元素. ...

  6. 基于puppeteer模拟登录抓取页面

    关于热图 在网站分析行业中,网站热图能够很好的反应用户在网站的操作行为,具体分析用户的喜好,对网站进行针对性的优化,一个热图的例子(来源于ptengine) 上图中能很清晰的看到用户关注点在那,我们不 ...

  7. Java爬虫系列二:使用HttpClient抓取页面HTML

    爬虫要想爬取需要的信息,首先第一步就要抓取到页面html内容,然后对html进行分析,获取想要的内容.上一篇随笔<Java爬虫系列一:写在开始前>中提到了HttpClient可以抓取页面内 ...

  8. 用PHP抓取页面并分析

    在做抓取前,记得把php.ini中的max_execution_time设置的大点,不然会报错的.

  9. 使用PHP的正则抓取页面中的网址

    最近有一个任务,从页面中抓取页面中所有的链接,当然使用PHP正则表达式是最方便的办法.要写出正则表达式,就要先总结出模式,那么页面中的链接会有几种形式呢?   链接也就是超级链接,是从一个元素(文字. ...

  10. php抓取页面的几种方式

    在做一些天气预报或者RSS订阅的程序时,往往 需要抓取非本地文件,一般情况下都是利用php模拟浏览器的访问,通过http请求访问url地址, 然后得到html源代码或者xml数据,得到数据我们不能直接 ...

随机推荐

  1. Spring4.x所有Maven依赖

    Spring4.x所有Maven依赖 定义Spring版本号 1 <properties> 2 <org.springframework.version>4.3.7.RELEA ...

  2. git移除文件夹的版本控制

    案例背景:git提交的时候把bin文件下的各种.dll提交上去了,然后每次提交都得提交好多文件,很容易忽略你真正修改的东西,故对这些不必要的东西忽略掉 解决方案:git rm 命令参数 具体实施: 1 ...

  3. idea创建maven的web工程

    然后一路点next 接下去添加tomcat 成功 控制台出现乱码的话 输入:-Dfile.encoding=UTF-8 控制台乱码解决

  4. PL/SQL Developer 和 Instant Client客户端安装配置

    一. 准备工作 1. 点击此下载 PL/SQL Developer 2. 点击此下载 Instant Client 二. 配置Instant Client 1. 新建  %安装目录%\network\ ...

  5. java设计模式-----15、适配器模式

    概念: Adapter模式也叫适配器模式,是构造型模式之一,通过Adapter模式可以改变已有类(或外部类)的接口形式. 举个例子:我们使用电脑,家里的电源是220V的,而我们的电脑是18V的,这时如 ...

  6. css-扩展选择器

    (1)关联选择器 <div><p>aaaaaaaaaaaa</p></div> * 设置div标签里面p标签的样式,嵌套标签里面的样式 div p{ b ...

  7. 【代码笔记】iOS-archive保存图片到本地

    一,工程图: 二,代码: RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController : UIVi ...

  8. DNS必知必会

    什么是DNS? DNS服务器(Domain Name Server,域名服务器)是进行域名和与之相对应的IP地址进行转换的服务器. 基本概念 DNS服务器中保存了一张域名和与之相对应的IP地址 的表, ...

  9. sql语句执行出错:Incorrect integer value: '' for column 'id' at row 1

    经检验:mysql5以上的版本如果是空值应该要写NULL. 例如:insert into web_works (work_id,work_name,work_number) values ('','$ ...

  10. hallo world