Декодиране на URL кодове: %D0%B6 отново става ж

Вместо ж в текста стои %D0%B6, а вместо интервал %20? Това е URL кодиране, наричано още процентно кодиране. Поставете текста по-горе: Mojibuster веднага превръща кодовете в истински букви, без качване на сървър.

Работи с текст и с тези файлове:

  • CSV
  • TXT
  • JSON
  • XML
  • SRT
  • VTT
  • SMI
  • TSV
  • MD
  • HTML
  • SQL
  • LOG

Например експорти от Excel и счетоводни програми, архиви на бази данни, субтитри или код на сайтове.

Поправяне

  1. Пуснете файл или поставете текст
  2. Поправката е автоматична
  3. Копирайте или изтеглете
или просто пуснете файл тук

Как работи URL кодирането

В адресите на сайтове са разрешени само малко символи: латински букви, цифри и няколко знака. Всичко останало се кодира. В UTF-8 буквата ж се състои от байтовете D0 и B6, затова се получава %D0%B6. Интервалът става %20, а във форми – +.

Така изглежда URL текстът и така отново се чете.

Кодирано

%D0%91%D0%B0%D0%BD%D0%B8%D1%86%D0%B0 %D0%B2 %D0%A1%D0%BE%D1%84%D0%B8%D1%8F

Декодирано

Баница в София

Най-честите URL кодове

  • %D0%B6 = ж, %D0%96 = Ж, %D1%89 = щ, %D0%A9 = Щ
  • %D1%8A = ъ, %D1%8E = ю, %D1%8F = я, %D1%8C = ь
  • %E2%82%AC = €, %E2%80%99 = ’, %E2%80%93 = –
  • %20 = интервал, %2F = /, %3F = ?, %26 = &, %25 = %

Българският текст се познава по началото на кодовете: почти всяка кирилска буква са два байта, %D0… или %D1…. Старите системи кодират буквите с един байт от Windows-1251: %D1%EE%F4%E8%FF вместо %D0%A1%D0%BE%D1%84%D0%B8%D1%8F. Mojibuster разпознава и такива кодове и връща София.

Откъде идва текстът с кодове

  • Копирани връзки: браузърът показва bg.wikipedia.org/wiki/София, но в клипборда често попада %D0%A1%D0%BE%D1%84%D0%B8%D1%8F.
  • Форми и етикети: заявките за търсене и UTM етикетите се пазят в сървърни логове и анализи в кодиран вид, например ?q=%D0%B1%D0%B0%D0%BD%D0%B8%D1%86%D0%B0.
  • Експорти и API: някои услуги за бюлетини, уебхукове и API пазят стойностите кодирани; тогава в CSV файла вместо имена стоят кодове.
  • Имена на файлове: свален файл се казва %D0%A4%D0%B0%D0%BA%D1%82%D1%83%D1%80%D0%B0.pdf, ако сървърът не е декодирал името.

Кодове и странни символи едновременно

Понякога текстът е повреден два пъти: %D0%A0%C2%B6 са кодирани странни символи Р¶, тоест ж, която първо е прочетена погрешно, а после кодирана. Mojibuster първо декодира кодовете, а след това поправя кодирането Windows-1251. Накрая отново излиза ж.

Опцията Преобразувай и кодове на тази страница вече е включена. Тя превръща и HTML кодове (ж), кодове от писма (=D0=B6) и екранирани последователности от програми (\u0436). Други грешки с букви: какво е mojibake.

Декодиране сами: Excel, JavaScript, Python и PHP

  • Excel: има само функция за кодиране (ENCODEURL в английската версия), но няма за декодиране. Най-лесно е да копирате колоната, да я поставите тук и да върнете резултата. Вижте и странни символи в Excel.
  • JavaScript: decodeURIComponent('%D0%A1%D0%BE%D1%84%D0%B8%D1%8F') дава София.
  • Python: urllib.parse.unquote('%D0%A1%D0%BE%D1%84%D0%B8%D1%8F'), а за данни от форми, където + е интервал, unquote_plus.
  • PHP: rawurldecode() или urldecode() за данни от форми.

Често задавани въпроси

Какво означава %D0%B6?

Това е ж в URL кодиране: двата UTF-8 байта D0 и B6, пред всеки от които има %. По същия начин %D1%8F е я, а %D1%89 е щ.

Какво означава %20?

Интервал. Във форми често вместо него стои +. Mojibuster оставя + както е: в обикновен текст това може да е истински плюс.

Качват ли се връзките ми на сървър?

Не. Преобразуването се извършва изцяло във вашия браузър. Връзки с токени, имейл адреси и други лични данни не напускат устройството ви.

Защо 100% не се променя?

Mojibuster преобразува само последователности, от които излиза истински символ. 100%, 50 % или самотно %20 в обикновен текст остават както са.

Други ръководства