当前位置: 首页>>代码示例>>Python>>正文


Python ElementTree.findall方法代码示例

本文整理汇总了Python中xml.etree.ElementTree.findall方法的典型用法代码示例。如果您正苦于以下问题:Python ElementTree.findall方法的具体用法?Python ElementTree.findall怎么用?Python ElementTree.findall使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在xml.etree.ElementTree的用法示例。


在下文中一共展示了ElementTree.findall方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: csc_to_graph

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
def csc_to_graph(name):
    tree = ET(name)
    mote_id = [int(t.text) for t in tree.findall(".//mote/interface_config/id")]
    mote_type = [t.text for t in tree.findall(".//mote/motetype_identifier")]
    x = [float(t.text) for t in tree.findall(".//mote/interface_config/x")]
    y = [float(t.text) for t in tree.findall(".//mote/interface_config/y")]
    z = [float(t.text) for t in tree.findall(".//mote/interface_config/z")]
开发者ID:sieben,项目名称:makesense,代码行数:9,代码来源:parser.py

示例2: getProjectWebClassPath

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
def getProjectWebClassPath():
    tree = ElementTree()
    project_cfg = getProjectCfg()

    classPathXmlPath = os.path.join(os.getcwd(), ".tomcatplugin")
    if not os.path.exists(classPathXmlPath):
        return None
    
    tree.parse(classPathXmlPath)
    entries = tree.findall("webClassPathEntries/webClassPathEntry")
    cp_entries = []
    for entry in  entries :
        path = entry.text
        if "M2_REPO" in path:
            path = path.replace("M2_REPO",M2_REPO)
        elif path.startswith("/"):
            prj_name , inner_path = path[1:].split("/",1)
            prj_ab_path = project_cfg.get(prj_name)
            if prj_ab_path == None :
                print "can't find project '%s' config in project.cfg " % (prj_name)
                sys.exit(0)
            path = os.path.normpath(os.path.join(prj_ab_path, inner_path))
        path = os.path.normpath(path)
        cp_entries.append(path)

    return cp_entries
开发者ID:shrekwang,项目名称:sztool-extra,代码行数:28,代码来源:webcp.py

示例3: buildMediaTypeList

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
	def buildMediaTypeList(self, configObj, isUpdate):
		#build fileTypeList
		fileTypeList = []
		
		if(isUpdate):
			fileTypes = configObj.tree.findall('FileTypes/FileType')
		else:
			#build fileTypeList
			configFile = util.joinPath(util.getAddonInstallPath(), 'resources', 'database', 'config_template.xml')
	
			if(not xbmcvfs.exists(configFile)):
				Logutil.log('File config_template.xml does not exist. Place a valid config file here: ' +str(configFile), util.LOG_LEVEL_ERROR)
				return None, util.localize(32040)
			
			tree = ElementTree().parse(configFile)			
			fileTypes = tree.findall('FileTypes/FileType')			
			
		for fileType in fileTypes:
			name = fileType.attrib.get('name')
			if(name != None):
				type = fileType.find('type')				
				if(type != None and type.text == 'video'):
					name = name +' (video)'
				fileTypeList.append(name)
				
		return fileTypeList, ''
开发者ID:AsKaGeeK,项目名称:romcollectionbrowser,代码行数:28,代码来源:wizardconfigxml.py

示例4: coalesce

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
def coalesce(etree, xpath, get_text = False):
	elem = etree.findall(xpath)
	if len(elem) != 0:
		assert len(elem) == 1
		res = elem[0]
		if get_text:
			res = res.text
		return res
	return None
开发者ID:gtzampanakis,项目名称:statsfair,代码行数:11,代码来源:pinnacle_download.py

示例5: fetchByEventId

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
    def fetchByEventId(self, eventId):
        eventId = str(eventId)
        doc = ElementTree(file="MarketData.xml")
        symbols = []
        for event in doc.findall(".//Event"):
            if event.get("id") == eventId:
                for symbol in event.findall(".//contract/symbol"):
                    symbols.append(symbol.text)

        return self.fetchBySymbols(symbols)
开发者ID:ryguasu,项目名称:intrade_arbitrage,代码行数:12,代码来源:Quotes.py

示例6: fetchEventsByGroupId

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
 def fetchEventsByGroupId(self, eventGroupId):
     eventGroupId = str(eventGroupId)
     ids = []
     doc = ElementTree(file="MarketData.xml")
     for group in doc.findall(".//EventGroup"):
         if group.get("id") == eventGroupId:
             for event in group.findall(".//Event"):
                 eventId = event.get("id")
                 name = event.find(".//name").text
                 ids.append((eventId, name))
     return ids
开发者ID:ryguasu,项目名称:intrade_arbitrage,代码行数:13,代码来源:Quotes.py

示例7: _Parser

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
    def _Parser(self, xmlfile):
        """MP.Parser(xmlfile)
        Parser the xmlfile. Old parser version. Only for Convert.
        """
        self.motifs = {}
        xmltree = ElementTree()
        try:
            xmltree.parse(xmlfile)
        except IOError:
            logger.error("Fail to parser the xml file. Not exist or format error?")
            return None

        for pos in xmltree.findall("motif"):
            tag = 'id'
            attrib = pos.attrib
            id = attrib[tag]
            logger.debug(id)
            self.motifs[id] = {}
            self.motifs[id][tag] = [id]
            
            tag = 'edition'
            try:
                self.motifs[id][tag] = [attrib[tag]]
            except:
                self.motifs[id][tag] = []
    
            for tag in ('source', 'sourcefile', 'status', 'description', 'numseqs', 'pmid', 'dbd', \
            'comment1', 'comment2', 'comment3', 'comment4', 'comment5'):
                if pos.find(tag)!=None:
                    self.motifs[id][tag] = [pos.find(tag).text.strip()]
                else:
                    self.motifs[id][tag] = []
                    
            for tag in ('species', 'entrez', 'synonym', 'refseq', 'symbol'):
                if pos.find(tag+'list')!=None:
                    t = pos.find(tag+'list')
                    self.motifs[id][tag] = [i.text.strip() for i in t.findall(tag)]
                else:
                    self.motifs[id][tag] = []
                    
            for tag in ('pssm',):
                self.motifs[id][tag]=[]
                if pos.find(tag)!=None:
                    plist = pos.find(tag).findall('pos')
                    plist.sort()
                    for t in plist:
                        t = t.findall('*')
                        t.sort()
                        self.motifs[id][tag].append([ float(s.text.strip()) for s in t ])
                    self.motifs[id][tag] = [self.motifs[id][tag]]
开发者ID:cfce,项目名称:chilin,代码行数:52,代码来源:MotifParser.py

示例8: Parser

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
    def Parser(self, xmlfile):
        """MP.Parser(xmlfile)
        Parser the xmlfile.
        """
        self.motifs = {}
        xmltree = ElementTree()
        try:
            xmltree.parse(xmlfile)
        except IOError:
            logger.error("Fail to parser the xml file. Not exist or format error?")
            return None

        for pos in xmltree.findall("motif"):
            #get key and set empty element
            key = pos.get(self.keyName)
            if not key:
                logger.error('No %s found for node.' %self.keyName)
                return None
            if key in self.motifs.keys():
                logger.warning("%s has exist in instance."%key)
            self.motifs[key] = {}

            #add attribs and tags for each element.
            for iattr in self.attr_list:
                value = pos.get(iattr)
                if value:
                    self.motifs[key][iattr] = [value]
                else:
                    self.motifs[key][iattr] = []
                
            for itag in self.tag_list:
                self.motifs[key][itag] = [t.text.strip() for t in pos.findall(itag)]
                    
            itag = 'pssm'
            self.motifs[key][itag]=[]
            for ipssm in pos.findall(itag):
                matrix = []
                plist = ipssm.findall('pos')
                plist.sort(key=lambda x:int(x.get('num')))
                for t in plist:
                    base_A = float(t.find('A').text.strip())
                    base_C = float(t.find('C').text.strip())
                    base_G = float(t.find('G').text.strip())
                    base_T = float(t.find('T').text.strip())
                    matrix.append([base_A, base_C, base_G, base_T])
                self.motifs[key][itag].append(matrix)
开发者ID:cfce,项目名称:chilin,代码行数:48,代码来源:MotifParser.py

示例9: find_option_and_change

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
def find_option_and_change(document: ElementTree, name: AnyStr, value: AnyStr):
    """Finds option in xml document and sets value

    :param document: ElementTree object
    :param name: swa option name
    :param value: value for option
    :return:
    """
    xpath = './/preference[@name="{tag_name}"]'.format(tag_name=name)
    for elem in document.findall(xpath):
        elem.text = value
        break
    else:
        warnings.warn(
            'SWA option {name} is not found in SWA preference document. This'
            ' option wont be added to the document with value '
            '"{value}".'.format(name=name, value=value),
            RuntimeWarning
        )
开发者ID:scalix,项目名称:general-utilities,代码行数:21,代码来源:change_swa_preferences.py

示例10: main

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
def main(args):
    if ((args.keyfile is None) or (args.target is None)):
        ops.error('You must provide a keyfile and a target IP, please try again with -k and -t')
        return
    confxml = ElementTree()
    configxmlfilename = os.path.join(dsz.lp.GetResourcesDirectory(), '..', 'implants', 'Darkpulsar-1.0.0.0.xml')
    confxml.parse(configxmlfilename)
    f = open(args.keyfile)
    try:
        newkey = f.read()
    except Exception as ex:
        ops.error('Error reading keyfile')
        raise ex
    finally:
        f.close()
    for ele in confxml.findall('{urn:trch}inputparameters'):
        for subele in ele.findall('{urn:trch}parameter'):
            if (subele.get('name') == 'SigPrivateKey'):
                for keyele in subele.findall('{urn:trch}default'):
                    keyele.text = newkey
    outfile = open(configxmlfilename, 'w')
    try:
        confxml.write(outfile)
    except Exception as ex:
        ops.error('Could not update the FUZZBUNCH config for DAPU')
        raise ex
    finally:
        outfile.close()
    redirport = 0
    dsz.control.echo.Off()
    (success, cmdid) = dsz.cmd.RunEx('local netconnections', dsz.RUN_FLAG_RECORD)
    dsz.control.echo.On()
    print cmdid
    conns = ops.data.getDszObject(cmdid=cmdid).initialconnectionlistitem.connectionitem
    while (redirport == 0):
        redirport = random.randint(10000, 65500)
        for conn in conns:
            if (conn.local.port == redirport):
                redirport = 0
                break
    dsz.cmd.Run(('redirect -tcp -lplisten %d -target %s %s' % (redirport, args.target, args.port)))
    ops.info(('Your redirector has been started, local listening port to connect for DAPU is %d' % redirport))
    ops.info('You can now start FUZZBUNCH to connect to DARKPULSAR.  If you already launched FUZZBUNCH, you will need to start it again')
开发者ID:ExpLife0011,项目名称:DanderSpritz_docs,代码行数:45,代码来源:dapu.py

示例11: getProjectClassPath

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
def getProjectClassPath():
    tree = ElementTree()
    classPathXmlPath = os.path.join(os.getcwd(), ".classpath")
    if not os.path.exists(classPathXmlPath):
        return None
    
    tree.parse(classPathXmlPath)
    entries = tree.findall("classpathentry")
    cp_entries = []
    for entry in  entries :
        if entry.get("kind") == "var" :
            path = entry.get("path")
            if "M2_REPO" in path:
                path = path.replace("M2_REPO",M2_REPO)
            path = os.path.normpath(path)
            cp_entries.append(path)
        if entry.get("kind") == "output" :
            path = os.path.normpath(os.path.join(os.getcwd(), entry.get("path")))
            cp_entries.append(path)

    return cp_entries
开发者ID:shrekwang,项目名称:sztool-extra,代码行数:23,代码来源:ngserver.py

示例12: add_csv_result

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
import csv
from xml.etree import ElementTree

def add_csv_result(FileName,CaseName,CaseResult):
	f=csv.writer(file(FileName,'ab'))
	f.writerow([CaseName,CaseResult])
	#f.close()

//生成结果目录
case = []
start_time = time.strtime('%Y%m%d_%H%M%S',time.localtime(time.time()))
result_dir = "./Result"+start_time

//解析xml中的testcase
tcRoot = ElementTree("./testCases.xml")
cn = tcRoot.findall("case")
for i in cn:
	cases.append(i.text)
caseList = list(set(cases))
caseList.sort(key=cases.index)
title = ['CaseNames','Verify_result']
csv_results = open(result_dir+"/"+result_dir+".csv","wb")
f_csv = csv.writer(csv_results)
f_csv.writerow(title)
#f_csv.close()

for caseName in caseList:
	case_result_dir = result_dir+"/"+caseName
	os.popen("mkdir -p %s"%(case_result_dir))
	try:
		os.sys.path.append("TestCases/MRD8/")
开发者ID:fenwenb,项目名称:testation,代码行数:33,代码来源:run.py

