Работа через прокси (без прокси пока такого не замечал). Где-то около 10% результатов выдает "none" в $totalcount вместо числа. Два скриншота с примерами (в большинстве случаев парсинг происходит, как на первом скриншоте, но иногда, как на втором, но на объеме этих вариантов очень много). По факту парсинг происходит с успешным результатом - и это как раз не удобно. Неудачные запросы не сохраняются т.к. парсер определяет это как успешно. Приходится в ручном режиме отбирать эти none и парсить снова и так несколько раз. Предложение как исправить: Если $totalcount = "none", то определять это как неуспешный ответ, т.к. $totalcount по определению не может быть пустым (даже если Google ничего не находит, выдает "0"). И, соответственно, парсить до тех пор, пока не закочатся попытки, тогда уже и выдавать "none" (но оно так и будет, т.к. переменная и останется пустая). Потом уже можно и добавлять попытки, и парсить снова неудачные запросы (т.к. они уже запишутся), т.е. все как обычно.
да, поддерживаю, проблематичная штука, я часто делаю такой парсинг и много времени трачу не перепроверку рандомных строк
Если на странице нет данных, то так и должно быть none в результате. Если вы считаете что в этом случае нужно заново попытаться спарсить результаты по запросу, то просто добавьте в формате результата этот же запрос снова в очередь используя [% tools.query.add(query) %]
В SE::Google добавлена опция Empty totalcount is error, при включении которой запрос будет считаться неудачным, если отсутствует значение для $totalcount, и соответственно будут делаться повторные попытки. По-умолчанию отключена.