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 错误和异常小结
Oct 09 Python
Python下实现的RSA加密/解密及签名/验证功能示例
Jul 17 Python
Python实现购物车功能的方法分析
Nov 10 Python
对python过滤器和lambda函数的用法详解
Jan 21 Python
pandas read_excel()和to_excel()函数解析
Sep 19 Python
pytorch梯度剪裁方式
Feb 04 Python
Python如何在DataFrame增加数值
Feb 14 Python
python logging.info在终端没输出的解决
May 12 Python
浅谈keras中Dropout在预测过程中是否仍要起作用
Jul 09 Python
安装pyecharts1.8.0版本后导入pyecharts模块绘图时报错: “所有图表类型将在 v1.9.0 版本开始强制使用 ChartItem 进行数据项配置 ”的解决方法
Aug 18 Python
OpenCV实现机器人对物体进行移动跟随的方法实例
Nov 09 Python
Python数据类型最全知识总结
May 31 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提取数据库内容中的图片地址并循环输出
2010/03/21 PHP
PHP mkdir()无写权限的问题解决方法
2014/06/19 PHP
浅析PHP编程中10个最常见的错误
2014/08/08 PHP
使用PHP+MySql+Ajax+jQuery实现省市区三级联动功能示例
2017/09/15 PHP
PHP开发实现微信退款功能示例
2017/11/25 PHP
Docker搭建自己的PHP开发环境
2018/02/24 PHP
php微信公众号开发之微信企业付款给个人
2018/10/04 PHP
javascript的offset、client、scroll使用方法详解
2012/12/25 Javascript
jquery实现滑动图片自己测试的例子
2013/11/05 Javascript
对于Form表单reset方法的新认识
2014/03/05 Javascript
jquery删除ID为sNews的tr元素的内容
2014/04/10 Javascript
jQuery实现HTML5 placeholder效果实例
2014/12/09 Javascript
jQuery中children()方法用法实例
2015/01/07 Javascript
javascript实现简单的省市区三级联动
2015/05/14 Javascript
纯jquery实现模仿淘宝购物车结算
2015/08/20 Javascript
js实现内容显示并使用json传输数据
2016/03/16 Javascript
jQuery插件pagination实现无刷新分页
2016/05/21 Javascript
js时间戳格式化成日期格式的多种方法介绍
2017/02/16 Javascript
详解Angular.js指令中scope类型的几种特殊情况
2017/02/21 Javascript
js实现随机点名系统(实例讲解)
2017/10/18 Javascript
小程序scroll-view组件实现滚动的示例代码
2018/09/20 Javascript
Vue2.0 实现页面缓存和不缓存的方式
2019/11/12 Javascript
详解vue中v-model和v-bind绑定数据的异同
2020/08/10 Javascript
Nest.js散列与加密实例详解
2021/02/24 Javascript
python学习手册中的python多态示例代码
2014/01/21 Python
Python pickle类库介绍(对象序列化和反序列化)
2014/11/21 Python
Python脚本暴力破解栅栏密码
2015/10/19 Python
Python程序中设置HTTP代理
2016/11/06 Python
Python使用matplotlib简单绘图示例
2018/02/01 Python
python爬取各类文档方法归类汇总
2018/03/22 Python
python实现可下载音乐的音乐播放器
2020/02/25 Python
马来西亚与新加坡长途巴士售票网站:BusOnlineTicket.com
2018/11/05 全球购物
致地震灾区的慰问信
2015/03/23 职场文书
2015年度个人教学工作总结
2015/05/20 职场文书
2020年基层司法所建设情况调研报告
2019/11/30 职场文书
ubuntu20.04虚拟机无法上网的问题及解决
2022/12/24 Servers