Отправка post запроса циклом python

Adsd

Новичок
Пользователь
Мар 3, 2023
3
0
1
Всем привет, как можно сделать следующее:
1. Отправить метод POST

2. Создать текстовый файл в котором хранить 5 шт place_id полученных из 1 пункта (не писать портянку вызывая 5 раз метод, сделать красиво)

3. Отправить метод Get который будет читать place_id из текстового файла (из него, не их переменной первого запроса) и убедиться что данные place_id существуют

4. Добавить в код комментарии, аннотации, print, проверки на статус код для лучшей читаемости кода

Вот пытался, пока безрезультатно:


Код:
import requests


class Test_new_location():
    """Работа с новой локацией"""
    def test_create_new_location(self):
        """Создание новой локации"""

        base_url = "https://rahulshettyacademy.com"          # базовая url
        key = "?key=qaclick123"             # Параметр для всех запросов (из документации)
        """Создание новой локации"""

        post_resourse = "/maps/api/place/add/json"           #  Ресурс метода POST
        post_url = base_url + post_resourse + key
        print(post_url)
    #
        json_for_create_new_location = {

            "location": {
                "lat": -38.383494,
                "lng": 33.427362
            }, "accuracy": 50,
            "name": "Frontline house",
            "phone_number": "(+91) 983 893 3937",
            "address": "29, side layout, cohen 09",
            "types": [
                "shoe park",
                "shop"
            ],
            "website": "http://google.com",
            "language": "French-IN"

        }

        result_post = requests.post(post_url, json = json_for_create_new_location)
        print("Статус-код : " + str(result_post.status_code))
        check_post = result_post.json()
        place_id = check_post.get("place_id")
        print("Place_id : " + place_id)
        for i in range(1, 6):
            print(result_post.text)
            place = open('post.txt', 'a')
            place.write(place_id)
            place.write(" \n")
            place.close()
 
Последнее редактирование:

4olshoy_blen

Популярный
Пользователь
Ноя 13, 2022
423
115
43
Код надо вставлять как код (через кнопку </> на панели.
 

Adsd

Новичок
Пользователь
Мар 3, 2023
3
0
1
Python:
import requests


class Test_new_location():
"""Работа с новой локацией"""
def test_create_new_location(self):
"""Создание новой локации"""

base_url = "https://rahulshettyacademy.com" # базовая url
key = "?key=qaclick123" # Параметр для всех запросов (из документации)
"""Создание новой локации"""

post_resourse = "/maps/api/place/add/json" # Ресурс метода POST
post_url = base_url + post_resourse + key
print(post_url)
#
json_for_create_new_location = {

"location": {
"lat": -38.383494,
"lng": 33.427362
}, "accuracy": 50,
"name": "Frontline house",
"phone_number": "(+91) 983 893 3937",
"address": "29, side layout, cohen 09",
"types": [
"shoe park",
"shop"
],
"website": "http://google.com",
"language": "French-IN"

}

result_post = requests.post(post_url, json = json_for_create_new_location)
print("Статус-код : " + str(result_post.status_code))
check_post = result_post.json()
place_id = check_post.get("place_id")
print("Place_id : " + place_id)
for i in range(5):
print(requests.post(post_url, json = json_for_create_new_location))
place = open('post.txt', 'a')
place.write(place_id)
place.write(" \n")
place.close()
 

4olshoy_blen

Популярный
Пользователь
Ноя 13, 2022
423
115
43
Мда, неудивительно что не работает. Без отступов ничче не понятно. Или ты запускал прям как есть?)
 

Adsd

Новичок
Пользователь
Мар 3, 2023
3
0
1
Нет, здесь при копировании кода все отступы пропали
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 662
474
83
Нет, здесь при копировании кода все отступы пропали
только у вас пропадают...
 

Форум IT Специалистов