PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (1): [1]

> Найдено сообщений: 5
abra2014 Отправлено: 23 Января, 2015 - 16:52:55 • Тема: CasperJS не хо открыть страницу • Форум: Работа с сетью

Ответов: 0
Просмотров: 844
есть линк
http://popmyads[dot]com/go/3848/3172[dot][dot][dot]c3BlcGl0by5jb20v

если заходить с оперы или хрома, идёт куча редиректов
захожу каспером на эту же страницу и финальный урл выводит следующий
http://popmyads[dot]com/

хотя другие подобные ссылки проходит до конца, там тоже много сложных редиректов

сам скрипт

CODE (javascript):
скопировать код в буфер обмена
  1. var casper = require('casper').create();
  2.  
  3. casper.start('http://popmyads.com/go/3848/3172/aoapgfxobllppri/aHR0cCUzQS8vd3d3LnBlbGljdWxhc3BlcGl0by5jb20v', function() {
  4.         this.echo(this.getCurrentUrl());
  5. });
  6.  
  7.          
  8.  
  9. casper.run();


может кто знает в чём проблема и как её решить?
abra2014 Отправлено: 21 Января, 2015 - 14:45:44 • Тема: Цепь редиректов и затыки с курлом. • Форум: Работа с сетью

Ответов: 6
Просмотров: 2335
вот запускаю скрипт через фантом дж с

CODE (javascript):
скопировать код в буфер обмена
  1. console.log('Loading a web page');
  2. var page = require('webpage').create();
  3. var url = 'http://popmyads.com/go/3848/3172/aoapgfxobllppri/aHR0cCUzQS8vd3d3LnBlbGljdWxhc3BlcGl0by5jb20v';
  4. page.open(url, function (status) {
  5.        
  6.     page.injectJs('D://phantomjs-1.9.8-windows/jquery-1.8.3.min');
  7.     var title = page.evaluate(
  8.       function () {
  9.  
  10.          return document.URL;
  11.      }
  12.  
  13. );  
  14.    console.log( "- current url is " + title );
  15.     phantom.exit();
  16.  
  17. });
  18.  
  19.  
  20.  


скрипт выплюнул ссылку. Я её вставляю в браузер, и дальше идут редиректы.
Кто может помочь?
abra2014 Отправлено: 19 Января, 2015 - 13:00:56 • Тема: Цепь редиректов и затыки с курлом. • Форум: Работа с сетью

Ответов: 6
Просмотров: 2335
Мелкий пишет:
abra2014 пишет:
по идее курл должен ходить до конца

Он прошёл до конца.
Всё. 200 получили в ответ, редиректы кончились.

да, 200 получили, но внутри исходника вшит код на яваскрипте, локейшн.хреф или экшн в форму прописан, и далее автосабмит формы.
Вылавливать регулярными не всегда получается.
abra2014 Отправлено: 19 Января, 2015 - 12:29:48 • Тема: Цепь редиректов и затыки с курлом. • Форум: Работа с сетью

Ответов: 6
Просмотров: 2335
у кого какие мысли?
abra2014 Отправлено: 28 Октября, 2014 - 21:10:44 • Тема: Цепь редиректов и затыки с курлом. • Форум: Работа с сетью

Ответов: 6
Просмотров: 2335
Всем привет.
Задача состоит в следующем.
Есть ссылки
http://popmyads[dot]com/serve/3848/3[dot][dot][dot]c3BlcGl0by5jb20v
http://clkmon[dot]com/adServe/sa?cid[dot][dot][dot]scarga%20directa

Значит, дело в том, что каждый раз заходя по одной из ссылок происходит цепочка редиректов, но каждый раз по разному, и в конечном итоге заходя с одного и того же айпи, и с одного и того же юзерагента получаем разные урлы.
Пробовал отлавливать заголовки курлом, установил хождение по редиректам, но до конечного редиректа не ходит, потому что иногда редирект есть в локейшене, а иногда в яваскрипе прописал черех хреф.локейшн.
И ещё, я так и не понял как отловить конечные урлы запуская несколько раз в терминале.
Заходя через браузер меня редиректит на разные урлы, а через терминал бросает на один и тот же. Получается что с куками что-то связано.
Кто что скажет по этому поводу, может приходилось сталкиваться с этим??
Вот собственно код
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. //подключаю файл с юзерагентами, рендомом подставляю каждый раз при заходе
  3. include("random-user-agent.php");
  4. $ch = curl_init();
  5. curl_setopt($ch, CURLOPT_URL, 'http://clkmon.com/adServe/sa?cid=PORPOP&pid=&q=estrenos%2C%20peliculas%2C%20series%2C%20musica%2C%20software%2C%20ebooks%2C%20descarga%20directa');
  6. curl_setopt($ch, CURLOPT_USERAGENT,random_user_agent());
  7. curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1);
  8. curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
  9. //curl_setopt($ch, CURLOPT_PROXY, "186.109.91.3:8080");
  10. curl_setopt($ch, CURLOPT_HEADER, true);
  11. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  12. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
  13. curl_setopt($ch, CURLOPT_NOBODY, false);
  14. curl_setopt ($ch, CURLOPT_COOKIEJAR, 'cooka.txt');
  15. $page = curl_exec($ch);
  16. if(!$page)
  17. {
  18.  echo curl_error($ch);
  19. }
  20. else
  21. {
  22.  echo $page;
  23. }
  24. preg_match_all('#url=(.+)#i', $page, $matches);
  25. var_dump($matches);
  26. ?>
:

Получается что мне как бы должно вываливать всю цепь редиректов, но оно идёт до первого и получается что один заголовок присылает 302, а второй 200, но у него редирект стоит яваскриптом, я пытался отлавливать его через регулярное выражение, хотя, по идее курл должен ходить до конца. И ещё нужно будет через прокси пробовать, но это уже потом.

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB