Я столкнулся с проблемой ограничения скорости в моем коде Python, хотя я использую несколько прокси-серверов и гарантирую, что каждый прокси-сервер вызывается только один раз. Несмотря на это, я продолжаю получать сообщение об ошибке: «Превышен предел скорости на уровне системы».
Вот обзор моей настройки:
У меня есть список прокси, и я использую каждый прокси только для одного запроса, каждый прокси вызывается только один раз (но использует поток для одновременного вызова многих запросов).
Однако после несколько запросов, я все равно получаю ошибку ограничения скорости.
Вот упрощенная версия моего кода Python:
def _request(self, method, uri, timeout=5, auth=True, params=None):
uri_path = uri
data_json = ''
if method in ['GET', 'DELETE']:
if params:
strl = []
for key in sorted(params):
strl.append("{}={}".format(key, params[key]))
data_json += '&'.join(strl)
uri += '?' + data_json
uri_path = uri
else:
if params:
data_json = json.dumps(params)
uri_path = uri + data_json
headers = {}
if auth:
now_time = int(time.time()) * 1000
str_to_sign = str(now_time) + method + uri_path
sign = base64.b64encode(
hmac.new(self.secret.encode('utf-8'), str_to_sign.encode('utf-8'), hashlib.sha256).digest())
if self.is_v1api:
headers = {
"KC-API-SIGN": sign,
"KC-API-TIMESTAMP": str(now_time),
"KC-API-KEY": self.key,
"KC-API-PASSPHRASE": self.passphrase,
"Content-Type": "application/json"
}
else:
passphrase = base64.b64encode(
hmac.new(self.secret.encode('utf-8'), self.passphrase.encode('utf-8'), hashlib.sha256).digest())
headers = {
"KC-API-SIGN": sign,
"KC-API-TIMESTAMP": str(now_time),
"KC-API-KEY": self.key,
"KC-API-PASSPHRASE": passphrase,
"Content-Type": "application/json",
"KC-API-KEY-VERSION": "2"
}
headers["User-Agent"] = "kucoin-python-sdk/"+version
url = urljoin(self.url, uri)
proxy_dict = {'http': self.cl_proxy, 'https': self.cl_proxy} #if self.cl_proxy else None
#print (url,proxy_dict)
if method in ['GET', 'DELETE']:
r = requests.request(method, url, headers=headers, timeout=timeout, proxies=proxy_dict)
else:
r = requests.request(method, url, headers=headers, data=data_json, timeout=timeout, proxies=proxy_dict)
if ("System-level rate limit exceeded"):
s = str(url) + str(self.key)+ str(proxy_dict ) + str(r.status_code)
print (s)
Подробнее здесь: https://stackoverflow.com/questions/790 ... oxies-each
В Python превышен предел скорости на уровне системы, несмотря на использование нескольких прокси, каждый из которых вызы ⇐ Python
Программы на Python
1728196001
Anonymous
Я столкнулся с проблемой ограничения скорости в моем коде Python, хотя я использую несколько прокси-серверов и гарантирую, что каждый прокси-сервер вызывается только один раз. Несмотря на это, я продолжаю получать сообщение об ошибке: «Превышен предел скорости на уровне системы».
Вот обзор моей настройки:
У меня есть список прокси, и я использую каждый прокси только для одного запроса, каждый прокси вызывается только один раз (но использует поток для одновременного вызова многих запросов).
Однако после несколько запросов, я все равно получаю ошибку ограничения скорости.
Вот упрощенная версия моего кода Python:
def _request(self, method, uri, timeout=5, auth=True, params=None):
uri_path = uri
data_json = ''
if method in ['GET', 'DELETE']:
if params:
strl = []
for key in sorted(params):
strl.append("{}={}".format(key, params[key]))
data_json += '&'.join(strl)
uri += '?' + data_json
uri_path = uri
else:
if params:
data_json = json.dumps(params)
uri_path = uri + data_json
headers = {}
if auth:
now_time = int(time.time()) * 1000
str_to_sign = str(now_time) + method + uri_path
sign = base64.b64encode(
hmac.new(self.secret.encode('utf-8'), str_to_sign.encode('utf-8'), hashlib.sha256).digest())
if self.is_v1api:
headers = {
"KC-API-SIGN": sign,
"KC-API-TIMESTAMP": str(now_time),
"KC-API-KEY": self.key,
"KC-API-PASSPHRASE": self.passphrase,
"Content-Type": "application/json"
}
else:
passphrase = base64.b64encode(
hmac.new(self.secret.encode('utf-8'), self.passphrase.encode('utf-8'), hashlib.sha256).digest())
headers = {
"KC-API-SIGN": sign,
"KC-API-TIMESTAMP": str(now_time),
"KC-API-KEY": self.key,
"KC-API-PASSPHRASE": passphrase,
"Content-Type": "application/json",
"KC-API-KEY-VERSION": "2"
}
headers["User-Agent"] = "kucoin-python-sdk/"+version
url = urljoin(self.url, uri)
proxy_dict = {'http': self.cl_proxy, 'https': self.cl_proxy} #if self.cl_proxy else None
#print (url,proxy_dict)
if method in ['GET', 'DELETE']:
r = requests.request(method, url, headers=headers, timeout=timeout, proxies=proxy_dict)
else:
r = requests.request(method, url, headers=headers, data=data_json, timeout=timeout, proxies=proxy_dict)
if ("System-level rate limit exceeded"):
s = str(url) + str(self.key)+ str(proxy_dict ) + str(r.status_code)
print (s)
Подробнее здесь: [url]https://stackoverflow.com/questions/79058480/system-level-rate-limit-exceeded-in-python-despite-using-multiple-proxies-each[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия