Как выполнить запрос только агрегации в Phonograph с помощью API

Я хочу запустить запрос агрегации фонографа из API и не могу установить pageSize. Когда я запускаю запрос агрегации из Slate, я могу установить для параметра pageSize значение 0, что приводит к тому, что в результате я получаю только агрегацию.

Вот полный предварительный просмотр моего запроса из Slate:

{
    "extractors": {
        "result": "$"
    },
    "headers": {},
    "method": "POST",
    "path": "search/tables",
    "pathParams": {},
    "queryParams": {
        "pageSize": 0
    },
    "bodyJson": {
        "tableRids": [
            "ri.phonograph2.main.table.xxxx"
        ],
        "filter": {
            "type": "and",
            "and": []
        },
        "aggregations": {
            "distincCrit": {
                "terms": {
                    "field": "type.raw",
                    "order": {
                        "_term": "asc"
                    }
                }
            }
        }
    }
}

Я также хочу выполнить это из командной строки в python. Итак, я установил свой код. Параметр json заполнен bodyJson сверху.

response = requests.post(PHONOAPI_SEARCH_API, headers=HEADERS, json=searchAgg, verify=False, proxies=proxies).text

Но я не могу добавить queryParams с pageSize в мой код Python.

Любое предложение?

Я попытался добавить атрибут pageSize к json и заголовку безрезультатно. Я также пытался передать queryParams в параметре «данные» запроса, но также не смог.

Вы пробовали аргумент ключевого слова params? request.readthedocs.io/en/latest/user/quickstart/…

nicornk 27.11.2022 20:22

Спасибо @nicornk! В этом была хитрость. Пожалуйста, опубликуйте это как ответ. Тогда я могу дать свои кредиты

Kai Altstaedt 29.11.2022 08:36
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
2
64
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы должны иметь возможность передавать pageSize, используя запросы params аргументы ключевого слова:

response = requests.post(PHONOAPI_SEARCH_API, 
                         headers=HEADERS, 
                         json=searchAgg, 
                         params = {"pageSize": 100}
                         )

Другие вопросы по теме