Страницы-лидеры домена (get_top_urls)
В этом отчете вы найдете все страницы анализируемого домена в иерархическом порядке. Кроме того, он показывает количество ключевых фраз, по которым страница ранжируется в топе, потенциальный трафик, количество шейров в социальных сетях Facebook, LinkedIn.
Метод get_top_urls может работать продолжительное время, из-за специфики сбора данных.
По умолчанию результаты отсортированы по количеству фраз, по убыванию: order=desc&sort=organic_keywords.
Пагинация
Для пагинации используйте параметры:
- page_size: количество результатов на страницу (по умолчанию — 100, максимум —1000).
- page: номер страницы (по умолчанию — 1-я страница) — каждое изменение параметра считается новым запросом и влияет на лимиты.
Сортировка
Для сортировки используйте параметры:
- sort: поле, по которому нужно выполнить сортировку (organic_keyword, facebook_shares, linkedin_shares, potencial_traff). Например, sort=organic_keywords&page_size=100 .
- order: сортировка по убыванию "desc" или по возрастанию "asc" ( default: desc ). Например, order=desc .
Metrics | Description |
result | Инкапсулирует в себе ответ |
total | Всего найдено страниц у домен |
top_urls | Инкапсулирует с в себе ответ |
url |
URL домена |
organic_keywords | Общее количество ключевых фраз, по которым ранжируется страница в Google топ-100 или Яндекс топ-50 |
facebook_shares | Количестве шейров в социальной сети Facebook, которое получила страница анализируемого домена |
potencial_traff | Количество посетителей в месяц, которые страница получит в том случае, если займет по всем фразам из топ-20 первую позицию в поисковой выдаче Google или Yandex. Данный показатель рассчитывается исходя из соотношения реального и максимально возможного трафика |
status_msg | Ответ: "OK" или "Error" сообщает об удачном или неудачном запросе |
status_code | Код ответа "200" — успешный запрос. В других случаях — превышение лимитов (количество одновременных запросов или ограничение по лимитам аккаунта) |
left_lines | Количество оставшихся API строк |
"result":{
"total":1125158,
"hits":[
{
"url":"https:\/\/example.com\/",
"organic_keywords":5178,
"facebook_shares":215208,
"potencial_traff":184351
},
{
"url":"https:\/\/example.com\/example\/example\/",
"organic_keywords":4792,
"facebook_shares":0,
"potencial_traff":28594
}
..................
]
},
"status_msg":"OK",
"status_code":200,
"left_lines":2147481649
}
require_once __DIR__ . '/vendor/autoload.php';
// configure your application
$config = [
'token' => '5ef58df8d6a5ef19efa6b9d460f41806',
];
//domain name
$domain = 'olx.ua';
//optional params
$additionalParams =[
'page' => 1,
//pagination result page
'order' => 'asc',
//order (asc, desc)
'sort' => 'organic_keywords',];
/*sort by value of (can be sorted by - organic_keywords
*- facebook_shares
*- potencial_traff
*/
// init client with your serpstat api token
$apiClient = new \Serpstat\Sdk\Core\ApiGuzzleHttpClient($config['token']);
// create instance of api method class
$apiMethod = new \Serpstat\Sdk\Methods\GetTopUrlsMethod(
$domain,
\Serpstat\Sdk\Interfaces\IApiClient::SE_GOOGLE_UA,
$additionalParams
);
try {
// try call api method
$response = $apiClient->call($apiMethod)->getResult();
} catch (\Exception $e) {
// catch api error
$response = $e->getMessage();
}
var_dump($response);
import json
import pprint
import urllib.request as urlrequest
from urllib.parse import urlencode
host = 'http://api.serpstat.com/v3'
method = 'get_top_urls'
wait_timeout = 600 # sec
params = {
'query': 'example.com',
'se': 'g_us',
'order': 'asc',
'sort': 'organic_keywords',
'token': 'xxxxxxxxxxxxxxxxxxxxxxxxxxxx'}
api_url = "{host}/{method}?{params}".format(
host=host,
method=method,
params=urlencode(params, safe=',')
)
json_data = None
try:
json_data = urlrequest.urlopen(api_url, timeout=wait_timeout).read()
except Exception as e0:
print("API request error: {error}".format(error=e0))
if json_data:
data = json.loads(json_data)
pprint.pprint(data)