NameRuBot

Кавычки забыл после content="text/html; Вот и браузер не видит кодировку :slight_smile:

В википедии “it”.

Это не перевод, а именно сопоставление. Ну и естественно испанское слово буду в испанской вике искать :wink:

Так и делаю. Ну вроде по обработаным 13 объектам неоднозначностей нет?

Поставил. Мозилла все равно тупит.

вы что, какая лишняя кавычка? Должно быть
у меня от несогласованных кавычек почти физический дискомфорт.
желательно убрать bom из начала документа (это не по стандарту), а во-вторых, сервер в заголовках HTTP выдаёт Content-Type=text/html; charset=windows-1251, нужно поправить на utf-8.

А нормально, что этот тег не закрыт?
meta http-equiv=“Content-Type” content=“text/html; charset=utf-8”

А какие еще делаются проверки?
Я, когда делал такую работу вручную (список id добыл из planet.osm, а в Википедию ходил ручками), сравнивал также население и координаты. Увы, население может отличаться довольно существенно (до 2 раз), а вот координаты, думаю, до долей градуса должны совпадать. Сомневаюсь, что в радиусе 0.1-0.2 градуса окажутся одноименные города либо города с близким произношением названия.
Думаю, поиск по имени + население (отношение в пределах 0.5-2.0) + координаты в пределах 0.2 градуса можно считать достаточно надежными критериями.
Ну и сам поиск IMHO следует проводить не по всем н/п, а только по тем, у которых уже есть name:en (name:fr/name:de - по выбору) или int_name. Таковых в мире около 62 тыс, так что объем работы вполне подъемен для бота, а разбор лога ошибок глазами - тоже вполне реален.

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

а как быть, если я хочу разместить ссылки и на английскую и на русскую страничку объекта в википедии?

сейчас я юзаю два тега
wikipedia:en=*
wikipedia:ru=*

по вашему способу придется городить что-то типа wikipedia=ru:Екатеринбург;en:Yekaterinburg;fr:Ekaterinburg;it:xxx;ch:xxx

это не кошерно

dedNikifor, ссылку надо давать только на одну википедию

Автоматически только на совпадение osm-name и wiki-name. А дальше в ручную.

А зачем? Я планирую запускать бота на определенную территорию, ограниченную одним государством. Т.е. теоритически возможно конечно, что в одном и том же государстве находятся два города с одинаковыми названиями и разными названиями на русском языке, но я про такие не слышал. Т.е. я хочу сказать, что н.п. Любань к примеру в Ленинградской области и где-нибудь в Челябинской должны одинаково переводиться на другие языки, поэтому мне не обязательно проверять координаты и численность населения, чтобы определить, какая именно это Любань, т.к. мне для перевода на другой язык это роли не играет.

А почему только по ним? Я хотел бы видеть карту полностью на русском языке, а не выборочные н.п.

Постараюсь сделать. Сейчас пока буду делать список исключений, чтоб автоматически убирать фразы типа " (значения)" или " город)".

Конечно некошерно. Именно поэтому рекомендуется иное: задавать только wikipedia=ru:Екатеринбург, а остальное вытягивать при помощи API самой википедии. Тем самым не будет необходимости в OSM следить за актуальностью синхронизации между названиями на разных языках (ссылки в википедии тоже иногда меняются).

Но это играет существенную роль, если таки захотите проставлять ссылку на википедию - т.к. ссылки, очевидно, будут отличаться.
Кроме того, перевод даже одноимённых городов в разных местностях может таки отличаться (в силу исторических, диалектовых и прочих причин).

Sergey Astakhov
на самом деле ссылки на города должны выглядеть так:

ru:Киров (Калужская область)
ru:Киров (Кировская область)

И в самой Википедии статьи о разных городах должны быть разными. Если вдруг города переводятся по-разному - этот конфликт тоже разрешается средствами Википедии.

Зависит от конкретного города. “Москва (Московская область)” или “Москва (Россия)” ведь не пишут, несмотря на наличии населённых пунктов Москва в других местах. Просто убирают неодназначности в ссылках тем или иным способом.

Sergey Astakhov
для таких случаев в статье “Москва” ставится disambig на “Москва (значения)”, откуда идут ссылки на “Москва (река)” и тд.

Я регулярно отслеживаю города в Википедии. Так вот статьи постоянно переименовываются. Ещё не хватало дубляжа Интервики здесь.

P.S. Если кого интересует - могу вывести список статей Википедии по всем городам России.

А это реально?
Сколько примерно населенных пунктов предполагается обработать вручную?

Не согласен.
К тому, что н/п с одинаковым названием могут по-разному переводиться на русский язык есть куча предпосылок. (оффтоп: почему, например, мы пишем “принцесса Диана”, но “певица Дайана Росс”?)
Например, много городов располагаются в т.н. развивающихся, т.е. бывших колониальных странах.
Соответственно, существуют варианты названия:

  • транскрипция с местного наречия на русский,
  • перевод с местного наречия на русский,
  • на языке метрополии - перевод с местного - транскрипция на русский,
  • на языке метрополии - транскрипция с местного - транскрипция с языка метрополии на русский,

    А если учесть, что метрополия могла время от времени меняться и названия - соответственно, что одноименные на местном наречии н/п могли оказаться в колониях разных стран и т.п…

Ну, задачи должны быть посильными, иначе они никогда не будут решены.
Отсутствие достаточно простых и эффективных проверок для отсева большей части вариантов, которые надо разбирать ручками с одной стороны и ничем не ограниченное количество “кандидатов” мне кажется, способно похоронить любую разумную идею.
Кстати, а не лучше ли не обрабатывать весь мир по маленьким кусочкам (на маленьких кусочках может статься, что существенные проблемы вылезут далеко не сразу), а сначала проанализировать ВЕСЬ мир для сбора статистики и проверки предположений по количеству “претендентов”, по количеству совпадений и возможных конфликтов и только после этого уточнять и совершенствовать алгоритм и переходить к реальной правке.

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

Собственно, с последнего поста прошло 2 недели.
Хотелось бы более или менее регулярно получать информацию о том, как продвигается работа. (тем более, что я после создания этой темы прервал работу по ручному проставлению name:ru в городах более 100 тыс. жителей)

Хочется карту соседей на русском, так что я пока осторожно курю в сторону: http://ru.wikipedia.org/wiki/Финско-русская_практическая_транскрипция

Сколько таких городов всего? Запущу завтра, посмотрим. Главное, чтоб на вики-педии не забанили за выкачивание больших объемов…

Я бы поостерегся сам придумывать транслитерацию. Практика показывает, что имена собственные не подчиняются общим правилам, а идут, скорее, от исторической традиции. (пример принцессы Дианы и Дайаны Росс я уже приводил)
Поэтому мне кажется следует вносить в базу ТОЛЬКО те имена, которые нашли подтверждение в независимых источниках, но никак не результаты алгоритмического перевода.
Поэтому, кстати, я и рекомендовал помимо прочего проверять и координаты, т.к. одинаковые наименования на языке оригинала могут по-разному писаться по-русски в зависимости от исторических традиций.

Я анализировал по декабрьской Planet.osm, тогда их было немного более 300 (более 100 т.ж.), после моей правки должно было остаться уже менее 300. Правда, я еще ставил обязательным условием наличие либо name:en либо int_name.

Собственно, прошло еще 3 недели.
Интересует, проект еще дышит или уже почил в бозе?

Прошу прощения. Работой завалило. Пока не стал брать планету. Взял сегодняшнюю Европу с геофабрика. Выбирались точки с тегами:
place=city
population=“>99999”
Поиск по английской википедии.
Отчет: http://navitel.gis-lab.info/logs/NameRuBot-log-2011-04-02-23-30.htm
Результат хороший. Красного, белого и бежевого очень мало :slight_smile: