Структурный сбор семантики
Автор: https://t.me/heymoneymaker
Описание API для получения списка запросов страниц
Делаем POST-запрос на Питоне вот в таком формате:
uid = f"https://api.keys.so/tools/keywords_by_pages?list={lllsst}&base=msk"
data = json.loads(requests.post(uid, headers=headers).content)
lllsst - это список урлов (https://www.avito.ru/moskva?q=мобильная+баня+под+ключ,https://banimobil.ru/,https://baniglushakova.ru/katalog/.... и тд).
Запрос срабатывает, но data равен не ответу вида "uid": "msk:77:0ed03bab50a8de4fe27dc7303bb8cee9", а 500 ошибке: {'code': 500, 'message': 'Обьект не является массивом или пустой'}.
В чем может быть проблема?
в headers передается 'X-Keyso-TOKEN
Предполагаю, что или урлы надо как-то обрезать, или что-то с интерфейсом (недопилен). Потому что в документации нет пункта про keywords_by_pages
--
list должен быть массивом строк
Тело запроса(тип application/json):
{
"list": [
"https://www.avito.ru/moskva?q=мобильная+баня+под+ключ",
"https://banimobil.ru/",
"https://baniglushakova.ru/katalog/"
],
"base": "msk"
}
url_list = ['avito.ru/moskva?q=мобильная+баня+под+ключ', 'banimobil.ru',
'baniglushakova.ru/katalog']
url = f"{CAPI.host}/tools/keywords_by_pages?auth-token={CAPI.auth_token}"
r = requests.post(url=url, json={
"list": url_list,
"base": f"{CAPI.base_name}"
})
uid = r.json()["uid"]
response = Response(r)
response.assert_status_code(200)
return uid