Python实现CET查分的方法


Posted in Python onMarch 10, 2015

Python CET自动查询方法需要用到的python方法模块有:sys、urllib2

本文实例讲述了Python实现CET查分的方法。分享给大家供大家参考。具体实现方法如下:

#!/usr/bin/python

# -*- coding: utf-8 -*-

import sys, urllib2

def CetQuery(band, exam_id):

    """CETQuery version 0.2  2009.2.28

    An Exercise Program by PT, GZ University

    Author Blog: http://apt-blog.co.cc , Welcome to Drop by.

    """

    #查询连接

    cet = "http://cet.99sushe.com/cetscore_99sushe0902.html?t=" + band + "&id=" + exam_id

    print "Connecting..."

    #构造HTTP头

    header = {'Referer':'http://cet.99sushe.com/'}

    #第二个参数出现则使用post方式提交

    req = urllib2.Request(cet, '', header)

    try:

        data = urllib2.urlopen(req).read()

    except BaseException, e:

        print "Error retrieving data:", e

        return -1

    if not len(result):

        print "Error Occured. Maybe record not existed."

        return -1

    #解码字符串

    result = data.decode("gb2312").encode("utf8")

    res_tu = tuple(result.split(','))

    score_tu = ("听力", "阅读", "综合", "写作", "总分", "学校", "姓名")

    print "n***** CET %s 成绩清单 *****" % (band)

    print "-准考证号: %s" % (exam_id)

    for i in range(7):

        print "-%s: %s" % (score_tu, res_tu)

    print "**************************n"

    print "准考证号前一位同学: %sn后两位同学分别是: %s、%s" % (res_tu[-3], res_tu[-2], res_tu[-1])

    return 0

if __name__ == "__main__":

    if (len(sys.argv) != 3) or

        (sys.argv[1] != '4' and sys.argv[1] != '6') or

        (len(sys.argv[2]) != 15):

        print "Error: 程序参数错误,考试类型(4、6),准考证号长度(15位)"

        print "nExample:nnCETQuery.py 4 123456789012345nn"

        print CetQuery.__doc__

        sys.exit(1)

    statue = CetQuery(sys.argv[1], sys.argv[2])

    sys.exit(statue)

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

Python 相关文章推荐
浅谈python中的实例方法、类方法和静态方法
Feb 17 Python
python数字图像处理之高级形态学处理
Apr 27 Python
解决python3 网络请求路径包含中文的问题
May 10 Python
django自带的server 让外网主机访问方法
May 14 Python
使用python存储网页上的图片实例
May 22 Python
python远程调用rpc模块xmlrpclib的方法
Jan 11 Python
Python math库 ln(x)运算的实现及原理
Jul 17 Python
详解python中eval函数的作用
Oct 22 Python
python 类之间的参数传递方式
Dec 20 Python
python ffmpeg任意提取视频帧的方法
Feb 21 Python
Python Pandas 删除列操作
Mar 16 Python
baselines示例程序train_cartpole.py的ImportError
May 20 Python
Python实现的批量下载RFC文档
Mar 10 #Python
Python制作CSDN免积分下载器
Mar 10 #Python
Python Tkinter GUI编程入门介绍
Mar 10 #Python
Python格式化css文件的方法
Mar 10 #Python
Python将xml和xsl转换为html的方法
Mar 10 #Python
Python写的Tkinter程序屏幕居中方法
Mar 10 #Python
Python生成随机密码
Mar 10 #Python
You might like
PHP注释实例技巧
2008/10/03 PHP
CI操作cookie的方法分析(基于helper类库)
2016/03/28 PHP
PHP会话操作之cookie用法分析
2016/09/28 PHP
Yii实现文章列表置顶功能示例
2016/10/18 PHP
Laravel中Facade的加载过程与原理详解
2017/09/22 PHP
学习ExtJS Column布局
2009/10/08 Javascript
用JavaScript玩转游戏物理(一)运动学模拟与粒子系统
2010/06/19 Javascript
详解强大的jQuery选择器之基本选择器、层次选择器
2012/02/07 Javascript
javascript客户端遍历控件与获取父容器对象示例代码
2014/01/06 Javascript
javascript动态添加、修改、删除对象的属性与方法详解
2014/01/27 Javascript
table行随鼠标移动变色示例
2014/05/07 Javascript
jQuery EasyUI datagrid实现本地分页的方法
2015/02/13 Javascript
JavaScript实现动画打开半透明提示层的方法
2015/04/21 Javascript
高性能JavaScript DOM编程(1)
2015/08/11 Javascript
Web性能优化系列 10个提升JavaScript性能的技巧
2016/09/27 Javascript
jQuery 的 ready()的纯js替代方法
2016/11/20 Javascript
Node.js读取文件内容示例
2017/03/07 Javascript
微信小程序修改swiper默认指示器样式的实例代码
2018/07/18 Javascript
优雅的使用javascript递归画一棵结构树示例代码
2019/09/22 Javascript
微信小程序页面渲染实现方法
2019/11/06 Javascript
vue绑定数字类型 value为数字的实例
2020/08/31 Javascript
vant 中van-list的用法说明
2020/11/11 Javascript
[06:04]DOTA2英雄梦之声Vol19卓尔游侠
2014/06/20 DOTA
Python探索之URL Dispatcher实例详解
2017/10/28 Python
python使用pygame模块实现坦克大战游戏
2020/03/25 Python
用python写一个定时提醒程序的实现代码
2019/07/22 Python
python实现LRU热点缓存及原理
2019/10/29 Python
通过实例简单了解python yield使用方法
2020/08/06 Python
英国厨房与餐具用品为主的设计品牌:Joseph Joseph
2018/04/26 全球购物
Envie de Fraise意大利:法国网上推出的孕妇装品牌
2020/10/18 全球购物
Java的类可以定义为Protected或者Private得吗
2015/09/25 面试题
社团文化节邀请函
2014/01/10 职场文书
运动会观后感
2015/06/09 职场文书
庆七一晚会主持词
2015/06/30 职场文书
什么是动态刷新率DRR? Windows11动态刷新率功能介绍
2021/11/21 数码科技
解决MySQL Varchar 类型尾部空格的问题
2022/04/06 MySQL