Python获取央视节目单的实现代码


Posted in Python onJuly 25, 2015

本文实例讲述了Python获取央视节目单的方法。分享给大家供大家参考。具体如下:

#! /usr/bin/python 
# -*- coding: utf-8 -*- 
import urllib,re,unicodedata,string,sys 
from time import strftime,localtime 
channel={"1":"CCTV-1","2":"CCTV-2","3":"CCTV-3","4":"CCTV-4亚洲", 
  "5":"CCTV-4欧洲","6":"CCTV-4美洲","7":"CCTV-5","8":"CCTV-6", 
  "9":"CCTV-7","10":"CCTV-8","11":"CCTV-9","12":"CCTV-10", 
  "13":"CCTV-11","14":"CCTV-12","15":"CCTV新闻","16":"CCTV少儿", 
  "17":"CCTV音乐","18":"CCTV_E","19":"CCTV-F","20":"CCTV-高清"} 
if __name__=="__main__": 
  print "@@" 
  print "@@ 你可以在命令行后输入数字(1-20)来选择频道 " 
  print "@@ 通过在命令行后键入help获取频道列表" 
  print "@@" 
  if len(sys.argv)==1: 
    Select="8" 
  else: 
    if sys.argv[1]=="help": 
      for i in range(len(channel)): 
        print "%3d : %11s" % (i+1, channel["%s" % (i+1)]), 
        if(i%4 == 3): 
          print "" 
      sys.exit(0) 
    if string.atoi(sys.argv[1])>20 or string.atoi(sys.argv[1])<=0: 
      print "Out of Range. Please Select 1-20." 
      sys.exit(0) 
    else: 
      Select=sys.argv[1] 
  print '正在获取节目单,请稍后...' 
  date=strftime('%Y%m%d',localtime()) 
  response = urllib.urlopen("http://tv.cctv.com/soushi/28/0"+Select+"/"+date+".shtml") 
  Result=response.read() 
  #list=re.findall(r"<div class='tlb_right'><div class='l'>(.+?)<script",Result,re.S) 
  list=re.findall(r"上午节目(.+?)<script",Result,re.S) 
  list2=re.findall(r"<li>(.+?)</li>",list[0],re.S) 
  morning=[] 
  afternoon=[] 
  listnum=0 
  for i in range(len(list2)): 
    i=re.sub('<.+?>','',list2[i]) 
    if string.atoi(i[:2])>=12: #将上午的节目于下午的节目分开 
      afternoon.append(i) 
    else: 
      morning.append(i) 
  if len(morning)>len(afternoon): 
    listnum=len(morning) 
  else: 
    listnum=len(afternoon) 
  print "-"*80, 
  print " "*13+"上午节目"+" "*26+"下午节目" 
  print " "*14+"========"+" "*26+"========" 
  for i in range(listnum): 
    if(i<len(morning)): 
      print "%-4s %-29s" %(morning[i][:5],morning[i][5:]), 
    else: 
      print " "*35, 
    if(i<len(afternoon)): 
      print "%-4s %-30s" %(afternoon[i][:5],afternoon[i][5:]) 
    else: 
      print " "*37 
  print "-"*80, 
  print " "*24,strftime("%Y年%m月%d日"), 
  print "%s 节目单" %channel[Select]

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

Python 相关文章推荐
python使用marshal模块序列化实例
Sep 25 Python
python比较两个列表大小的方法
Jul 11 Python
在CentOS6上安装Python2.7的解决方法
Jan 09 Python
Python实现定时精度可调节的定时器
Apr 15 Python
selenium+python实现自动化登录的方法
Sep 04 Python
tensorflow使用神经网络实现mnist分类
Sep 08 Python
python使用zip将list转为json的方法
Dec 31 Python
python使用pipeline批量读写redis的方法
Feb 18 Python
pytorch 自定义参数不更新方式
Jan 06 Python
Python实现播放和录制声音的功能
Aug 12 Python
python各种excel写入方式的速度对比
Nov 10 Python
python爬虫爬取某网站视频的示例代码
Feb 20 Python
Python实现将DOC文档转换为PDF的方法
Jul 25 #Python
将Django框架和遗留的Web应用集成的方法
Jul 24 #Python
将Python的Django框架与认证系统整合的方法
Jul 24 #Python
Django与遗留的数据库整合的方法指南
Jul 24 #Python
简介Django中内置的一些中间件
Jul 24 #Python
Python字符串转换成浮点数函数分享
Jul 24 #Python
详解Python的Django框架中的中间件
Jul 24 #Python
You might like
yii的CURD操作实例详解
2014/12/04 PHP
无需数据库在线投票调查php代码
2016/07/20 PHP
php数组指针操作详解
2017/02/14 PHP
js操作iframe的一些方法介绍
2013/06/25 Javascript
jQuery中大家不太了解的几个方法
2015/03/04 Javascript
Vuejs第十一篇组件之slot内容分发实例详解
2016/09/09 Javascript
浅谈JS函数定义方式的区别
2016/10/30 Javascript
jQuery实现的checkbox级联选择下拉菜单效果示例
2016/12/26 Javascript
100行代码理解和分析vue2.0响应式架构
2017/03/09 Javascript
socket.io学习教程之深入学习篇(三)
2017/04/29 Javascript
微信小程序实现图片懒加载的示例代码
2017/12/13 Javascript
vue-router 组件复用问题详解
2018/01/22 Javascript
JavaScript变量声明var,let.const及区别浅析
2018/04/23 Javascript
vue ssr 指南详读
2018/06/29 Javascript
layui弹出层按钮提交iframe表单的方法
2018/08/20 Javascript
vue项目接口管理,所有接口都在apis文件夹中统一管理操作
2020/08/13 Javascript
Python的包管理器pip更换软件源的方法详解
2016/06/20 Python
python线程、进程和协程详解
2016/07/19 Python
python开发准备工作之配置虚拟环境(非常重要)
2019/02/11 Python
啥是佩奇?使用Python自动绘画小猪佩奇的代码实例
2019/02/20 Python
python3多线程知识点总结
2019/09/26 Python
python NumPy ndarray二维数组 按照行列求平均实例
2019/11/26 Python
CSS中的字体大小设置属性总结
2016/05/24 HTML / CSS
美国著名珠宝品牌之一:Jared The Galleria Of Jewelry
2016/10/01 全球购物
促销活动策划方案
2014/01/12 职场文书
出国签证在职证明
2014/01/16 职场文书
个人对照检查材料
2014/02/12 职场文书
党员公开承诺书内容
2014/05/20 职场文书
2015届大学生就业推荐表自我评价
2014/09/27 职场文书
机关干部四风问题自我剖析及整改措施
2014/10/26 职场文书
2014幼儿园家长工作总结
2014/11/10 职场文书
报案材料怎么写
2015/05/25 职场文书
2016年小学生迎国庆广播稿
2015/12/18 职场文书
详解如何使用Node.js实现热重载页面
2021/05/06 Javascript
Python爬虫基础初探selenium
2021/05/31 Python
使用python绘制分组对比柱状图
2022/04/21 Python