| imho.ws |
![]() |
|
|
|
# 1 |
|
Guest
Сообщения: n/a
|
определения языка сайта
Привет всем!
Профи, у меня вот такой вопрос. Как можно, например с пмощью PERL или PHP, определить язык сайта, а так же его кодировку, если его нет в мета-тэге? Возможно ли такое или нет? Например, нужно найти, открывая сокеты перлом по заданным адресам, к слову, сайты только на украинском или грузинском. А, если сайт на русском языке, то его кодировку... реально это или нет? Заранее всем спасибо! |
|
|
# 2 |
|
Advanced Member
Регистрация: 23.08.2003
Сообщения: 442
![]() ![]() |
делается это довольно легко ( алгоритмически )
береш словарь ( сколько языков / кодировок -- столько и словарей ) а потом выделяеш слово и ищеш его в словаре ( нашел -- знаеш язык / кодировку ( операцию повторить для увеличения вероятности ) ) как бы все |
|
|
|
|
# 4 |
|
МОД-Оператор ЭВМ
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Язык сайта определить можно, но далеко не точно и далеко не всегда. Теоретически можно проанализировать ответ сервера на предмет заголовка Content-Type. Если там windows-1251, то с большой вероятностью сайт русский. А если там UTF-8? Будем смотреть на порядковые номера символов, чтобы определить из какого они поддиапазона? А есть хитрые сайты, которые реагируют на Accept-Language, и подсталяют разные кодировки, а порой и разные языковые версии сайта. Неговоря уже о случайностях когда русские веб-мастера делают англ. сайты выводя всё в привычной им windows-1251...
Вообщем затея не из простых. Разумней зайти и посмотреть воочую какой там язык. А если речь идет о регистрации в каталоге (рейтинге, топе), то проше добавить select в форму добавления сайта. |
|
|
|
|
# 5 |
|
Member
Регистрация: 12.11.2004
Сообщения: 205
![]() ![]() |
Если сделать высоковероятное предположение что в google сделано наиболее лучшим возможным способом, то получится что в большинстве случаев язык определить можно, но чуществуют и исключения (встречались напр. немецкие сайты которые гугл признал английскими)
|
|
|
|
|
# 11 |
|
Junior Member
Регистрация: 30.03.2003
Адрес: СПб
Сообщения: 162
![]() ![]() ![]() |
А что мешает использовать Google для выяснения языка сайта?
Смотрим как формируется запрос на странице расширенного поиска (по сути нужно вынуть параметр языковых ограничений и site:www.xxx.yy), формируем таой запрос скриптом, запрашиваем Google. Если язык не угадан, имеем зелёную подпись на верху страницы. Вот только грузинского и украинского я там не нашёл Не очень быстро, зато не надо проверять по словарям, искать хитрый алгоритмический подход.
__________________
640Kbytes should be enough for everything! (c) Bill Gates, 1981. Все "спасибо" в репутацию
|
|
|
|
|
# 13 | |
|
Guest
Сообщения: n/a
|
посмотреть заголовки сервера или на крайний случай регулярным выражением посмотреть мета теги страницы, обычно все из вставляют
Цитата:
|
|
|
|
# 15 | |
|
Guest
Сообщения: n/a
|
Цитата:
Причем Oracle для этого очень неплохая база, хотя DB2 мне кажется подошла бы больше. Хотя все зависит от конкретной реализации. На яндексе стоит несколько (точную цифру не помню, но явно больше 10) серверов с Ораклом и при каждом посещении центральная машина сама решает какой сервер будет выдавать ответ. |
|
|
|
# 16 | |
|
МОД-Оператор ЭВМ
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Цитата:
- Яндекс не использует Oracle. |
|
|
|