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中二维阵列的变换实例
Oct 09 Python
python3 kmp 字符串匹配的方法
Jul 07 Python
python对象与json相互转换的方法
May 07 Python
python tkinter canvas 显示图片的示例
Jun 13 Python
Python从列表推导到zip()函数的5种技巧总结
Oct 23 Python
Python列表切片常用操作实例解析
Dec 16 Python
Python reshape的用法及多个二维数组合并为三维数组的实例
Feb 07 Python
Python使用docx模块实现刷题功能代码
Feb 13 Python
django实现日志按日期分割
May 21 Python
python3.8.1+selenium实现登录滑块验证功能
May 22 Python
Python用类实现扑克牌发牌的示例代码
Jun 01 Python
使用Python爬取Json数据的示例代码
Dec 07 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
Terran热键控制
2020/03/14 星际争霸
令PHP初学者头疼十四条问题大总结
2008/11/12 PHP
一个php短网址的生成代码(仿微博短网址)
2014/05/07 PHP
PHP资源管理框架Assetic简介
2014/06/12 PHP
thinkPHP自定义类实现方法详解
2016/11/30 PHP
PHP 模拟登陆功能实例详解
2019/09/10 PHP
php7 图形用户界面GUI 开发示例
2020/02/22 PHP
Javascript笔记一 js以及json基础使用说明
2010/05/22 Javascript
style、 currentStyle、 runtimeStyle区别分析
2010/08/01 Javascript
javascript一个无懈可击的实例化XMLHttpRequest的方法
2010/10/13 Javascript
jQuery Jcrop插件实现图片选取功能
2011/11/23 Javascript
一个JavaScript防止表单重复提交的实例
2014/10/21 Javascript
javascript执行环境及作用域详解
2016/05/05 Javascript
浅谈js的url解析函数封装
2016/06/28 Javascript
功能强大的Bootstrap组件(结合js)
2016/08/03 Javascript
Jquery和CSS实现选择框重置按钮功能
2018/11/08 jQuery
swiper4实现移动端导航切换
2020/10/16 Javascript
java遇到微信小程序 &quot;支付验证签名失败&quot; 问题解决
2019/12/22 Javascript
python获取一组数据里最大值max函数用法实例
2015/05/26 Python
解决Python print 输出文本显示 gbk 编码错误问题
2018/07/13 Python
python实现石头剪刀布小游戏
2021/01/20 Python
python抓取搜狗微信公众号文章
2019/04/01 Python
基于django channel实现websocket的聊天室的方法示例
2019/04/11 Python
python中return如何写
2020/06/18 Python
css3实现3d旋转动画特效
2015/03/10 HTML / CSS
CSS3实现可关闭的下拉手风琴菜单效果
2015/08/31 HTML / CSS
canvas实现图片马赛克的示例代码
2018/03/26 HTML / CSS
Herschel美国官网:背包、手提袋及配件
2020/03/10 全球购物
全球最大化妆品零售网站:SkinStore
2020/10/24 全球购物
计算机网络专业推荐信
2013/11/24 职场文书
养牛场项目建议书
2014/05/13 职场文书
2014乡镇班子个人对照检查材料思想汇报
2014/09/26 职场文书
财务人员个人工作总结
2015/02/27 职场文书
借钱欠条怎么写
2015/07/03 职场文书
家属联谊会致辞
2015/07/31 职场文书
分位数回归模型quantile regeression应用详解及示例教程
2021/11/02 Python