首页 > 解决方案 > 如何仅提取主题:此字符串的结果

问题描述

所以我写了一个代码来获取我在网站上发布的考试结果。但我不知道如何以 subjectName:subjectResults 格式输出结果。

我的输出是这样的,

HISTORY","subjectResult":"A"},{"subjectName":"SCIENCE","subjectResult":"B"},{"subjectName":"DRAMA & THEATRE(SINHALA)","subjectResult":"A "},{"subjectName":"商业和会计。STUDIES","subjectResult":"A"},{"subjectName":"INFOR. &通讯。TECHNOLOGY","subjectResult":"A"}],"studentInfo":[{"param":"Examination","value":"GCE (O/L) EXAMINATION"},{"param":"Year" ,"value":"2018"},{"param":"Name","value":"NANAYAKKARA IGALA ARCHCHIGE NAVINDU THARUKA PERERA"},{"param":"索引号","value":

我只需要逐行列出的主题及其结果。

这是我的脚本

import requests
import re
import time



index_number = "80299920"

URL = f'https://result.doenets.lk/result/service/OlResult?index={index_number}&nic='

while True:
    try:
        req = requests.get(URL)
        x = req.content.decode('utf-8')
        search = re.findall(r'\"subjectResults\":\[]', x)
        if search:
            print("No results yet")
            time.sleep(0.001)
            continue
        else:
            print("Results found")
            res = requests.get(f'https://result.doenets.lk/result/service/OlResult?index={index_number}&nic=')
            results=res.content
            print(results)
            exit()
    except Exception:
        print("ok")

标签: pythonpython-3.xstringlist

解决方案


结果是JSON格式,因此您可以对其进行解析并将其用作pythondict

res = requests.get(...)
result = res.get_json() # or result = json.loads(res.text)

for item in result['subjectResults']:
    print(item['subjectName'] + ":" + item['subjectResult'])

# Printing

BUDDHISM:A
SINHALA LANGUAGE & LITT.:A
ENGLISH LANGUAGE:A
MATHEMATICS:A
HISTORY:A
SCIENCE:B
DRAMA & THEATRE(SINHALA):A
BUSINESS & ACCT. STUDIES:A
INFOR. & COMM. TECHNOLOGY:A

推荐阅读