Вопрос от ламмера ((( Который абсолютно ничего не понимает в вэб-программировании, скриптах и Яве.
использую libcurl библиотеку для общения с сервером, DuckDuckGo в моем случае
сервер высылает страницу с кодом 200 ОК, но! страница какая то странная (сохранил в файле)
и в теле страницы есть сообщение что типа вы перенаправляетесь на не яваскрипт сайт...
Вопросы собственно вот какие — чисто теоретически, как сайт узнал что мне нужна простая HTML версия? И что получается после рендеринга
яваскрипта, код простой html страницы? Я так понимаю что яваскрипт это своеобразное шифрование, после рендеринга которого в броузере появляются
собственно элементы HTML — ссылки, картинки и т.д.?
И практический вопрос — в заголовке ответа от сервера есть что то что может указывать на редирект? или это в коде самой страницы?
Как простой программе вроде моей это понять и обработать? Или придется кодить поддержку для Javascript как в броузерах? Может есть уже готовые
библиотеки?
Здравствуйте, Poseidon, Вы писали:
P>Вопросы собственно вот какие — чисто теоретически, как сайт узнал что мне нужна простая HTML версия?
По юзерагенту
Re[2]: You are being redirected to the non-JavaScript site - Help!
Здравствуйте, Слава, Вы писали:
С>Здравствуйте, Poseidon, Вы писали:
P>>Вопросы собственно вот какие — чисто теоретически, как сайт узнал что мне нужна простая HTML версия? С>По юзерагенту
логично. а как вообще можно интерпретитировать эту абракадабру, в смысле яваскрипт, во что то осмысленное?
я конечно понимаю что это очень полезная и нужная штука, но парсить это самому с нуля как то лениво очень!
тем более я не броузер пишу, а прикладную программульку
Re[3]: You are being redirected to the non-JavaScript site - Help!
Здравствуйте, Poseidon, Вы писали:
P>Здравствуйте, Слава, Вы писали:
С>>Здравствуйте, Poseidon, Вы писали:
P>>>Вопросы собственно вот какие — чисто теоретически, как сайт узнал что мне нужна простая HTML версия? С>>По юзерагенту
P>логично. а как вообще можно интерпретитировать эту абракадабру, в смысле яваскрипт, во что то осмысленное? P>я конечно понимаю что это очень полезная и нужная штука, но парсить это самому с нуля как то лениво очень!
P>тем более я не броузер пишу, а прикладную программульку
Для "интерпретитировать эту абракадабру" нужен interpreter по определению. А interpreter'у нужен runtime. А runtime'у нужна DOM model (API доступа к DOM tree). Т.е. тебе нужен еще и DOM tree.
Всё вместе и есть browser. Т.е. пиши browser. Для своей программульки.
Здравствуйте, c-smile, Вы писали:
CS>Т.е. пиши browser. Для своей программульки.
Зачем писать, когда можно использовать уже имеющийся. Можно расширение для браузера написать. Можно что-то готовое использовать, типа selenium. Это всё точно проще чем бразуер написать.
Re[5]: You are being redirected to the non-JavaScript site - Help!
Здравствуйте, Рома Мик, Вы писали:
РМ>Здравствуйте, c-smile, Вы писали:
CS>>Т.е. пиши browser. Для своей программульки. РМ>Зачем писать, когда можно использовать уже имеющийся. Можно расширение для браузера написать. Можно что-то готовое использовать, типа selenium. Это всё точно проще чем бразуер написать.
P>Как простой программе вроде моей это понять и обработать? Или придется кодить поддержку для Javascript как в броузерах? Может есть уже готовые P>библиотеки? https://duckduckgo.com/api — у них вроде как есть API
Make flame.politics Great Again!
Re[6]: You are being redirected to the non-JavaScript site - Help!
Здравствуйте, c-smile, Вы писали:
CS>>>Т.е. пиши browser. Для своей программульки. РМ>>Зачем писать, когда можно использовать уже имеющийся. Можно расширение для браузера написать. Можно что-то готовое использовать, типа selenium. Это всё точно проще чем бразуер написать.
CS>Или PhnatomJS (уже умер) или headless chrome browser.