Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Python вопрос помогите

Помощник PYTHON Профи (607), на голосовании 2 месяца назад
resourses = ['something1', 'something2', 'something3', 'something4', 'something5', 'something6', 'something7', 'something8']

for i in range(len(resourses)):
data = {'source': resourses[i]}
response = session.get('', headers=headers, data=data).text

Вот мой код, по идее в переменной "response" каждый раз должен быть новый ответ, но там всё время ответ прошлой итерации цикла, как будто переменная "data" всё время равна - {'source': 'something1'}.

Помогите, нужно чтобы каждый раз был новый ответ
Голосование за лучший ответ
Roots Мудрец (10467) 3 месяца назад
Где и на какой строке ты узнаешь, какой там ответ?
Помощник PYTHONПрофи (607) 3 месяца назад
Просто print(response) всё время выводит один ответ
Roots Мудрец (10467) пррапра, напиши весь свой код вместе с принтом, чтобы понятнее было
Помощник PYTHONПрофи (607) 3 месяца назад
resourses = ['something1', 'something2', 'something3', 'something4', 'something5', 'something6', 'something7', 'something8']

for i in range(len(resourses)):
data = {'source': resourses[i]}
response = session.get('', headers=headers, data=data).text
print(response)
Roots Мудрец (10467) пррапра, оно съело отступы. У тебя принт к циклу относится, или вне цикла выполняется?
Помощник PYTHONПрофи (607) 3 месяца назад
всё в цикле
Помощник PYTHONПрофи (607) 3 месяца назад
всё что ниже строчки for i in range(len(resourses))


относится к циклу
Roots Мудрец (10467) пррапра, вроде бы должно на каждой итерации показывать новый ответ, ошибки никакой не вижу Ты уверен, что сервер, к которому ты запрос отправляешь, должен разные ответы возвращать на твои запросы?
Помощник PYTHONПрофи (607) 3 месяца назад
Я могу создать вопрос с кодом который с циклом и который без
Roots Мудрец (10467) пррапра, сделай вот так, здесь уже абсолютно точно всё должно работать for r in resources: print(session.get('', headers=headers, data={'source': r}).text) Если опять также, то дай мне url сервера, я проверю Кстати, уверен, что там не надо в формате json отправлять запрос? Тогда надо использовать не data=, а json=, иначе он отправит в виде формы данные
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (258849) 3 месяца назад
 import requests 

resources = ['something1', 'something2', 'something3', 'something4', 'something5', 'something6', 'something7', 'something8']

# Предположим, что у вас уже есть сессия и заголовки
session = requests.Session()
headers = {'your-header': 'your-header-value'}

responses = []

for resource in resources:
data = {'source': resource}
response = session.get('https://your-url.com', headers=headers, params=data).text
responses.append(response)
print(f"Response for {resource}: {response}")

# Теперь все ответы сохранены в списке responses
Похожие вопросы