Выполнение js в perl из терминала

Discussion in 'PHP' started by brunchik, 14 Jan 2011.

  1. brunchik

    brunchik Banned

    Joined:
    7 Jan 2011
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    Написал скрипт который автоматически скачивает фаил с определеных ссылок.Другими словами накрутчик.Ну мне что то не хочется что бы он работал из под браузера(а он имено там и работает).Есть же программы для накрутки скачиваний.Так вних же не броузер встроен.Хочу что бы я perl скрипт запускал из под терминала и он работал отуда.Другими словами есть кусочек js который не хочет выполняться из под терминала.Возможно ли это реализовать?
     
  2. miako

    miako Member

    Joined:
    20 Jan 2010
    Messages:
    154
    Likes Received:
    13
    Reputations:
    5
    А что, обязательно perl?
     
  3. brunchik

    brunchik Banned

    Joined:
    7 Jan 2011
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    Ну да ведь я его знаю.Можно такое вообще провернуть?
     
  4. LStr1ke

    LStr1ke Elder - Старейшина

    Joined:
    29 Jul 2009
    Messages:
    801
    Likes Received:
    145
    Reputations:
    73
    Что этот кусочек делает? быть может заменить его функционал на perl?
     
  5. brunchik

    brunchik Banned

    Joined:
    7 Jan 2011
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    Code:
    <form action="localhost/file/444/" method="post" onsubmit="show_begin_popup(0);pageTracker._trackPageview('/gateway2download/ru');return true;"><div>  					<input type="submit" class="button2" value="Открыть"/> 					<input type="hidden" name="gateway_result" value="1"/> 				</div></form>
    Этот код запускает js файлик а тот в свое время генерирует ссылку
     
  6. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    brunchik _trackPageview - вроде ж функция от гуглоаналитика, и для работы с самим сайтом не является столь уж необходимой. Смело можете забить на нее

    А вот show_begin_popup(0) стоит посмотреть, но если судить из названия - то она просто убирает какой нить див со страницы, и опять-таки не является необходимой
     
    _________________________
  7. brunchik

    brunchik Banned

    Joined:
    7 Jan 2011
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    Смотрел там отдельный js с этим кодом есть, но мало толку
     
  8. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Вы видимо не понимаете, что и как происходит. Не знаете перла и тихо мирно тема сведется к фразе "ой напишите мне накрутчик, чтобы я его мог запустить в фоне/на хостинге"

    Простой вопрос - как спарсить в перле форму и сделать POST запрос?
     
    _________________________
  9. brunchik

    brunchik Banned

    Joined:
    7 Jan 2011
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    Да нет перл я знаю так себе, а вот js нет.Я знаю как на перл работать с js через броузер, а как через консль нет.Та же самая библиотера chi не работает.Я его уже написал, но осталось только получить ссылку из консоли.Так то он у меня работает из под броузера, но user-agent нужно переделывать.И постоянно открывать новую ссылку в новом окне а потом ее закрывать опять.
    Мне писать ничего не нужно, просто нужно объяснить: Можно ли нажать кнопку для получения ссылки через консоль.
     
  10. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    brunchik все же я задал конкретный вопрос, как спарсить форму и сделать POST запрос - это практически единственное, что вас отделяет от положительного результата в вашей затее. Если вы не можете ответить на него - то все дальнейшее обсуждение будет переливанием пустого в порожнее или же к "скопируйте вот этот код, и запустите его так-то"
     
    _________________________
  11. brunchik

    brunchik Banned

    Joined:
    7 Jan 2011
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    С этого нужно было и начинать.Будем парсить форму.Post запрос я делал,но ничего не вышло.Я так понял что мне никто и никогда не поможет.Зачем тогда существуют подобные форумы?Я в обше не могу передать это все POST запросом.Если в маил мог так зайти в почту то тут нет.И конкретно что именно парсить?Из этого чтоли?
    Code:
    				<form action="/ru/files/4306798/" method="post" onsubmit="show_begin_popup(0);pageTracker._trackPageview('/gateway2download/ru');return true;"><div> 					<input type="submit" class="button2" value="Бесплатно"/> 					<input type="hidden" name="gateway_result" value="1"/> 				</div></form>
    что бы получить это?
    /ru/files/4306798/
    show_begin_popup(0);pageTracker._trackPageview('/gateway2download/ru');return true;
    gateway_result
    Или что?Поконкретней можно?
     
    #11 brunchik, 15 Jan 2011
    Last edited: 15 Jan 2011
  12. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    brunchik делать ВМЕСТО вас и помогать - это настолько разные вещи, что вы должны это сами понимать. Можете пройти в моей подписи по ссылке "Как правильно задавать вопросы" - если вы вынесете для себя какие-то выводы, то поймете, что вы делаете не так. Например, "описывайте конечную цель, а не отдельные шаги". Потому что "нажать кнопку" - это неправильный подход

    И вы меня неправильно поняли снова. Я больше хочу узнать уровень ваших знаний, и гораздо меньше подсказываю вам в этом топике. Если вы можете отправлять запросы к веб-серверу и парсить страницы (не обязательно формы) - то сможете получить ссылку для скачивания файла. В личку вы меня спросили полный вопрос и я вам ответил, что вам нужно сделать
     
    _________________________
  13. brunchik

    brunchik Banned

    Joined:
    7 Jan 2011
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    Я умею получать ссылки.Мне нужно программно нажать кнопку что бы пошло время и появилась ссылка в html которую я потом смогу спарсить.Кнопку нужно нажать через консоль.Ссылка появится после нажатия кнопки 'бесплатно'.А теперь внимание вопрос.Как мне вполнить js в perl из под терминала что бы я в дальнейшем смог спарсить страничку.
     
  14. dpe_x

    dpe_x Elder - Старейшина

    Joined:
    8 Sep 2010
    Messages:
    155
    Likes Received:
    35
    Reputations:
    14
    молча
    сделай вручную..
    посмотри что показывает снифер ..
     
  15. brunchik

    brunchik Banned

    Joined:
    7 Jan 2011
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    Ну че меня тут все за дурака держут?Смотрел я снифером.Раз молча ну покажи как ты так умеешь делать.Все все умеют а помочь не могут.А как решу пробелму так сразу увижу сообщение ты покажи как делать что бы все знали.
     
    #15 brunchik, 15 Jan 2011
    Last edited: 15 Jan 2011
  16. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    brunchik внимание ответ - вам НЕ надо выполнять JS в perl, чтобы получить ссылку для скачивания.

    Теперь ультиматум - если вы не предоставите минимально рабочий код делающий POST запрос к любому сайту на Perl - я закрываю тему и вам дорога в раздел "О работе". Уточняю, чтобы не было недопонимания - если в следующем сообщении после этого вы не напишете кода, а начнете мне внушать "да я умею/да я могу/да что вы вообще все такие нехорошие" - тема будет закрыта
     
    _________________________
  17. brunchik

    brunchik Banned

    Joined:
    7 Jan 2011
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    Могу еще и GET предоставить и PUT b HEAD
     
  18. LStr1ke

    LStr1ke Elder - Старейшина

    Joined:
    29 Jul 2009
    Messages:
    801
    Likes Received:
    145
    Reputations:
    73
    Короче. Не знаю в какой степени я понял тему. Вот облегченный вариант, надеюсь похожая схема.
    Представь ситуацию
    Есть сайт, на нем кнопка по нажатию на которую появляется сгенерированая ссылка.
    Как это работает:
    При нажатии на кнопку - вызывается js сценарий, который обращается к скрипту php, тот генерирует ссылку (в зависимости от сессии или прочих условий). js принимает значение от php и выкладывает как результат в какой-нибудь div.

    Естественно если тупо спарсить страницу мы получим примерно следующиее
    PHP:
    <script src='super_script.js' type='text/javascript'</script>
    <input type='button' onclick='loadLink()' value=' получить ссылку ' />
    <div id='put_link_there'> </div>
    тут как видно никакой ссылки нету.
    Значит мы смотрим исходники js в поиске функции loadLink(), смотрим какие параметры и к какому скрипту обращается. (Или просто нажать на кнопку и посмотреть пакет в сниффере).
    В perl'e же нам нужно будет повторить этот пакет. Т.е. обратиться к тому скрипту php с нужными параметрами и получить эту ссылку.

    Я надеюсь ситуация похожая.
     
  19. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Ему нужен накрутчик депозита
     
    _________________________
  20. brunchik

    brunchik Banned

    Joined:
    7 Jan 2011
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    Зачем депосита можно и другого какого нибудь.Да и к тому же я слышал что он проверяет на накрутку после конца таймера да и после скачки еще.