Я получаю неточное количество результатов поиска с помощью GSA, я прочитал это статья, но я не уверен, где использовать «rc = 1» или если я даже хочу (из-за возможных проблем с задержкой). Это то, что у меня есть сейчас, и $ totalItems получает только значение [M] для первого значения [M], которое представляется неточным. Например, первая страница результатов дает [M] => 66, а последняя страница результатов дает [M] => 42 (что правильно), вот немного моего кода:
$url = 'https://search.state.edu/search?q='.$q.'&client='.$client.'&output='.$form.'&oe=UTF-8&ie=UTF-8&ud=1'.(is_null($sort) ? "" : "&sort=$sort").'&site='.$site.'&access=p&entqr=3&entqrm=0&start='.$start.'&limit='.$limit.''.'&getfields=thumbnail';
$result = simplexml_load_file($url);
$totalItems = $result->RES->M;
Куда бы я вставил «rc = 1» в запросе или есть способ извлечь все записи, чтобы я мог искать последние [M] (что представляется точным)?
Как другие люди справляются с этой неточностью?
Первый [M]:
[RES] => SimpleXMLElement Object
(
[@attributes] => Array
(
[SN] => 1
[EN] => 10
)
[M] => 66
Последний [М]:
[RES] => SimpleXMLElement Object
(
[@attributes] => Array
(
[SN] => 41
[EN] => 42
)
[M] => 42
Параметр rc действительно нужен для получения точного количества результатов.
Но если вы используете значение фильтра по умолчанию, некоторые результаты будут отфильтрованы, и вы не увидите столько результатов.
Вы можете попробовать объединить оба &RC = 1&фильтр = 0 в вашей строке запроса.
Обратите внимание, что с filter = 0 вы отключите следующее:
Как и «q», «client» и «output», «rc» также является еще одним параметром. Так что просто добавьте ‘rc’ в качестве другого параметра / строки запроса и установите значение по умолчанию равным 1. Как-то так,
$url = 'https://search.state.edu/search?q='.$q.'&client='.$client.'&output='.$form.'&oe=UTF-8&ie=UTF-8&ud=1'.(is_null($sort) ? "" : "&sort=$sort").'&site='.$site.'&access=p&entqr=3&entqrm=0&start='.$start.'&limit='.$limit.''.'&getfields=thumbnail&rc=1';
или если я даже хочу (из-за возможных задержек).
rc = 1 даст вам точное количество по сравнению с приблизительным количеством. Запрос точного количества вместо приблизительного увеличит производительность. Поэтому рекомендуется использовать его только в случае крайней необходимости.
Вы называете это «неточным». Google называет это «приблизительным». Все как мы это видим!