示例13: BattleFeed

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
class BattleFeed(eRepublikXMLProcessor):
    " eRepublik battle feed class "
    url = 'http://api.erepublik.com/v1/feeds/battle_logs/%s/%s'

    def __init__(self, arg=None):
        super(BattleFeed, self).__init__()

        self.id = arg
        self.curPage = -1
        self.maxPages = -1
        self.attacker = None
        self.attackerId = None
        self.defender = None
        self.defenderId = None
        self.raw_battles = None
        self.battles = None
        self.loaded = False
        self.processed = False

    def load(self):
        if self.id == None:
            raise Exception('id=None and BattleFeed.load was called')
        if self.loaded or self.processed:
            return
        while self._loadNextPage():
            Logger.log('Loaded page ' + str(self.curPage))
        self.loaded = True

    def process(self):
        self.load()
        if self.processed:
            return
        battles = Element('battles')
        battles.attrib['id'] = str(self.id)
        battles.attrib['attacker'] = self.attacker
        battles.attrib['attacker-id'] = str(self.attackerId)
        battles.attrib['defender'] = self.defender
        battles.attrib['defender-id'] = str(self.defenderId)
        for b in self.raw_battles.findall('battle'):
            battle = Element('battle')
            battle.attrib['time'] = b.find('time').text
            battle.attrib['damage'] = b.find('damage').text
            battle.attrib['citizen'] = b.find('citizen').text
            battle.attrib['citizen-id'] = b.find('citizen-id').text
            battles.append(battle)
        self.battles = ElementTree(battles)
        del self.raw_battles # free some memory
        self.processed = True

    def _loadNextPage(self):
        if not self._getNextPage():
            return False
        
        xml = ''.join(urlopen(BattleFeed.url % (str(self.id), str(self.curPage))).readlines())
        bl = XML(xml)
        battleInfo = bl.find('battle-info')
        self.maxPages = self.findInt(battleInfo, 'max-pages')
        if not self.attacker:
            self.attacker = self.findString(battleInfo, 'attacker')
            self.attackerId = self.findInt(battleInfo, 'attacker-id')
            self.defender = self.findString(battleInfo, 'defender')
            self.defenderId = self.findInt(battleInfo, 'defender-id')

        if not self.raw_battles:
            self.raw_battles = ElementTree(bl.find('battles'))
        else:
            for b in bl.findall('battles/battle'):
                self.raw_battles.getroot().append(b)
        return True

    def _getNextPage(self):
        """ Sets curPage to next available page and returns true or
            returns false if there are no more pages available.
            """
        if self.curPage == -1:
            self.curPage = 0
            return True
        if self.maxPages > self.curPage:
            self.curPage = self.curPage + 1
            return True
        return False

    def _findBattlesByCitizenId(self, citizenId):
        """
        returns list of damages done by citizen(by citizenId)
        """
        self.process()

        damage = []
        for b in self.battles.findall('battle'):
            if int(b.attrib['citizen-id']) == citizenId:
                # Found
                damage.append(int(b.attrib['damage']))
        return damage

    def findBattles(self, arg):
        self.process()

        if type(arg) == int:
            return self._findBattlesByCitizenId(arg)
#.........这里部分代码省略.........
开发者ID:lensz,项目名称:eRepCrawler,代码行数:103,代码来源:eRepublik.py

示例14: makeSymbolToIdMap

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
 def makeSymbolToIdMap(self):
     doc = ElementTree(file="MarketData.xml")
     for event in doc.findall(".//contract"):
         symbol = event.find("symbol").text
         id = event.get("id")
         self.symbol_id_map[symbol] = id
开发者ID:ryguasu,项目名称:intrade_arbitrage,代码行数:8,代码来源:Quotes.py

示例15: getMoviesFromRss

# 需要导入模块: from xml.etree import ElementTree [as 别名]
# 或者: from xml.etree.ElementTree import findall [as 别名]
  def getMoviesFromRss(self, url, build_only=False):

    rss = urlfetch.Fetch(url)
          
    tree = ElementTree(fromstring(rss.content))
    
    img_re = re.compile('<img src="([a-zA-Z0-9/:._\-]+)" ')
    content_re = re.compile('&#0151; \n(.+)')

    release_re = re.compile('Release:</strong> ([a-zA-Z]{3,4})\. ([0-9]{1,2}), ([0-9]{4})')

    new_movies = []
    update_movies = []

    for item in tree.findall('.//item'):
      title = item.find('title').text.strip()

      is_new = True

      movie = getMovie(title)

      if (not movie):
        movie = Movie()
      else:
        is_new = False
        if (build_only):
          continue

      description = item.find('description').text.strip()
      summary = (content_re.search(description)).groups()[0]

      release_match = (release_re.search(description))

      imageMatch = img_re.search(description)

      movie.title = title
      movie.full_content = description
      movie.summary = db.Text(summary)
      
      if (release_match):
        release_month = MONTHS.index(release_match.groups()[0].upper()) + 1
        release_date = int(release_match.groups()[1])
        release_year = int(release_match.groups()[2])

        movie.release_date = datetime.datetime(release_year, release_month, release_date)

      if (imageMatch):          
        picture_url = imageMatch.groups()[0]
        movie.picture = db.Blob(urlfetch.Fetch(picture_url).content)
      
      movie.put()
      
      if (is_new):
        new_movies.append(title)
      else:
        update_movies.append(title)

    movies = {}
    movies['new'] = new_movies
    movies['update'] = update_movies

    return movies
开发者ID:FerHarris,项目名称:google-app-engine-samples,代码行数:64,代码来源:main.py


注:本文中的xml.etree.ElementTree.findall方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。