Как через скрипт добавить товары в корзину в Сбермаркете?
Я знаю id магазина и id продуктов, которые хочу добавить в корзину. Как мне сделать такой запрос, чтобы при работе скрипта пользователь переходил на страницу магазина на сбермаркете и у него в корзине уже были добавлены необходимые продукты?
Было бы понятно, если все это можно было бы передать через GET-запрос, но на сайте сбермаркета при добавлении товара в корзину отправляется POST-запрос. Этот запрос я уже научился моделировать, но как его применить не понимаю.
UPD: На данный момент смог реализовать отправку id продукта на сервер и получение ответа. На страницу добавил кнопку отправки id продукта:
<a href="https://sbermarket.ru/{{ set[0].retailer.slug }}?sid={{ set[0].store_id }}"
class="btn btn-primary" role="button" onClick="doPost()" >Оформить заказ</a>
При нажатии на кнопку срабатывает скрипт, отправляющий id продукта на сервер:
<script type="text/javascript">
async function doPost() {
data = '14851383';
const response = await fetch('http://localhost:8080/push_product_list', {
method: 'POST',
headers: {
'Content-Type': 'application/json;charset=utf-8'
},
body: JSON.stringify(data)
});
}
</script>
сервер получает данные и посылает их в скрипт для дальнейшей обработки:
@app.post("/push_product_list")
async def push_product_list(request: Request):
'''Функция отправляет список продуктов в Сбермаркет
для их отображения в корзине
'''
offer_id = await request.json()
product_list = ppl.send(offer_id)
print(product_list)
return product_list
скрипт ppl отправляет данные на сервер сбермаркета:
def send(offer_id):
'''Функция отправляет POST-запрос с id товара для отображения его
в корзине Сбермаркета
'''
data = json.dumps({"line_item":{"offer_id" : offer_id}})
r = requests.post(
'https://sbermarket.ru/api/line_items',
cookies=cookies,
headers=headers,
data=data,
)
ola = r.text
return print(ola)
вроде все идет нормально, но как мне имея все это передать продукты к корзину на сайте сбермаркета?