Как распознать ботов с php?

sum ожидает итеративный объект (например, список). Поэтому код должен быть:

def black_jack(a, b):
    if sum([a, b]) > 21:
        return 0
    else:
        return sum([a, b])

print black_jack(10, 5)
17
задан Hugo Gameiro 8 January 2009 в 02:00
поделиться

4 ответа

Необходимо отфильтровать строками агента пользователя. Можно найти список приблизительно 300 общих агентов пользователя данным ботами здесь: http://www.robotstxt.org/db.html Пробежка того списка и игнорирование агентов пользователя бота перед выполнением SQL-оператора, должны решить проблему для всех практических целей.

, Если Вы не хотите, чтобы поисковые системы даже достигли страницы, используйте основное robots.txt файл для блокирования их.

9
ответ дан 30 November 2019 в 11:27
поделиться

Можно проверить Строку агента пользователя, пустые строки, или строки, содержащие 'робот', 'паука', 'поисковый робот', 'завихрение', вероятно, будут роботами.

preg_match('/robot|spider|crawler|curl|^$/i', $_SERVER['HTTP_USER_AGENT']));

23
ответ дан 30 November 2019 в 11:27
поделиться

Проверьте агент пользователя прежде, чем увеличить количество просмотра страницы, но помните, что это может имитироваться. PHP выставляет агент пользователя в $_SERVER['HTTP_USER_AGENT'], предположение, что веб-сервер предоставляет ему эту информацию. Больше информации о $_SERVER может быть найден по http://www.php.net/manual/en/reserved.variables.server.php.

Можно найти список агентов пользователя по http://www.user-agents.org; поиск с помощью Google также обеспечит названия тех, которые принадлежат крупным поставщикам. Третий возможный источник был бы журналами доступа Вашего веб-сервера, если можно агрегировать их.

2
ответ дан 30 November 2019 в 11:27
поделиться

Вы попытались определить их их информацией об агенте пользователя? Простой поиск Google должен дать Вам агенты пользователя, используемые Google и т.д.

, Это, конечно, не является надежным, но большинство поисковых роботов крупнейшими компаниями предоставляет отличный агент пользователя.

РЕДАКТИРОВАНИЕ: Принятие Вас не хочет ограничивать доступ ботов, но просто не считать его визит в Вашем statistc.

0
ответ дан 30 November 2019 в 11:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: