Перейти к содержимому

Считать QR-код с картинки

Перетащите фотографию или скриншот и посмотрите, что именно записано в коде, — полную ссылку, пароль от Wi-Fi, контакт, — прежде чем что-либо с этим делать. Ничего не открывается само.

  • Не сохраняется
  • Без очереди и ожидания
  • Без регистрации и водяных знаков

Как это работает

1

Добавьте изображение

Скриншот, фото афиши или меню, сохранённую картинку. Если изображение уже в буфере обмена, просто вставьте его.

2

Посмотрите, что внутри

Ссылка показывается полностью, код Wi-Fi — как сеть и пароль, контакт — по полям. Если на изображении несколько кодов, находятся все.

3

Решайте сами

Скопируйте текст или перейдите по ссылке, если хотите. Ничего не открывается, не набирается и не подключается за вас.

Что декодер сообщает о коде

Декодирование QR-кода — это арифметика, а не распознавание, поэтому вместе с содержимым вы получаете сведения о самом символе, в том числе об уровне коррекции ошибок, с которым код был создан. Мелочь, которая иногда важна: у кода с самым низким уровнем избыточность около семи процентов, и он перестанет читаться при совсем небольшом износе — это стоит знать, если вы собираетесь перепечатать чужой макет, а не создать свой. На одном изображении находится до тридцати двух символов, одинаковые результаты разных проходов объединяются, а всё, что сам декодер помечает как недействительное, отбрасывается, а не показывается вам в виде догадки.

Затем текст интерпретируется, и две проверки — это как раз причина считывать код здесь, а не наводить на него телефон. Веб-адрес, в имени хоста которого смешаны алфавиты или есть метка punycode, отмечается предупреждением — так выглядит домен, написанный с кириллической буквой, неотличимой от латинской, а это невозможно заметить, просто читая ссылку. Обычный незашифрованный адрес отмечается отдельно с советом не вводить на нём пароль или номер карты. Ссылками становятся только адреса http и https; содержимое с любой другой схемой показывается как текст и остаётся текстом.

Кроме ссылок, страница распознаёт данные Wi-Fi, контакты vCard и MeCard, события календаря, почту, телефон и SMS, точку на карте, номер товара и секрет одноразовых паролей — тот, что используется для настройки двухфакторной аутентификации, а это действительно веская причина не привлекать к декодированию сервер. Номер товара, контрольная цифра которого не сходится с остальными, отмечается как, вероятно, неверно прочитанный, а не выдаётся как факт. Код Wi-Fi разбирается по правилам экранирования, заданным форматом, так что пароль с точкой с запятой сохраняется целиком, а открытая сеть вовсе без пароля отмечается особо.

Если нужно другое

Поиск состоит из трёх проходов, и на этом всё. Код, который занимает малую часть большой фотографии, сильно не в фокусе или повреждён сильнее, чем может восстановить коррекция ошибок, не распознается от повторных попыток — лучше переснимите: ближе, ровнее, чтобы код занимал больше кадра. Камеры и сканирования в реальном времени здесь нет, и это единственное, что телефон делает лучше; если код физически перед вами, его прочитает обычное приложение камеры, а эта страница — для скриншота, PDF и фотографии, которую вам прислали.

Для повторяющихся задач — папки билетов, листа этикеток, пачки отсканированных анкет — здесь по одному изображению за раз, а такая работа — это команда. zbarimg из ZBar считывает коды из файлов изображений в цикле оболочки и выводит найденное, а pyzbar для Python делает то же внутри скрипта. Оба бесплатны, оба обработают тысячу файлов без тысячи кликов, и ни один не выполняет проверок, которые делает эта страница, — так что пакетное декодирование остаётся просто декодированием, а оценка подозрительного адреса остаётся за вами.

Частые вопросы

Зачем считывать QR-код здесь, а не просто отсканировать его?

Потому что сканирование телефоном обычно означает сразу действие — ссылка открывается раньше, чем вы увидите, куда она ведёт. Напечатанный QR-код — это указание от незнакомца, а наклейки поверх настоящего кода на паркоматах и в меню стали настолько распространённым мошенничеством, что у него уже есть название. Здесь вы сначала видите полный адрес и предупреждения о некоторых уловках, и ничего не происходит, пока вы сами не решите.

Используется ли камера?

Нет. Здесь распознаётся уже имеющееся у вас изображение — скриншот, фото из галереи, картинка, которую вам прислали. Разрешение на камеру давать не нужно, сканирования в реальном времени нет. Если код перед вами, сначала сфотографируйте его телефоном и перетащите фото сюда.

Моё изображение где-нибудь сохраняется?

Нет. Изображение никогда не сохраняется и никуда не отправляется — здесь это важнее, чем почти где-либо ещё на сайте, потому что в коде может быть пароль от Wi-Fi, платёжный запрос или секрет двухфакторной аутентификации.

Какие коды он распознаёт?

QR-коды всех версий, Micro QR и rMQR, а также другие квадратные форматы: Data Matrix (на электронике и упаковке), Aztec (на железнодорожных и авиабилетах), PDF417 (на водительских удостоверениях и посадочных талонах) и MaxiCode. Для полосатых штрихкодов товаров есть своя страница.

Он пишет, что мой код — это сеть Wi-Fi. Что с этим делать?

Имя сети, пароль и тип защиты показываются отдельными полями, так что вы можете прочитать пароль и ввести его сами. К сети ничего не подключается за вас. Код с открытой сетью без пароля отмечается предупреждением, потому что всё, что вы через неё передаёте, могут прочитать другие люди поблизости.

Ничего не найдено. Почему?

Обычно потому, что код маленький на большом изображении, сильно размыт или частично обрезан. Делается три прохода — по уменьшенному изображению, в полном размере и с очисткой шума камеры, — и код ищется также перевёрнутым и в инвертированных цветах. Если ничего не помогло, почти всегда срабатывает более близкий и чёткий снимок. Код, у которого повреждено или закрыто больше примерно трети, восстановить нельзя.

Можно ли распознать несколько кодов на одном изображении?

Да — лист с кодами или страница с двумя-тремя кодами возвращается списком, где каждый прочитан отдельно.

Полезно знать: Здесь распознаётся изображение, а не видео с камеры в реальном времени. Сильно повреждённый, закрытый или слишком мелкий код прочитать нельзя: коррекция ошибок восстанавливает царапину или логотип в центре, но не недостающую треть. Ничего из содержимого кода не выполняется автоматически, и это сделано намеренно.

Разместите этот инструмент на своём сайте

Бесплатно для любого блога, страницы класса или справочной статьи. Вставьте один фрагмент кода — и посетители смогут пользоваться инструментом прямо на вашей странице.