我是编程的新手,所以请放轻松。我正在尝试将Google安全浏览列表下载到本地数据库,并且很麻烦。我在python中有代码可以下载一个列表作为测试,并且将约束(maxUpdateEntries)设置为1,但是我得到30个散列作为字节格式的响应。当我尝试对字节进行解码(使用.decode())时,出现错误。所以我想我有两个问题:
谢谢!
url = f'https://safebrowsing.googleapis.com/v4/threatListUpdates:fetch?key={API_KEY}'
data = '''{
"client": {
"clientId": "COMPANYNAME",
"clientVersion": "1.5.2"
},
"listUpdateRequests": [{
"threatType": "MALWARE",
"platformType": "ANY_PLATFORM",
"threatEntryType": "URL",
"constraints": {
"maxUpdateEntries": 1,
"maxDatabaseEntries": 1,
"region": "US"
}
}]
}'''
headers = {
'Content-Type': 'application/json',
}
response = requests.post(url, data=data)
dicts = json.loads(response.text)
rawhashes = dicts["listUpdateResponses"][0]['additions'][0]['rawHashes']['rawHashes']
rawlist = base64.b64decode(rawhashes)
pprint.pprint(rawlist)
这就是我得到的结果:
(b'\x00\x1a\xbe?\x00E\xfc>\x00T\xfeM\x00}\x9c\xd3\x00\x97\xf35\x01\xaf\x0e?'
b'\x01\xc2VM\x01\xe7 /\x02\x05\t\x9a\x02D`\xf3\x02v\xc2,\x02\xad\n/'
b'\x02\xb9+\xcd\x02\xd2$}\x02\xdaE\xc1\x036\xe6\xf2\x03\x8b\xcf\xb8'
b'\x03\xa5\xc4\xec\x04W\xbeI\x04\xc0\xe1\r\x04\xe2\xf1\xfe\x04\xef\xe4\xa8'
b'\x05\x1a\x1d\xe6\x05f(Y\x05l\x8e\x9f\x05\x9e\xeb\x00\x05\xde#\xef'
b'\x05\xea\xeb\x12\x05\xfe\xb4d\x06/>\x97\x06;\xe5:\x07Y\xf0\xbb\x07a\xb9\x88'
b'\x07h[\xda\x07\x9e\x8c\xa3\x07\xbe\xf4\xa2\x07\xca\xd0\x89\x07\xf4\x90\xef'
b'\x08\x0f\xc0\x96\x08:p\x8b\x08W\xe5~\x08n\xf2\x95\x08o\xa9c\x08\x97\xa4v'
b'\x08\xc6`\xd0\t\x01\x81\x14\t\x12\xce?\t!\xad\xd0\t\x9f_g\t\xa6\xa0\xbb'
b'\n!`\x05\x0b!\xfb\x11\x0bR\xab\xa1\x0b\x98\xc2\n\x0b\xdb\x07\xc8'
b'\x0c\x1d \x9d\x0c\x88\x87\xfb\r\x14\xe3\xda\r_9(\r\x93-^\r\xfd\x88^'
b'\x0e\x02\xa8\x13\x0e\x12.0\x0e\x1a\xe1\t\x0eO\xf9\xe4\x0e\x8e\xeb\xc2\x0fM-?'
b'\x0f\xafq\xac\x0f\xc2\x17\xe1\x0f\xcb\xc6\xfd\x10\x1ap\xda\x10Wr0\x10n\x80U'
b'\x10\xddIA\x10\xe2f_\x11de-\x11}\xa5\xc0\x11\x96\xc6\x00\x11\xee\xf5)'....
等有30条回复。