Python解析。查找是否存在

2024-03-29 12:49:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经创建了一个python解析器,它将访问一个网页,然后像一个小API一样从源代码中的div获取信息。但不同的帐户有更多的div和它回来作为一个错误的阅读。你知道吗

每当我去一个管理员帐户,它总是说{“PlayerExists”:false}。你知道吗

我的代码:

if 'PlayerName' in self.request.GET:
            self.response.headers['Content-Type'] = 'application/json'
            docType = '{http://www.w3.org/1999/xhtml}'
            PlayerName = self.request.GET['PlayerName']
            gamertagava = self.request.GET['PlayerName']
            output = {}
            try:
                msPageHandle = urllib.urlopen('http://nflplayers.mobi/'+PlayerName+'.html')
                msPage = msPageHandle.read()
                msPageHandle.close
                parse = ET.fromstring(msPage)
            except:
                output['PlayerExists'] = False
                self.response.write(json.JSONEncoder().encode(output))
                return      
output['AdminTeam'] = parse.find('.//*[@id="AdminTeam"]')   
output['AdminLaunchTeam'] = parse.find('.//*[@id="AdminLaunchTeam"]')   
output['Old Skool Player'] = parse.find('.//*[@id="Old Skool Player"]') 


            output['PlayerName'] = parse.find('.//*[@id="PlayerName"]').text
            output['Playerscore'] = parse.find('.//*[@id="Playerscore"]').text
            if output['Playerscore']=='--':
                output['PlayerExists'] = False
                output['Playerscore'] = 0
            else:
                output['GamertagExists'] = True
                output['Playerscore'] = int(output['Playerscore'])

管理员有一个额外的DIV,所以我不知道这是否是问题所在。就是这样。欢迎任何帮助。你知道吗

 <div id="AdminTeam">
        <label>Admin&nbsp;Team</label>
        <div class="Badges">

            <div id="AdminLaunchTeam" class="Badge"></div>

            <div id="Old Skool Player" class="Badge"></div>

        </div>
    </div>

谢谢。雷米


Tags: selfdividoutputgetparserequestfind