3GPP 文档下载器

#coding:utf-8

from PyQt4.QtGui import *
from PyQt4.QtCore import *
import urllib,re,sys
doc_version=['11.9.0','11.8.0','11.7.0','11.6.0','11.5.0','11.4.0','11.3.0','11.2.0','11.1.0']
baseurl='http://www.3gpp.org/ftp/Specs/html-info/%s.htm'

 
class StandardDialog(QDialog):

    def __init__(self,parent=None):
        super(StandardDialog,self).__init__(parent)
        
        self.setWindowTitle("3GPP doc Downloader!")
        DimMsgDecodeButton=QPushButton(self.tr("Dim Msg Decode"))

        self.label_SrcBuf = QLabel('3GPP DocID: 29273 29280 ...')
        
        self.fileTextEditInput=QTextEdit()
        self.fileTextEditOutput=QTextEdit()
        self.fileTextEditOutput.setReadOnly(1)
        
       
        layout=QGridLayout()
        #col 0
        layout.addWidget(self.label_SrcBuf, 0, 0)
        layout.addWidget(self.fileTextEditInput, 1, 0, 3, 1)
        layout.addWidget(self.fileTextEditOutput,4,0, 12, 1)
        #col 1
        layout.addWidget(DimMsgDecodeButton,2,1)

        self.setLayout(layout)
        self.connect(DimMsgDecodeButton,SIGNAL("clicked()"),self.DecodeDimMsgSlot)

    def getdoc(self,doc_no):
        url=baseurl%(doc_no)
        log='preparing download from'+url
        self.fileTextEditOutput.append(log)
        
        try:
            webpage=urllib.urlopen(url).read()
            for ver in doc_version:
                doc_urls=re.findall('<a href=(.*?)>'+ver, webpage)
                if doc_urls:
                    doc_url=doc_urls[0]
                    break
                    
            filename1=re.search('\d{5}-b\d{2}.zip',doc_url)
            if filename1:
                filename=filename1.group()
            else:
                filename=doc_no

            s=urllib.urlopen(doc_url)
            destfile=s.read()
            open(filename,'wb').write(destfile)
            log='download %s from %s success!!'%(filename, doc_url)
            self.fileTextEditOutput.append(log)
        except:
            log='open url ['+url+'] failure!'
            self.fileTextEditOutput.append(log)

    def DecodeDimMsgSlot(self):
        hexstr=str(self.fileTextEditInput.toPlainText()).strip()

        downloadlist=re.split('[ ,]',hexstr)
        print downloadlist
        for docid in downloadlist:
            self.getdoc(docid)

if __name__ == '__main__':
    print 'starting!!!'
    app=QApplication(sys.argv)
    form=StandardDialog()
    form.show()
    app.exec_()

3GPP2主要工作是制订以ANSI-41核心网为基础,CDMA2000为无线接口的移动通信技术规范。3GPP2下设4个技术规范工作组,TSG-A, TSG-C, TSG-S,和TSG-X,四个技术工作组分别负责发布各自领域的标准,各个领域的标准独立编号: A. TSG-A主要负责接入网部分的标准化工作,TSG-A发布的标准技术规范一般编号为A.Sxxxx,A接口以及Abis接口相关的标准可以查询A.Sxxxx系列; B. TSG-C主要负责采用CDMA2000技术(CDMA20001x、1xEV-DO、1xEV-DV )的空中接口的标准化工作,标准涉及到物理层、媒体接入控制层(MAC)、信令链路接入控制层(LAC)以及高层信令部分。TSG-C发布的标准技术规范一般编号为C.Sxxxx,该任务组发布的标准主要与无线专业相关,其中高层信令部分涉及到较多的网络侧技术; C. TSG-S主要负责业务能力需求的开发,以及协调不同TSG之间的系统要求,如网络安全、网络管理等。TSG-S 发布的标准技术规范一般编号为S.Sxxxx; D. TSG-X 主要负责核心网相关标准的制定,内容主要包括支持语音以及多媒体的IP技术、核心网的传输承载、核心网内部接口的信令、核心网的演进等,发布的标准技术规范一般编号为X.Sxxxx; E. 另外编号为P.Sxxxx的标准《Wireless IP Network Standard》已经被X.S0011取代,因此有关CDMA2000分组域核心网的标准可以查询X.Sxxxx系列; 编号为N.Sxxxx的标准主要为核心网方面的标准。 3GPP2 Documents拥有1186已出版文档。包内Excel的list按其突出显示的标题可以直接点击下载所需文档,包内选取同类新版共833个,文档清单详见3GPP2协议导读和List,方便大家学习和培训。 例如:按照需要的Title可以寻找到所需要的文档,选择List内3GPP2 Spec #在线下载。 详情: A.R0003-A.S0024 80 C.R0014-C.R1012 38 C.S0001-C.S0060 194 C.S0061-C.S0107 75 N.S0003-N.S0031 29 P.R0001-P.S0001 5 S.R0004-S.R0151 184 S.S0028-S.S0145 32 X.R0039-X.R0052 2 X.R0039-X.R0052 188 小计 827 3GPP协议导读 合计文档 828 同类最新文档: A.S0001-A v1.0 A.S0001-A v2.0共存时 选取最新A.S0001-A v2.0 全部在3GPP2网站内手工整理,进行公司内部培训和学习之用,加上文档导读一共828份。 由于上传大小限制,只能分1-11分卷,0-10资源分计算比较有趣,需要的话可以看看!
3GPP2主要工作是制订以ANSI-41核心网为基础,CDMA2000为无线接口的移动通信技术规范。3GPP2下设4个技术规范工作组,TSG-A, TSG-C, TSG-S,和TSG-X,四个技术工作组分别负责发布各自领域的标准,各个领域的标准独立编号: A. TSG-A主要负责接入网部分的标准化工作,TSG-A发布的标准技术规范一般编号为A.Sxxxx,A接口以及Abis接口相关的标准可以查询A.Sxxxx系列; B. TSG-C主要负责采用CDMA2000技术(CDMA20001x、1xEV-DO、1xEV-DV )的空中接口的标准化工作,标准涉及到物理层、媒体接入控制层(MAC)、信令链路接入控制层(LAC)以及高层信令部分。TSG-C发布的标准技术规范一般编号为C.Sxxxx,该任务组发布的标准主要与无线专业相关,其中高层信令部分涉及到较多的网络侧技术; C. TSG-S主要负责业务能力需求的开发,以及协调不同TSG之间的系统要求,如网络安全、网络管理等。TSG-S 发布的标准技术规范一般编号为S.Sxxxx; D. TSG-X 主要负责核心网相关标准的制定,内容主要包括支持语音以及多媒体的IP技术、核心网的传输承载、核心网内部接口的信令、核心网的演进等,发布的标准技术规范一般编号为X.Sxxxx; E. 另外编号为P.Sxxxx的标准《Wireless IP Network Standard》已经被X.S0011取代,因此有关CDMA2000分组域核心网的标准可以查询X.Sxxxx系列; 编号为N.Sxxxx的标准主要为核心网方面的标准。 3GPP2 Documents拥有1186已出版文档。包内Excel的list按其突出显示的标题可以直接点击下载所需文档,包内选取同类新版共833个,文档清单详见3GPP2协议导读和List,方便大家学习和培训。 例如:按照需要的Title可以寻找到所需要的文档,选择List内3GPP2 Spec #在线下载。 详情: A.R0003-A.S0024 80 C.R0014-C.R1012 38 C.S0001-C.S0060 194 C.S0061-C.S0107 75 N.S0003-N.S0031 29 P.R0001-P.S0001 5 S.R0004-S.R0151 184 S.S0028-S.S0145 32 X.R0039-X.R0052 2 X.R0039-X.R0052 188 小计 827 3GPP协议导读 合计文档 828 同类最新文档: A.S0001-A v1.0 A.S0001-A v2.0共存时 选取最新A.S0001-A v2.0 全部在3GPP2网站内手工整理,进行公司内部培训和学习之用,加上文档导读一共828份。 由于上传大小限制,只能分1-11分卷,0-10资源分计算比较有趣,需要的话可以看看!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值