История user-agent в браузерах. Не заигрывайтесь в свои сильные стороны

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

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

Середина первого тысячелетия до нашей эры была такой же бурной, как и наши дни относительно споров о том, как жить, как сохранить нравственность и как построить лучшее общество. В отличие от западных философов, которые известны нам лучше, китайские мыслители задавались не столь крупными вопросами. Их философию можно назвать высоко прагматичной, основанной на вопросах, которые казались малозначительными, например: «Как проходит ваша повседневная жизнь?» Эти мыслители подчёркивали, что великие перемены случаются лишь тогда, когда мы начинаем с приземлённого и выполнимого . Их учения показывают, что многие наши самые фундаментальные допущения о том, как мы должны жить, на самом деле вводят нас в заблуждения.

Итак, какими же идеями мы дорожим, и какие альтернативы вместо них предложили бы китайские философы?

Прекратите искать себя
Наши мыслители скептически относились к существованию истинного «Я». Особенно к тому, которое вы можете обнаружить, заглянув в себя.
Существует такой популярный постулат: важно заглянуть в себя, чтобы понять и осознать свою истинную сущность. Наши мыслители скептически отнеслись бы к теории о существовании истинного «Я». Они понимали, что мы многогранны и развиваемся по направлению к внешнему миру, а не вовнутрь. Человеческая индивидуальность формируется через взаимодействие с другими людьми, через реакцию на вещи и события, через род занятий. Вы ведь не ведёте себя одним и тем же образом с матерью, коллегой, стоматологом и с близким другом. Каждый из нас - сложное создание, которое постоянно сталкивается с другими сложными существами. Каждая встреча обрисовывает различные стороны. Мы состоим из моделей поведения и эмоциональных привычек, которые сформировались с течением времени. А это значит, что в нас заложены многочисленные возможности того, кем мы можем стать.

Быть неаутентичным
Мы есть не только то, что мы о себе думаем.
Как только мы обнаруживаем свою сущность, мы должны принять себя и быть верными самому себе. Но великий китайский мыслитель Конфуций, который родился в шестом веке до нашей эры, размышлял иначе. Он бы сказал, что проблема с аутентичностью в том, что это не освобождение, как мы полагаем. Как думаете, кто это «истинное Я», которое вы в себе обнаруживаете? Это ваш образ в конкретный момент времени. Если вы останетесь ему верны, позволите этому образу стать вашим ориентиром, то он сдержит и ограничит ваш рост, который наступит, когда вы признаете, что постоянно меняетесь.
Мы преуспеваем, когда признаём свою сложность и учимся с ней работать через самосовершенствование. Рост начинается, например, когда приходит понимание, что вы не забияка только потому, что склонны думать о себе как о человеке вспыльчивом, или застенчивы, потому что считаете себя интровертом. Большинство ярлыков - это модели поведения, которые у нас сформировались и поддаются разрушению. Мы не просто то, что мы о себе думаем. Мы всегда можем становиться лучше.

Притворяйтесь (совершайте ритуалы)
Когда вы улыбаетесь, словно не сердитесь, или прикусываете язык, чтобы не наброситься, вы притворяетесь - ведёте себя взрослее.
Противоположная сторона нашего почитания аутентичности - это ритуалистические способы поведения, которые называют «притворством». Не лучше ли позволить выступить «настоящему Я»?
Но Конфуций учит, что определённые ритуалы - когда мы ведём себя «как будто» - помогают человеку трансформироваться, поскольку ломают модели поведения, в которые он угодил. Когда вы улыбаетесь, как будто не злитесь, или прикусываете язык, чтобы не наброситься, вы притворяетесь. Эти «как будто» создают крошечный разрыв от реальности, поэтому они так ценны. Мы действуем «как будто» мы другие и наши чувства становятся более зрелыми. Поступая так, мы превращаемся в кого-то более доброго и щедрого, вместо того, чтобы выражать свои истинные, но разрушительные чувства. Мы делаем это снова и снова, такие действия становятся ритуалами, позволяющими поведению брать верх над чувствами, а не наоборот. С течением времени мы изменяемся, становимся лучше.

Увидьте непостоянство мира
Изменения и окольные пути - случайные разговоры, впечатления, общение - питают жизнь.
Часто рассматривая себя как стабильную личность, человек видит и мир постоянным. Конечно, мы понимаем, что жизнь может меняться, но в то же время склонны исходить из предположения, что в целом мир предсказуем и нужно определить как нам в него вписаться. Если мы считаем себя сильными в математике, то продолжаем следовать этому академическому пути; если мы считаем себя непредсказуемыми, то ищем спутника жизни, который присоединится к нашим приключениям
Мэн-цзы, представитель конфуцианской традиции, живший в конце 4 века до нашей эры, видел мир фрагментарным и непостоянным. Он бы посоветовал работать с изменениями и окольными путями - использовать случайные разговоры, впечатления и общение для расширения жизни. Подход Мэн-цзы означает не строить планы на жизнь, а настраивать траекторию в движении.

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

Будьте слабыми
Замечайте в мире взаимосвязанность вместо разделённости и различности, тогда вы сможете гармонировать с другими.
Ещё одна распространённая гипотеза: побеждает сильнейший. Нам твердят, что нужно быть сильными и уверенными в том, чего хотим. Но Лао-цзы в трактате Дао Дэ Цзин выступает за силу слабости над очевидной силой. Часто люди думают, что это означает необходимость в гармонизации с природой. Некоторые студенты, впервые столкнувшись с учениями Лао-цзы, отправляются на прогулки в лес, чтобы слиться с величием природного мира. Но пассивность это не совсем то, что он подразумевал. Философ говорил, что мы должны замечать, как всё в мире взаимосвязано, а не разделено и различно. Это понимание помогает гармонировать с другими.
Сонастройка позволяет осуществлять разного рода влияние. Не применяя открытую силу, вы видите, как искусно изменить ситуацию, так что люди и не заметят в вас доминанта.

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

Отбросить осознанность
Принципы осознанности в широком понимании противоположны её истинному назначению.
В последнее время мы многое слышим о том, как важна осознанность. Она должна помочь человеку в достижении мира и спокойствия при быстром темпе жизни. Её даже преподносят как инструмент для повышения производительности и эффективности в бизнес-школах, корпорациях и в вооружённых силах.
Широко принятые принципы осознанности - в том числе, заглянуть в себя и принять обнаруженное с беспристрастием и несуждением - это противоположность того, чем осознанность должна была стать. Буддизм, в конце концов, придерживается учения о несуществовании индивидуального «Я». Конфуцианское самосовершенствование отличается. Речь идёт о взаимодействии с миром и взращивании себя через каждое столкновение и взаимодействие. Оно исповедует активный, а не пассивный способ самовоспитания, чтобы стать лучшей версией самого себя.

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

Допустим, нам нужно получить данные с сайта, сбор которых вручную нецелесообразен или невозможен из-за объёма. В таком случае мы можем автоматизировать процесс, используя инструменты, описанные далее.

Библиотека requests

Python-библиотека для выполнения запросов к серверу и обработки ответов. Фундамент скрипта для парсинга и наше основное оружие. Пользуясь данной библиотекой мы получаем содержимое страницы в виде html для дальнейшего парсинга.

import requests response = requests . get ("https://ya.ru" ) # get-запрос print (response . text ) # вывод содержимого страницы payload = { "key1" : "value1" , "key2" : "value2" } response = requests . get ("http://httpbin.org/get" , params = payload ) # запрос с параметрами headers = { "user-agent" : "my-app/0.0.1" } response = requests . get (url , headers = headers ) # запрос с определенными html заголовками

API

Application programming interface - программный интерфейс приложения, предоставляемый владельцем веб-приложения для других разработчиков. Отсутствие API, способного удовлетворить наши нужды - первое в чем стоит убедиться прежде чем бросаться анализировать исходный код страницы и писать для нее парсер. Множество популярных сайтов имеет собственное api и документацию, которая объясняет как им пользоваться. Мы можем использовать api таким образом - формируем http-запрос согласно документации, и получаем ответ при помощи requests.

BS4

Beautifulsoup4 - это библиотека для парсинга html и xml документов. Позволяет получить доступ напрямую к содержимому любых тегов в html.

