@s4q

Ошибка при распаковке Brotli?

Есть такой код
import requests
import gzip
import brotli
import json

def getFlightDetails(query):
	encodings = {
		"": lambda x: x,
		"br": brotli.decompress,
		"gzip": gzip.decompress
	}

	headers = {
		"accept-encoding": "gzip, br",
		"accept-language": "pt-BR,pt;q=0.9,en-US;q=0.8,en;q=0.7",
		"cache-control": "max-age=0",
		"origin": "https://www.flightradar24.com",
		"referer": "https://www.flightradar24.com/",
		"sec-fetch-dest": "empty",
		"sec-fetch-mode": "cors",
		"sec-fetch-site": "same-site",
		"user-agent": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36"
	}

	url = f'https://data-live.flightradar24.com/clickhandler/?flight={query}'
	request = requests.get(url, headers = headers)

	contentEnc = request.headers.get("Content-Encoding", "")
	content = request.content
	contentType = request.headers.get["Content-Type"]

	content = encodings[contentEnc](content)

	return json.loads(content)

print(getFlightDetails('U6263'))

Однако выдает ошибку
brotli.error: BrotliDecompress failed
В чем проблема?
  • Вопрос задан
  • 34 просмотра
Решения вопроса 1
@Bl4ckm45k
brotli.error: BrotliDecompress failed

Вы можете не импортировать Brotli, т.к. urlib3 использующийся в requests сам выполняет то, что вам нужно с помощью Brotli, если он установлен
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы