Beispiel #1
0
def getindexsongs(soup):
    songUtil = SongUtil()
    aNodes = soup.find_all('div', class_='song')
    if aNodes is not None:
        for node in aNodes:
            aSong = node.a
            music_name = songUtil.__getcontent__(aSong, songUtil.__TITLE__)
            music_url = songUtil.__getcontent__(aSong, songUtil.__HREF__)
            if songUtil.__usedList__.count(music_url) == 0:
                songUtil.__usedList__.append(music_url)
                author = node.find_all('span', class_='author_list')[0]
                aAuthorList = author.find_all('a')
                singer = ""
                for authorlist in aAuthorList:
                    print authorlist
                    singer += (songUtil.__getcontent__(
                        authorlist, songUtil.__TITLE__) + ',')
                music_singer = singer[0:len(singer) - 1]
                # 插入mysql
                params = [
                    UUIDUtil.getuuid(),
                    StringUtil.replace(music_name, "'", " "),
                    StringUtil.replace(music_singer, "'", " "),
                    StringUtil.replace(music_url, "'", " ")
                ]
                sql = """insert into music_record(UUID,music_name,music_singer,music_url_online) values"""
                SQLUtil.insert(sql, params)
	def parameterPlug( self, parameter ) :

		plugName = _IECoreMaya._parameterisedHolderParameterPlug( self, parameter )
		if plugName == "" :
			return maya.OpenMaya.MPlug()
		
		return StringUtil.plugFromString( self.fullPathName() + "." + plugName )
	def __init__( self, layoutName, classNameOrParameterised, classVersion=None, envVarName=None ) :
		""" Creates a temporary TransientParameterisedHolderNode in order to present the UI for the specified
		    parameterised object in the given layout. The node is automatically deleted when the holding
		    layout is destroyed """

		nodeName = maya.cmds.createNode( "ieTransientParameterisedHolderNode", skipSelect = True )

		# Script jobs aren't available from maya.cmds. Maya Python bindings generate swig warnings
		# such as "swig/python detected a memory leak of type 'MCallbackId *', no destructor found"
		IECoreMaya.mel( 'scriptJob -uiDeleted "%s" "delete %s" -protected' % ( layoutName, nodeName ) )

		object = StringUtil.dependencyNodeFromString( nodeName )

		maya.OpenMaya.MFnDependencyNode.__init__( self, object )

		if isinstance( classNameOrParameterised, str ) :
			res = _IECoreMaya._parameterisedHolderSetParameterised( self, classNameOrParameterised, classVersion, envVarName )
		else :
			assert( not classVersion )
			assert( not envVarName )

			res = _IECoreMaya._parameterisedHolderSetParameterised( self, classNameOrParameterised )

		parameterised = self.getParameterised()[0]

		if parameterised:
			maya.cmds.setParent( layoutName )
			IECoreMaya.ParameterUI.create( object, parameterised.parameters() )
			maya.cmds.setParent( layoutName )

		return res
	def paragraph( self, text ) :

		self.__blankLine()
		lines = StringUtil.wrap( str( text ).rstrip(), self.__wrapWidth ).split( "\n" )
		for line in lines :
			self.__indent()
			self.__output( line + "\n" )
Beispiel #5
0
 def GetTabName(self):
     """タブコントロールに表示する名前"""
     word = self.listObject.rootDirectory.split("\\")
     word = word[len(word) - 1]
     word = StringUtil.GetLimitedString(
         word, globalVars.app.config["view"]["header_title_length"])
     return word
Beispiel #6
0
def drawFieldFromLine( line, fieldConfig ):
    for (k, v) in fieldConfig.items():
        s = line.find(v[0])
        if s != -1:
            s += len(v[0])
            e = line.find(v[1], s)
            v[2] = StringUtil.subString(line, s, e)      
Beispiel #7
0
 def GetTabName(self):
     """タブコントロールに表示する名前"""
     word = self.listObject.GetKeywordString()
     word = StringUtil.GetLimitedString(
         word, globalVars.app.config["view"]["header_title_length"])
     word = _("%(word)sの検索") % {"word": word}
     return word
    def paragraph(self, text):

        self.__blankLine()
        lines = StringUtil.wrap(str(text).rstrip(),
                                self.__wrapWidth).split("\n")
        for line in lines:
            self.__indent()
            self.__output(line + "\n")
Beispiel #9
0
 def GetTabName(self):
     """タブコントロールに表示する名前"""
     word = os.path.basename(self.listObject.rootDirectory)
     if word == "":  # ルート
         word = self.listObject.rootDirectory
     word = StringUtil.GetLimitedString(
         word, globalVars.app.config["view"]["header_title_length"])
     return word
def refererParser(rawReferer):
    if isinstance(rawReferer, dict): return rawReferer
    import urllib, StringUtil , LumberjackConstants as L
    rawReferer = StringUtil.convertTrChars(urllib.parse.unquote_plus(urllib.parse.unquote_plus(rawReferer)))
    scheme, authority, path, params, query, frag = urllib.parse.urlparse(rawReferer) 
    query = [p.split('=') for p in query.split('&')]
    query = [p for p in query if len(p) == 2]
    referer = {p[0]: p[1] for p in query}
    referer['page'] = path[1:]
    return referer 
	def _despatchSetClassParameterClassCallbacks( cls, plugPath ) :
		
		# See comment in _despatchSetClassVectorParameterClassesCallbacks
		if not maya.cmds.objExists( plugPath ) :
			return

		fnPH = FnParameterisedHolder( StringUtil.nodeFromAttributePath( plugPath ) )
		parameter = fnPH.plugParameter( plugPath )
		for c in cls.__setClassParameterClassCallbacks :
			c( fnPH, parameter )
Beispiel #12
0
    def get(self, units='radians'):
        """Gets radians value and converts according to units string
            'radians' -- no conversion
            'degrees' -- radians to decimal degrees
            'dmsstr'  -- radians to sexagesimal string degress as -DD:MM:SS.SSS
            'hmsstr'  -- radians to sexagesimal string hours as   -HH:MM:SS.SSS
            'masec'   -- radians to milliarcseconds
            'arcsec'  -- radians to arcseconds
            'dms' and 'hms' are aliases for 'dmsstr' and 'hmsstr' """

        if units == 'radians':
            return self.radians
        elif units == 'degrees':
            return self.radians * self.__degperrad
        elif units == 'dmsstr' or units == 'dms':
            # String in the form -DD:MM:SS.SSS
            strg = su.dmsStrFromDeg(self.radians * self.__degperrad,
                                    precision=3)
            if len(strg) == 11:
                # Need to add missing zero and space
                strg = ' 0' + strg
            elif len(strg) == 12:
                # Need to add missing zero or space
                if strg[0] == '-':
                    strg = strg[0] + '0' + strg[1:]
                else:
                    strg = ' ' + strg
            return strg
        elif units == 'hmsstr' or units == 'hms':
            # String in the form -HH:MM:SS.SSS
            strg = su.dmsStrFromDeg(self.radians * self.__degperrad / 15.,
                                    precision=3)
            if len(strg) == 11:
                # Need to add missing zero
                strg = '0' + strg
            return strg
        elif units == 'masec':
            return self.radians * self.__masperrad
        elif units == 'arcsec':
            return self.radians * self.__arcsecperrad
        else:
            print 'ERROR: Unknown units string, radians used'
            return self.radians
Beispiel #13
0
 def __getClassifyMusic__(self, soup):
     try:
         for node in soup.find_all('div', class_='song-item'):
             music_album = ""
             music_singer = ""
             songTitle = node.find_all('span',
                                       class_='song-title')[0].find('a')
             music_name = self.__getcontent__(songTitle, self.__CONTENT__)
             music_desc = self.__getcontent__(songTitle, self.__TITLE__)
             music_url = self.__getcontent__(songTitle, self.__HREF__)
             asongSinger = node.find_all('span', class_='singer')
             if asongSinger is not None and len(asongSinger) > 0:
                 songSinger = asongSinger[0].find('a')
                 if songSinger is not None and len(songSinger) > 0:
                     music_singer = self.__getcontent__(
                         songSinger, self.__TITLE__)
             asongAlbum = node.find_all('span', class_='album-title')
             if asongAlbum is not None and len(asongAlbum) > 0:
                 songAlbum = asongAlbum[0].find('a')
                 if songAlbum is not None and len(songAlbum) > 0:
                     music_album = self.__getcontent__(
                         songAlbum, self.__TITLE__)
             #插入mysql数据库
             sql = "insert into music_record(UUID,music_name,music_singer,music_album,music_url_online,music_desc) values"
             params = [
                 UUIDUtil.getuuid(),
                 StringUtil.replace(music_name, "'", " "),
                 StringUtil.replace(music_singer, "'", " "),
                 StringUtil.replace(music_album, "'", " "),
                 StringUtil.replace(music_url, "'", " "),
                 StringUtil.replace(music_desc, "'", " ")
             ]
             SQLUtil.insert(sql, params)
             #插入mongodb数据库
             # MongoDBUtil.insert(musicName=music_name,musicSinger=music_singer,musicAlbum=music_album,musicUrlOnline=music_url,musicDesc=music_desc)
             # print music_name,music_singer,music_album,music_url,music_desc
         self.__getPageNum__(soup)
     except:
         print "error"
     finally:
         yield self.__getSongs__()
Beispiel #14
0
    def get(self, units='radians'):
        """Gets radians value and converts according to units string
            'radians' -- no conversion
            'degrees' -- radians to decimal degrees
            'dmsstr'  -- radians to sexagesimal string degress as -DD:MM:SS.SSS
            'hmsstr'  -- radians to sexagesimal string hours as   -HH:MM:SS.SSS
            'masec'   -- radians to milliarcseconds
            'arcsec'  -- radians to arcseconds
            'dms' and 'hms' are aliases for 'dmsstr' and 'hmsstr' """

        if units == 'radians':
            return self.radians
        elif units == 'degrees':
            return self.radians * self.__degperrad
        elif units == 'dmsstr' or units == 'dms':
            # String in the form -DD:MM:SS.SSS
            strg = su.dmsStrFromDeg(self.radians * self.__degperrad, precision=3)
            if len(strg) == 11:
                # Need to add missing zero and space
                strg = ' 0'+strg
            elif len(strg) == 12:
                # Need to add missing zero or space
                if strg[0] == '-':
                    strg = strg[0]+'0'+strg[1:]
                else:
                    strg = ' '+strg
            return strg
        elif units == 'hmsstr' or units == 'hms':
            # String in the form -HH:MM:SS.SSS
            strg = su.dmsStrFromDeg(self.radians * self.__degperrad / 15., precision=3)
            if len(strg) == 11:
                # Need to add missing zero
                strg = '0'+strg
            return strg
        elif units == 'masec':
            return self.radians * self.__masperrad
        elif units == 'arcsec':
            return self.radians * self.__arcsecperrad
        else:
            print 'ERROR: Unknown units string, radians used'
            return self.radians
	def __init__( self, obj ) :
	
		if isinstance( obj, str ) or isinstance( obj, unicode ) :
		
			obj = StringUtil.dependencyNodeFromString( obj )
		
		elif isinstance( obj, maya.OpenMaya.MObjectHandle ) :
		
			assert( obj.isValid() )
			obj = obj.object()		

		maya.OpenMaya.MFnDagNode.__init__( self, obj )
Beispiel #16
0
    def set(self, value=0.0, units='radians'):
        """Sets radians value, converting according to units string
            'radians' -- no conversion
            'degrees' -- decimal degrees to radians
            'dmsstr'  -- sexagesimal string degress as -DD:MM:SS.SSS to radians
            'hmsstr'  -- sexagesimal string hours as   -HH:MM:SS.SSS to radians
            'masec'   -- milliarcseconds to radians
            'arcsec'  -- arcseconds to radians
            'dms' and 'hms' are aliases for 'dmsstr' and 'hmsstr' """

        if units == 'radians':
            self.radians = value
        elif units == 'degrees':
            self.radians = value / self.__degperrad
        elif units == 'dmsstr' or units == 'dms':
            # String in the form -DD:MM:SS.SSS
            self.radians = su.secFromDMSStr(value) / self.__arcsecperrad
        elif units == 'hmsstr' or units == 'hms':
            # String in the form -HH:MM:SS.SSS
            self.radians = su.secFromDMSStr(value) * 15. / self.__arcsecperrad
        elif units == 'masec':
            self.radians = value / self.__masperrad
        elif units == 'arcsec':
            self.radians = value / self.__arcsecperrad
        else:
            print 'ERROR: Unknown units string, radians used'
            self.radians = value

        # If modulo bool is set, make sure the value of radians
        # is between 0, 2pi
        if self.modulo:
            radians = self.radians
            twopi = self.__twopi
            while radians >= twopi:
                radians -= twopi
            while radians < 0.0:
                radians += twopi
            self.radians = radians
	def _despatchSetClassVectorParameterClassesCallbacks( cls, plugPath ) :
		
		# This function gets called deferred (on idle) from ParameterisedHolderSetClassParameterCmd.cpp.
		# Because of the deferred nature of the call, it's possible that the plug has been destroyed before
		# we're called - in this case we just don't despatch callbacks.
		## \todo It might be better to not defer the call to this function, and have any callbacks which
		# need deferred evaluation (the ui callbacks in ClassVectorParameterUI for instance) arrange for that
		# themselves.
		if not maya.cmds.objExists( plugPath ) :
			return
		
		fnPH = FnParameterisedHolder( StringUtil.nodeFromAttributePath( plugPath ) )
		parameter = fnPH.plugParameter( plugPath )
		for c in cls.__setClassVectorParameterClassesCallbacks :
			c( fnPH, parameter )
Beispiel #18
0
def getLogsFromProject(localDir, timeFrom, timeTo):
    #repo = git.Repo.clone_from(self._small_repo_url(), os.path.join(rw_dir, "repo"), branch="master")
    repo = Repo(localDir)
    assert not repo.bare  # 版本库是否为空版本库
    heads = repo.heads
    master = heads.master  # lists can be accessed by name for convenience
    #master.commit

    g = git.Git(localDir)
    # "--pretty=tformat:" raw "--numstat" --author="John\|Mary”,Marry和John git log -- *.cs bar.py 文件名应该放到参数的最后位置
    #--grep="JRA-224" 可以传入-i用来忽略大小写, 同时使用--grep和--author,必须加一个--all-match参数
    keyDate = "Date "
    keyAuthor = "Author "
    keyAuthorLen = len(keyAuthor)
    log = g.log("--since=" + timeFrom, "--no-merges", "--oneline",
                "--pretty=tformat:" + keyDate + "%ci\n" + keyAuthor + "%ce",
                "--name-status", "*.cs")
    logList = log.split("\n")
    #print("----------")
    #print(log)

    changeInfoDic = {}
    authorEmail = ""
    for logLine in logList:
        logLine = logLine.strip()
        if logLine == "":
            continue
        #logLine = logLine.expandtabs()
        contents = logLine.split('\t')
        contentLen = len(contents)
        if contentLen > 1:
            modifiedFilePath = contents[contentLen - 1]
            #print("%s" % (modifiedFilePath))
            changeInfoDic[modifiedFilePath] = authorEmail
        elif logLine.startswith(keyAuthor):
            authorEmail = logLine[keyAuthorLen:]
            if not StringUtil.isEmail(authorEmail):
                print("Invalid email address: %s" % (authorEmail))
                #assert False
        else:
            contents = logLine.split(' ')
            #if logLine.find('M') == 0:
            #print("%i===%s" % (len(contents), logLine))

    return changeInfoDic
Beispiel #19
0
def ParseSnoptFiles(todir):
    compareFileName = "NewCompare.txt"
    outFile = open(compareFileName, 'w')
    outFile.truncate()

    for root, dirs, files in os.walk(todir):
        for filename in files:
            base, extension = os.path.splitext(filename)
            if (extension == ".snopt"):
                testName = base[:-4]

                with open(todir + "/" + filename) as data:
                    for line in data:
                        text = su.TextAfter(line, searchStrings)
                        if text != "":
                            value = text
                testline = testName + "\t" + value
                outFile.write(testline)

    outFile.close()
def parse(input):
    import StringUtil, LumberjackConstants as L
    str = input[:-1].split('\t')
    #global a
    #a += 1
    #print(a)
    map = {}
    # time?
    if len(str) < 2:
        return {}
    pairList = str[1].split('&')
    for p in pairList:
        pair = p.split('=')
        if (len(pair) > 1):
            #map[pair[0]] = pair[1].decode('utf-8')
            #encoded = encoded.replace('%C3%83%C2%87'.encode('utf-8'), '%C3%87') # c
            map[pair[0]] = StringUtil.getFixedEncodingValue(pair[1])#.encode('utf-8')
            #keyword = URLDecoder.decode(StringUtil.getFixedEncodingValue(pair[1])), 'utf-8')
            #(pair(0) -> keyword)
        else:
            map[len(map.keys())] = pair[0]

    memberId = '0'
    if (L.KEY_USER_ID in map):
        memberId = map[L.KEY_USER_ID]
    elif ((L.KEY_USER_ID_FROM_COOKIE) in map):
        if (',' in map[L.KEY_USER_ID_FROM_COOKIE]):
            values = map[L.KEY_USER_ID_FROM_COOKIE].split(',')
            if (len(values) == 2):
                memberId = values[1]
            else:
                memberId = '0'
        else:
            memberId = map[L.KEY_USER_ID_FROM_COOKIE]
    else:
        memberId = '0'
    if not memberId == '0':
        map[L.KEY_USER_ID_FOUND] = memberId
    map[L.KEY_TIMESTAMP] = str[0]
    return map
    def __init__(self,
                 layoutName,
                 classNameOrParameterised,
                 classVersion=None,
                 envVarName=None):
        """ Creates a temporary TransientParameterisedHolderNode in order to present the UI for the specified
		    parameterised object in the given layout. The node is automatically deleted when the holding
		    layout is destroyed """

        nodeName = maya.cmds.createNode("ieTransientParameterisedHolderNode",
                                        skipSelect=True)

        # Script jobs aren't available from maya.cmds. Maya Python bindings generate swig warnings
        # such as "swig/python detected a memory leak of type 'MCallbackId *', no destructor found"
        IECoreMaya.mel('scriptJob -uiDeleted "%s" "delete %s" -protected' %
                       (layoutName, nodeName))

        object = StringUtil.dependencyNodeFromString(nodeName)

        maya.OpenMaya.MFnDependencyNode.__init__(self, object)

        if isinstance(classNameOrParameterised, str):
            res = _IECoreMaya._parameterisedHolderSetParameterised(
                self, classNameOrParameterised, classVersion, envVarName)
        else:
            assert (not classVersion)
            assert (not envVarName)

            res = _IECoreMaya._parameterisedHolderSetParameterised(
                self, classNameOrParameterised)

        parameterised = self.getParameterised()[0]

        if parameterised:
            maya.cmds.setParent(layoutName)
            IECoreMaya.ParameterUI.create(object, parameterised.parameters())
            maya.cmds.setParent(layoutName)

        return res
Beispiel #22
0
    def ReadQuestion(self):
        try:
            selectItem = self.subjectListTree.currentItem()
            nodeID = selectItem.text(1)
            nodeText = selectItem.text(0)
            #获取父节点
            parentItem = selectItem.parent()
            while 1:
                if parentItem == None:
                    break
                parentItem = selectItem.parent()
            if parentItem == None:
                km = nodeText
            else:
                km = parentItem.text(0)

            child_ids = self.ReadChildIDs(nodeID)
            child_ids.append(nodeID)
            condition = StringUtil.ChangeListToCondition(child_ids)
            #if condition=="":

        except Exception as e:
            print("读取试题发生错误:" + e.Message)
	def plugParameter( self, plug ) :

		if isinstance( plug, str ) or isinstance( plug, unicode ) :
			plug = StringUtil.plugFromString( plug )

		return _IECoreMaya._parameterisedHolderPlugParameter( self, plug )
Beispiel #24
0
import StringUtil

texto = input("Digite um texto :")
StringUtil.output(texto)
StringUtil.tamanho(texto)
StringUtil.maiusculo(texto)
StringUtil.minusculo(texto)
Beispiel #25
0
 def GetTabName(self):
     """タブコントロールに表示する名前"""
     word = "ほにゃぺけからほにゃぺけへの貼り付け"
     word = StringUtil.GetLimitedString(
         word, globalVars.app.config["view"]["header_title_length"])
     return word
import StringUtil

Texto = input("Digite o texto: ")

#Imprimir tamanho
StringUtil.Output(Texto)
StringUtil.Output(StringUtil.Tamanho(Texto))

#Imprimir Maiusculo
StringUtil.Output(StringUtil.Maiusculo(Texto))

#Imprimir Minusculo
StringUtil.Output(StringUtil.Minusculo(Texto))

Letra = input("Digite uma letra: ")
StringUtil.Contador(Letra,Texto)
    def __init__(self, object):

        if isinstance(object, str) or isinstance(object, unicode):
            object = StringUtil.dependencyNodeFromString(object)

        maya.OpenMaya.MFnDependencyNode.__init__(self, object)
Beispiel #28
0
    def __init__(self, object):
        if isinstance(object, basestring):
            object = StringUtil.dagPathFromString(object)

        maya.OpenMaya.MFnDagNode.__init__(self, object)
    def plugParameter(self, plug):

        if isinstance(plug, str) or isinstance(plug, unicode):
            plug = StringUtil.plugFromString(plug)

        return _IECoreMaya._parameterisedHolderPlugParameter(self, plug)
Beispiel #30
0
    def __init__(self, object):

        if isinstance(object, str) or isinstance(object, unicode):
            object = StringUtil.dependencyNodeFromString(object)

        maya.OpenMaya.MFnDagNode.__init__(self, object)
def get27Keywords():
    keywords = open('keywords27', 'rb').readlines()
    import StringUtil
    keywords = [StringUtil.convertTrChars(keyword.decode("utf-8")).replace('\n', '').lower() for keyword in keywords]
    return keywords