from bs4 import BeautifulSoup soup = BeautifulSoup (raw_html , "html.parser" ) print (soup . find ("p" , class_ = "some-class" ) . text ) # вывод содержимого тэга "p" классом "some-class"

Selenium Web Driver

Данные на сайте могут генерироваться динамически при помощи javascript. В таком случае спарсить эти данные силами requests+bs4 не удастся. Дело в том, что bs4 парсит исходный код страницы, не исполняя js. Для исполнения js кода и получения страницы, идентичной той, которую мы видим в браузере, можно использовать selenium web driver - это набор драйверов для различных браузеров, снабжающийся библиотеками для работы с этими драйверами.

А что делать, если там авторизация?

session = requests.Session() data = {"login_username":"login", "login_password":"password"} url = "http://site.com/login.php" response = session.post(url, data=data)

А что, если сайт банит за много запросов?

  • Установить задержку между запросами:

response = requests.get(url, timeout=(10, 0.01)) # таймаут на соединения, таймаут на чтение (в секундах)

  • Притвориться браузером, используя selenium web driver или передав содержимое заголовка user-agent, формируя запрос:

user_agent = ("Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:50.0) " "Gecko/20100101 Firefox/50.0") request = requests.get(url, headers={"User-Agent":user_agent})

  • Использовать прокси:

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

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

Середина первого тысячелетия до нашей эры была такой же бурной, как и наши дни относительно споров о том, как жить, как сохранить нравственность и как построить лучшее общество. В отличие от западных философов, которые известны нам лучше, китайские мыслители задавались не столь крупными вопросами. Их философию можно назвать высоко прагматичной, основанной на вопросах, которые казались малозначительными, например: «Как проходит ваша повседневная жизнь?» Эти мыслители подчёркивали, что великие перемены случаются лишь тогда, когда мы начинаем с приземлённого и выполнимого. Их учения показывают, что многие наши самые фундаментальные допущения о том, как мы должны жить, на самом деле вводят нас в заблуждения.

Итак, какими же идеями мы дорожим, и какие альтернативы вместо них предложили бы китайские философы?

Наши мыслители скептически относились к существованию истинного «Я». Особенно к тому, которое вы можете обнаружить, заглянув в себя.

Существует такой популярный постулат: важно заглянуть в себя, чтобы понять и осознать свою истинную сущность. Наши мыслители скептически отнеслись бы к теории о существовании истинного «Я». Они понимали, что мы многогранны и развиваемся по направлению к внешнему миру, а не вовнутрь. Человеческая индивидуальность формируется через взаимодействие с другими людьми, через реакцию на вещи и события, через род занятий. Вы ведь не ведёте себя одним и тем же образом с матерью, коллегой, стоматологом и с близким другом. Каждый из нас – сложное создание, которое постоянно сталкивается с другими сложными существами. Каждая встреча обрисовывает различные стороны. Мы состоим из моделей поведения и эмоциональных привычек, которые сформировались с течением времени. А это значит, что в нас заложены многочисленные возможности того, кем мы можем стать.

Быть неаутентичным

Мы есть не только то, что мы о себе думаем.

Как только мы обнаруживаем свою сущность, мы должны принять себя и быть верными самому себе. Но великий китайский мыслитель Конфуций, который родился в шестом веке до нашей эры, размышлял иначе. Он бы сказал, что проблема с аутентичностью в том, что это не освобождение, как мы полагаем. Как думаете, кто это «истинное Я», которое вы в себе обнаруживаете? Это ваш образ в конкретный момент времени. Если вы останетесь ему верны, позволите этому образу стать вашим ориентиром, то он сдержит и ограничит ваш рост, который наступит, когда вы признаете, что постоянно меняетесь.

Мы преуспеваем, когда признаём свою сложность и учимся с ней работать через самосовершенствование. Рост начинается, например, когда приходит понимание, что вы не забияка только потому, что склонны думать о себе как о человеке вспыльчивом, или застенчивы, потому что считаете себя интровертом. Большинство ярлыков – это модели поведения, которые у нас сформировались и поддаются разрушению. Мы не просто то, что мы о себе думаем. Мы всегда можем становиться лучшей версией самого себя.

Притворяйтесь (совершайте ритуалы)

Когда вы улыбаетесь, словно не сердитесь, или прикусываете язык, чтобы не наброситься, вы притворяетесь – ведёте себя взрослее.

Противоположная сторона нашего почитания аутентичности – это ритуалистические способы поведения, которые называют «притворством». Не лучше ли позволить выступить «настоящему Я»?

Но Конфуций учит, что определённые ритуалы – когда мы ведём себя «как будто» – помогают человеку трансформироваться, поскольку ломают модели поведения, в которые он угодил. Когда вы улыбаетесь, как будто не злитесь, или прикусываете язык, чтобы не наброситься, вы притворяетесь. Эти «как будто» создают крошечный разрыв от реальности, поэтому они так ценны. Мы действуем «как будто» мы другие и наши чувства становятся более зрелыми. Поступая так, мы превращаемся в кого-то более доброго и щедрого, вместо того, чтобы выражать свои истинные, но разрушительные чувства. Мы делаем это снова и снова, такие действия становятся ритуалами, позволяющими поведению брать верх над чувствами, а не наоборот. С течением времени мы изменяемся, становимся лучше.

Увидьте непостоянство мира

Любые окольные пути – случайные разговоры, впечатления, общение – питают жизнь.

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

Мэн-цзы, представитель конфуцианской традиции, живший в конце 4 века до нашей эры, видел мир фрагментарным и непостоянным. Он бы посоветовал работать с изменениями окольными путями – использовать случайные разговоры, впечатления и общение для расширения жизни. Подход Мэн-цзы означает не строить планы на жизнь, а настраивать траекторию в движении.

Прекратите принимать решения

Когда вы обдумываете большие перемены, легче принять решение, если сначала испытать новые впечатления.

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

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

Будьте слабыми

Замечайте в мире взаимосвязанность вместо разделённости и различности, тогда вы сможете гармонировать с другими.

Ещё одна распространённая гипотеза: побеждает сильнейший. Нам твердят, что нужно быть сильными и уверенными в том, чего хотим. Но Лао-цзы в трактате Дао Дэ Цзин выступает за силу слабости над очевидной силой. Часто люди думают, что это означает необходимость в гармонизации с природой. Некоторые студенты, впервые столкнувшись с учениями Лао-цзы, отправляются на прогулки в лес, чтобы слиться с величием природного мира. Но пассивность это не совсем то, что он подразумевал. Философ говорил, что мы должны замечать, как всё в мире взаимосвязано, а не разделено и различно. Это понимание помогает гармонировать с другими.

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

Не заигрывайтесь в свои сильные стороны

Проживите свою жизнь как серию прорывов, потому что это изменяет вас с течением времени.

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

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

Отбросить осознанность

Принципы осознанности в широком понимании противоположны её истинному назначению.

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

Широко принятые принципы осознанности – в том числе, заглянуть в себя и принять обнаруженное с беспристрастием и несуждением – это противоположность того, чем осознанность должна была стать. Буддизм, в конце концов, придерживается учения о несуществовании индивидуального «Я». Конфуцианское самосовершенствование отличается. Речь идёт о взаимодействии с миром и взращивании себя через каждое столкновение и взаимодействие. Оно исповедует активный, а не пассивный способ самовоспитания, чтобы стать лучшей версией самого себя.

Переосмыслите традиционность и современность

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

В начале был NCSA Mosaic, и Mosaic называл себя NCSA_Mosaic/2.0 (Windows 3.1), и Mosaic показывал картинки с текстом, и счастье пришло.

И потом пришел новый веб-браузер, известный как «Mozilla», что сокращением было для «Mosaic Killer»(«Убийца Мозаики»), но Mosaic не понравилось это, так что имя было изменено на Netscape и Netscape называл себя Mozilla/1.0 (Win3.1), и не было больше счастья. И Netscape поддерживал фреймы и фреймы стали популярны в народе, но Mosaic не поддерживал фреймы, и поэтому пришло время вынюхивания user agent-ов, и для Mozilla вебмастеры посылали фреймы, но для других браузеров не посылали.

