Python实现周期性抓取网页内容的方法


Posted in Python onNovember 04, 2015

本文实例讲述了Python实现周期性抓取网页内容的方法。分享给大家供大家参考,具体如下:

1.使用sched模块可以周期性地执行指定函数

2.在周期性执行指定函数中抓取指定网页,并解析出想要的网页内容,代码中是六维论坛的在线人数

论坛在线人数统计代码:

#coding=utf-8
import time,sched,os,urllib2,re,string
#初始化sched模块的scheduler类
#第一个参数是一个可以返回时间戳的函数,第二个参数可以在定时未到达之前阻塞。
s = sched.scheduler(time.time,time.sleep)
#被周期性调度触发的函数
def event_func():
  req = urllib2.Request('http://bt.neu6.edu.cn/')
  response = urllib2.urlopen(req)
  rawdata = response.read()
  response.close()
  usernump = re.compile(r'总计 <em>.*?</em> 人在线')
  usernummatch = usernump.findall(rawdata)
  if usernummatch:
    currentnum=usernummatch[0]
    currentnum=currentnum[string.index(currentnum,'>')+1:string.rindex(currentnum,'<')]
    print "Current Time:",time.strftime('%Y,%m,%d,%H,%M',time.localtime(time.time())),'User num:',currentnum
    # 保存结果,供图表工具amcharts使用
    result=open('liuvUserNUm','a')
    result.write('{year: new Date('+time.strftime('%Y,%m,%d,%H,%M',time.localtime(time.time()))+'),value:'+currentnum+'},\n')
    result.close()
#enter四个参数分别为:间隔事件、优先级(用于同时间到达的两个事件同时执行时定序)、被调用触发的函数,给他的参数(注意:一定要以tuple给如,如果只有一个参数就(xx,))
def perform(inc):
  s.enter(inc,0,perform,(inc,))
  event_func()
def mymain(inc=900):
  s.enter(0,0,perform,(inc,))
  s.run()
if __name__ == "__main__":
  mymain()

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python使用multiprocessing创建进程的方法
Jun 04 Python
在Python的while循环中使用else以及循环嵌套的用法
Oct 14 Python
详解Python装饰器由浅入深
Dec 09 Python
Python3 伪装浏览器的方法示例
Nov 23 Python
用tensorflow实现弹性网络回归算法
Jan 09 Python
Python使用selenium实现网页用户名 密码 验证码自动登录功能
May 16 Python
解决python中用matplotlib画多幅图时出现图形部分重叠的问题
Jul 07 Python
Python从入门到精通之环境搭建教程图解
Sep 26 Python
python实现信号时域统计特征提取代码
Feb 26 Python
PyQt使用QPropertyAnimation开发简单动画
Apr 02 Python
如何解决flask修改静态资源后缓存文件不能及时更改问题
Aug 02 Python
python基于opencv批量生成验证码的示例
Apr 28 Python
Python压缩解压缩zip文件及破解zip文件密码的方法
Nov 04 #Python
python通过文件头判断文件类型
Oct 30 #Python
python制作花瓣网美女图片爬虫
Oct 28 #Python
python制作最美应用的爬虫
Oct 28 #Python
python使用wmi模块获取windows下的系统信息 监控系统
Oct 27 #Python
详解JavaScript编程中的window与window.screen对象
Oct 26 #Python
深入讲解Python中的迭代器和生成器
Oct 26 #Python
You might like
PHP调用MySQL存储过程并返回值的方法
2014/12/26 PHP
php版微信公众平台接口开发之智能回复开发教程
2016/09/22 PHP
JS下载文件|无刷新下载文件示例代码
2014/04/17 Javascript
jquery实现焦点图片随机切换效果的方法
2015/03/12 Javascript
js实现仿京东2级菜单效果(带延时功能)
2015/08/27 Javascript
详解AngularJS中$http缓存以及处理多个$http请求的方法
2016/02/06 Javascript
JavaScript实现倒计时跳转页面功能【实用】
2016/12/13 Javascript
详解vue与后端数据交互(ajax):vue-resource
2017/03/16 Javascript
JavaScript使用ZeroClipboard操作剪切板
2017/05/10 Javascript
Vue.js数据绑定之data属性
2017/07/07 Javascript
Vue项目中使用better-scroll实现一个轮播图自动播放功能
2018/12/03 Javascript
VUE使用 wx-open-launch-app 组件开发微信打开APP功能
2020/08/11 Javascript
解决vue项目中某一页面不想引用公共组件app.vue的问题
2020/08/14 Javascript
如何在selenium中使用js实现定位
2020/08/18 Javascript
js实现拖拽与碰撞检测
2020/09/18 Javascript
[01:35]辉夜杯战队访谈宣传片—iG.V
2015/12/25 DOTA
在Python中使用mechanize模块模拟浏览器功能
2015/05/05 Python
用python简单实现mysql数据同步到ElasticSearch的教程
2018/05/30 Python
Python3.7黑帽编程之病毒篇(基础篇)
2020/02/04 Python
Python安装Bs4的多种方法
2020/11/28 Python
草莓网英国官网:Strawberrynet UK
2017/02/12 全球购物
Zadig&Voltaire官网:法国时装品牌
2018/01/05 全球购物
加大码胸罩、内裤和服装:Just My Size
2019/03/21 全球购物
皇家阿尔伯特瓷器美国官网:Royal Albert美国
2020/02/16 全球购物
应聘护士自荐信
2013/10/21 职场文书
社区敬老月活动实施方案
2014/02/17 职场文书
2014年党员公开承诺书范文
2014/03/28 职场文书
高三家长寄语
2014/04/03 职场文书
本科毕业生求职自荐信
2014/04/09 职场文书
美术指导助理求职信
2014/04/20 职场文书
教师节学生演讲稿
2014/09/03 职场文书
2014年党员干部四风问题自我剖析材料
2014/09/29 职场文书
2014副镇长民主生活会个人对照检查材料思想汇报
2014/09/30 职场文书
社区灵活就业证明
2014/11/03 职场文书
倡议书怎么写?
2019/04/11 职场文书
Golang 入门 之url 包
2022/05/04 Golang