You are being redirected to the non-JavaScript site - Help!
От: Poseidon СССР  
Дата: 04.03.18 15:56
Оценка:
Вопрос от ламмера ((( Который абсолютно ничего не понимает в вэб-программировании, скриптах и Яве.
использую libcurl библиотеку для общения с сервером, DuckDuckGo в моем случае
сервер высылает страницу с кодом 200 ОК, но! страница какая то странная (сохранил в файле)

и в теле страницы есть сообщение что типа вы перенаправляетесь на не яваскрипт сайт...

Вопросы собственно вот какие — чисто теоретически, как сайт узнал что мне нужна простая HTML версия? И что получается после рендеринга
яваскрипта, код простой html страницы? Я так понимаю что яваскрипт это своеобразное шифрование, после рендеринга которого в броузере появляются
собственно элементы HTML — ссылки, картинки и т.д.?


И практический вопрос — в заголовке ответа от сервера есть что то что может указывать на редирект? или это в коде самой страницы?
Как простой программе вроде моей это понять и обработать? Или придется кодить поддержку для Javascript как в броузерах? Может есть уже готовые
библиотеки?

Вот заголовок ответа:

HTTP/1.1 200 OK
Server: nginx
Date: Sun, 04 Mar 2018 15:27:38 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
X-DuckDuckGo-Results: 1
Strict-Transport-Security: max-age=31536000
X-Frame-Options: SAMEORIGIN
Content-Security-Policy: default-src https: blob: data: 'unsafe-inline' 'unsafe-eval'; frame-ancestors 'self'
X-XSS-Protection: 1;mode=block
X-Content-Type-Options: nosniff
Referrer-Policy: origin
Expect-CT: max-age=0
Expires: Sun, 04 Mar 2018 15:27:39 GMT
Cache-Control: max-age=1
X-DuckDuckGo-Locale: en_US
Content-Encoding: gzip


и собственно само содержимое в файле TXT
http://files.rsdn.org/58654/DuckDuckGo_search.txt
Отредактировано 04.03.2018 16:24 Poseidon . Предыдущая версия .
Re: You are being redirected to the non-JavaScript site - Help!
От: Слава  
Дата: 04.03.18 16:59
Оценка: +1
Здравствуйте, Poseidon, Вы писали:

P>Вопросы собственно вот какие — чисто теоретически, как сайт узнал что мне нужна простая HTML версия?

По юзерагенту
Re[2]: You are being redirected to the non-JavaScript site - Help!
От: Poseidon СССР  
Дата: 04.03.18 18:54
Оценка:
Здравствуйте, Слава, Вы писали:

С>Здравствуйте, Poseidon, Вы писали:


P>>Вопросы собственно вот какие — чисто теоретически, как сайт узнал что мне нужна простая HTML версия?

С>По юзерагенту

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

тем более я не броузер пишу, а прикладную программульку
Re[3]: You are being redirected to the non-JavaScript site - Help!
От: c-smile Канада http://terrainformatica.com
Дата: 05.03.18 17:21
Оценка:
Здравствуйте, Poseidon, Вы писали:

P>Здравствуйте, Слава, Вы писали:


С>>Здравствуйте, Poseidon, Вы писали:


P>>>Вопросы собственно вот какие — чисто теоретически, как сайт узнал что мне нужна простая HTML версия?

С>>По юзерагенту

P>логично. а как вообще можно интерпретитировать эту абракадабру, в смысле яваскрипт, во что то осмысленное?

P>я конечно понимаю что это очень полезная и нужная штука, но парсить это самому с нуля как то лениво очень!

P>тем более я не броузер пишу, а прикладную программульку


Для "интерпретитировать эту абракадабру" нужен interpreter по определению. А interpreter'у нужен runtime. А runtime'у нужна DOM model (API доступа к DOM tree). Т.е. тебе нужен еще и DOM tree.
Всё вместе и есть browser. Т.е. пиши browser. Для своей программульки.

Ну или спроси тов. α
Автор: α
Дата: 02.03.18
он тебе скажет как это всё сделать с помощью RegExp.
Re[4]: You are being redirected to the non-JavaScript site - Help!
От: Рома Мик Россия http://romamik.com
Дата: 06.03.18 09:51
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Т.е. пиши browser. Для своей программульки.

Зачем писать, когда можно использовать уже имеющийся. Можно расширение для браузера написать. Можно что-то готовое использовать, типа selenium. Это всё точно проще чем бразуер написать.
Re[5]: You are being redirected to the non-JavaScript site - Help!
От: c-smile Канада http://terrainformatica.com
Дата: 06.03.18 17:17
Оценка:
Здравствуйте, Рома Мик, Вы писали:

РМ>Здравствуйте, c-smile, Вы писали:


CS>>Т.е. пиши browser. Для своей программульки.

РМ>Зачем писать, когда можно использовать уже имеющийся. Можно расширение для браузера написать. Можно что-то готовое использовать, типа selenium. Это всё точно проще чем бразуер написать.

Или PhnatomJS (уже умер) или headless chrome browser.

Но это как бы уже выходит за определение "программульки", нет?
Re: You are being redirected to the non-JavaScript site - Help!
От: TimurSPB Интернет  
Дата: 06.03.18 17:22
Оценка:
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!
От: GarryIV  
Дата: 31.03.18 01:38
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>>>Т.е. пиши browser. Для своей программульки.

РМ>>Зачем писать, когда можно использовать уже имеющийся. Можно расширение для браузера написать. Можно что-то готовое использовать, типа selenium. Это всё точно проще чем бразуер написать.

CS>Или PhnatomJS (уже умер) или headless chrome browser.


Селениум как раз это все и использует.
WBR, Igor Evgrafov
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.