И Netscape сказал, давайте посмеемся над Microsoft и ссылался на Windows как на «плохо отлаженные драйверы устройств», и Microsoft был зол. И сделал Microsoft свой собственный веб-браузер, который они назвали Internet Explorer, надеясь, что это будет «убийца Netscape». И Internet Explorer поддерживал фреймы, но не был Mozilla, поэтому и не получал фреймы. А Microsoft рос нетерпеливо и не желал ждать веб-мастеров, пока они изучат IE и начнут слать ему фреймы, и поэтому Internet Explorer заявил, что он «Mozilla-совместим» и стал олицетворением Netscape, и называл себя Mozilla/1.22 (compatible; MSIE 2.0; Windows 95), и Internet Explorer получил фреймы, и все в Microsoft были счастливы, но вебмастера были сбиты с толку.

И Microsoft продавал IE с Windows, и сделал его лучше, чем Netscape, и первая война браузеров бушевала на земле. И вот был убит Netscape, и было радости много в стане Microsoft. Но Netscape был возрожден как Mozilla и Mozilla Gecko создан, и назвал он себя Mozilla/5.0 (compatible; Windows NT 5.0; EN-US; RV: 1.1) Gecko/20020826, и Gecko было движком рендеринга, и Gecko была хорош. И Mozilla стал Firefox, и назвал себя Mozilla/5.0 (compatible; Windows NT 5.1; SV-SE; RV: 1.7.5) Gecko/20041108 Firefox/1.0 и Firefox был очень хорош. И Gecko начал размножаться, и другие браузеры родились, которые использовали его код, и они назвали себя Mozilla/5.0 (compatible; PPC Mac OS X Mach-O; EN-US; RV: 1.7.2) Gecko/20040825 Camino / 0.8.1 и Mozilla/5.0 (compatible; Windows NT 5.1; DE; RV: 1.8.1.8) Gecko/20071008 SeaMonkey/1.0, каждый притворялся Mozilla, и все из них были созданы на основе Gecko.

И Gecko был хорош, а IE нет, и вынюхивание было возрождено, и Gecko получал хороший код, а другие браузеры нет. И последователи Linux были очень опечалены, потому что они создали Konqueror, движок которого был KHTML, который, они считали, был хорош, как Gecko, но он не был Gecko, и поэтому не получал хороших страниц, и так Konquerer начал притворяться чтобы быть «как Gecko», чтобы получать хорошие страницы, и называл себя Mozilla/5.0 (compatible; Konqueror/3.2; FreeBSD) (KHTML, like Gecko) и путаница усилилась.

Тогда пришла Opera и сказала: «Конечно, мы должны позволить нашим пользователям решать, за какой браузер мы должны выдавать себя» и Opera создала пункт меню, и Opera называла себя Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en) Opera 9.51, или Mozilla/5.0 (Windows NT 6.0; U; EN; RV: 1.8.1) Gecko/20061208 Firefox/2.0.0 Opera 9.51, или Opera/9.51 (Windows NT 5.1; EN) в зависимости от варианта, выбранного пользователем.

И Apple создали Safari, и использовал он KHTML, но много функций было добавлено, и раздвоили проект, и назвали его WebKit, но хотел он получать страницы, написанные для KHTML, и Safari и так называл себя Mozilla/5.0 (Macintosh; U; PPC Mac OS X; de-de) AppleWebKit/85.7 (KHTML, like Gecko) Safari/85.5, и стало еще хуже.

А Microsoft сильно боялся Firefox, и Internet Explorer вернулся, и назвал себя Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0), и он рендерил хороший код, но только тогда, когда веб-мастера приказывали ему сделать это.

А потом создали Google Chrome и Chrome использовал WebKit, и был он как Safari, и хотел страниц, созданных для Safari, и поэтому сделал вид, что он и есть Safari. И таким образом Chrome использовал WebKit, и притворился, что Safari, и WebKit притворился, что он KHTML, и KHTML притворился Gecko, а все браузеры притворялись Mozilla, и Chrome называл себя Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13 и user-agent стал полным беспорядком, рядом не лежавшим с удобством, и каждый притворялся другим, и путаница изобиловала. И хаос воцарился на земле.

Статьи по теме: