Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Загружаем себе чужой сайт, есть способы? (https://javascript.ru/forum/misc/2541-zagruzhaem-sebe-chuzhojj-sajjt-est-sposoby.html)

sshz 12.01.2009 19:01

Загружаем себе чужой сайт, есть способы?
 
Суть проблемы, есть удаленный сайт, например vasya.ru с которого нужно получить текст
Варианты решения:
1 Сделать запрос на php
Не получилось. Vasya.ru устанавливает куки при помощи js и когда видит что js не отпработал, вместо сайта пишет "включите javascript".
Я так понимаю обойти такую проверку, если она грамотно сделана - почти нереально?

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

2. Ajax запрос c моего сайта на vasya.ru.
Не получилось. Ajax запросы можно делать только на страницы своего сайта. Обойти я так понимаю вобще нереально?

3. Загрузить vasya.ru в iframe и получить из него содержимое при помощи js
Не получилось. Js получает содержимое только если в iframe страница своего же сайта, тоже похоже защита от XSS.

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


И офтопик. Если так просто определить скрипт это или человек зашел на сайт(просто проверив работает ли у него javascript), почему везде ставят капчи?

Kolyaj 12.01.2009 19:07

Цитата:

Сообщение от sshz
загрузить пользователю моего сайта, сайт vasya.ru

Ссылку на сайт ему дай, он сам загрузит.

ZoNT 12.01.2009 19:08

проверить работает ли джаваскрипт можно, но что потом? Потом надо серверу сказать, что он работает, так? Так вот посмотри, что шлёт джаваскрипт обратно серверу после проверки работоспособности и отсылай то же самое средствами ПХП.

sshz 12.01.2009 19:18

Цитата:

Сообщение от ZoNT (Сообщение 10609)
проверить работает ли джаваскрипт можно, но что потом? Потом надо серверу сказать, что он работает, так? Так вот посмотри, что шлёт джаваскрипт обратно серверу после проверки работоспособности и отсылай то же самое средствами ПХП.

Он шлет какой-то сгенерированный куки вида 60767B17-9386-42ae-BBA9-D1BCA9E8837B, есть предложения?

sshz 12.01.2009 19:55

Цитата:

Сообщение от Kolyaj (Сообщение 10608)
Ссылку на сайт ему дай, он сам загрузит.

Это вариант я знаю, не подходит.

Gvozd 12.01.2009 20:39

есть либы на ПХП эмылирующие работу браузера на разных уровнях.
например Snoopy позволяет подделывать большинство заголовков+ частично эмулирует кукисы.проект местами недоработанный.
видел еще один проект на ПХП, позволяющий эмулировать работу JS.но вроде он корявый, но для простейших(малосвязанных с DOM-ом, ВОМ-ом, и прочими некросбраузерными или емкими вещами) задач, думаю сойдет.
поищите, дкмаю найдете быстро.
еще как вариант примениить мозг.то естьвыяснить, как скрипт генерит тот кук, что вы написали....разобравшись в коде естсно.или кого-то нанять для этого
средствами же только JS ваша задача не решаема.

sshz 12.01.2009 20:50

Цитата:

Сообщение от Gvozd (Сообщение 10617)
есть либы на ПХП эмылирующие работу браузера на разных уровнях.
например Snoopy позволяет подделывать большинство заголовков+ частично эмулирует кукисы.проект местами недоработанный.
видел еще один проект на ПХП, позволяющий эмулировать работу JS.но вроде он корявый, но для простейших(малосвязанных с DOM-ом, ВОМ-ом, и прочими некросбраузерными или емкими вещами) задач, думаю сойдет.
поищите, дкмаю найдете быстро.
еще как вариант примениить мозг.то естьвыяснить, как скрипт генерит тот кук, что вы написали....разобравшись в коде естсно.или кого-то нанять для этого
средствами же только JS ваша задача не решаема.

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

Kolyaj 12.01.2009 21:07

sshz,
если куки ставит php, то их можно просто принять, если ставит JavaScript, то можно посмотреть скрипт. В чем проблема-то?

sshz 12.01.2009 21:40

Цитата:

Сообщение от Kolyaj (Сообщение 10619)
sshz,
если куки ставит php, то их можно просто принять, если ставит JavaScript, то можно посмотреть скрипт. В чем проблема-то?

php может, например, генерировать javascript который уже ставит куки, в php можно нагенерировать какую угожно сложную куку и посмотреть как она генерируется будет негде.

В моем случа видимо так и есть, потому что в html только
<script type="text/javascript">
if (document.cookie && document.cookie != "") {
document.cookie = "60767B17-9386-42ae-BBA9-D1BCA9E8837B=Checked; expires=Mon, 12-Jan-2009 18:41:04 GMT; path=/";
location.reload(true);
}
else
document.write("Этот сайт требует поддержки технологии Cookies.");
</script>

alekciy 12.01.2009 21:44

cURL вам в помоещь, товарисчи ;)

Кроме того надеюсь стартопик помнит/знает, что HTTP протокол является текстовым. Он элементарно снифиться и генерируется. В данном случае придется просто потратить время на понятие алгоритма работы сайта.


Часовой пояс GMT +3, время: 02:26.