2009-04-26 3 views
3

Я пытаюсь добраться до страницы прямо с Bash по телефону http://www.ocwconsortium.org/. Страница появляется, когда вы пишете математику в поле в верхнем правом углу. Я тестировалКак я могу выполнить javascript в Bash?

открытого http://www.ocwconsortium.org/#mathematics

, но это приводит к главной странице. Это, безусловно, часть javascript. Как я могу получить результаты прямо от Bash на первой странице?

[Разъяснение]

Давайте рассмотрим пример. У меня есть следующие строки для поисковой системы Math в .bashrc:

alias mathundergradsearch='/Users/user/bin/mathundergraduate' 

вещи в отдельном файле:

#!/bin/sh                                          

q=$1 
w=$2 
e=$3 
r=$4 
t=$5 

open "http://www.google.com/cse?cx=007883453237583604479%3A1qd7hky6khe&ie=UTF-8&q=$q+$w+$e+$r+$t&hl=en" 

Теперь, я хочу что-то похожее на пример. Разница в том, что на другом сайте есть javascript или что-то, что не позволяет мне видеть параметры. Как я могу узнать, где указать параметры поиска, поскольку я не вижу подробностей?

+0

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

+1

Просьба уточнить ваш вопрос. Какие «результаты» вы ищете? Список курсов?Ссылки на курсы? И, получив результаты от «bash», я предполагаю, что вы хотите, чтобы вы набирали команду в командной строке и отображали ли она «результаты»? –

+0

Van Gale: Ваше предложение более чем идеально. Было бы здорово увидеть «список курсов» и «ссылки на курсы», рядом в CLI. Для начала, я рад, если я даже открою страницу для меня. Затем ваш вариант становится более ощутимым. Я планировал что-то вроде вашей идеи, но я постарался задать вопрос конкретным. Как я могу увидеть результаты поиска некоторых курсов? –

ответ

3
open "http://www.ocwconsortium.org/index.php?q=mathematics&option=com_coursefinder&uss=1&l=&s=&Itemid=166&b.x=0&b.y=0&b=search" 

Вам нужны цитаты, потому что URL-адрес содержит символы, которые оболочка считает специальными.

+0

Очень круто! Как вы узнали такие параметры, как «com_coursefinder» и «166» в Itemid? –

+0

+1 для фантастического фрагмента. –

+0

Я ищу математику в строке поиска, а затем скопировал URL-адрес, какой браузер вы используете? –

0

Вам нужно будет разобрать ответ, найти URL-адрес, который открывается через JavaScript, а затем open.

3

Links web browser более или менее работает от командной строки (например, lynx) и поддерживает базовый javascript.

Несмотря на то, что заголовок сообщения звучит вообще, ваш вопрос очень конкретный. Мне непонятно, чего вы пытаетесь достичь в конце. Очевидно, что вы можете получить доступ к сайтам, которые сильно зависят от javascript (иначе вы не сможете опубликовать свой вопрос здесь), поэтому я уверен, что вы можете открыть указанный сайт в обычном браузере.

Если вы просто хотите выполнить javascript из командной строки (как следует из названия), легко запустить bash через cygwin. Вы просто вызываете cscript.exe и предоставляете имя сценария .js того, что вы хотите выполнить.

+0

Меня интересует. Вы можете видеть конкретные параметры для каждого сайта, такие как параметры в ответе Самира Талвара? –

+0

+1 для идеи использовать ссылки. –

1

Я ничего не получил обрабатывается JavaScript - это просто взял меня

http://www.ocwconsortium.org/index.php?q=mathematics&option=com_coursefinder&uss=1&l=&s=&Itemid=166&b.x=0&b.y=0&b=search 

Замена mathematics (сразу после q=) должен работать. Вы можете удалить эту строку запроса, но я попробовал пару вещей, и она не играла хорошо.

Не забудьте закодировать запрос для URL-адресов.

+0

Как вы могли видеть параметры? Когда я выполняю поиск, я получаю только «http://www.ocwconsortium.org/#key_word» –

+0

URL-адрес в строке местоположения изменился на это, но затем страница была перенаправлена ​​на указанный выше URL-адрес. Я не уверен, что отличается от конфигурации моего браузера и вашего - я использую Firefox, и у меня включен JavaScript. –

0

Проверьте это: http://www.phantomjs.org/.

PhantomJS это инструмент CLI, который запускает настоящий полнофункциональный браузер без Chrome.