Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Script для автоматизации работы с браузером (https://javascript.ru/forum/misc/3235-script-dlya-avtomatizacii-raboty-s-brauzerom.html)

ksa791 31.03.2009 12:05

Script для автоматизации работы с браузером
 
Ситуация

Я каждое утро открываю браузер (Opera) и выполняю одни и те же действия в нем:
1)
ввожу логин, пароль
проверяю пришли ли новые сообщения
открываю их если сообщения пришли
копирую через буфер текст сообщений в Excel
2)
открываю окно
копирую все содержимое в Excel через буфер
нажимаю вперед
копирую все содержимое в Excel через буфер
нажимаю вперед
и т.д. нужное количество раз

Почитав статьи по javascript на этом сайте я понял что все эти действия можно автоматизировать.
В javascript я полный ноль. Но в других языках (С, Lisp) программировать умею.

Статьи: "Первые шаги", "DOM и DHTML", "События" я прочел, но работу нужно выполнить максимально быстро и мне некогда изучать операторы, которые мне понадобятся, а я не знаю какие мне нужны.

ПРОСЬБА
Подскажите статьи и набор операторов которые мне нужно изучить для написания scripta

Программы запоминающие последовательность действий не предлагать, я сам хочу написать такую программу и ни от кого не зависеть.

Если я в чем-то не прав, не стесняйтесь)))

Заранее огромное спасибо за уделенное внимание.

x-yuri 01.04.2009 04:38

Цитата:

но работу нужно выполнить максимально быстро
Цитата:

Программы запоминающие последовательность действий не предлагать, я сам хочу написать такую программу и ни от кого не зависеть
противоречиво

непонятно, что тебе надо: скрипт выполняющий, определенные действия или скрипт, запоминающий последовательность действий

Gvozd 01.04.2009 08:50

ну, во-первых поспешиш, людей расмешиш))))
ваши критерии скорости, никак не согласуются с вашим желанием написать самим
во-вторых, то что вы хотите реализуемо не на браузерном JavaScript, а на JSrcript, под управлением WSH
это разные вещи(разные языки, разные интепретаторы, хотя суть похожа)

прикладываю вам справку, в которой есть наиболее главное именно по вашей теме.смотрите раздел WSH
есть примеры на JScript и VBScript
вот пример скрипта, умеющего нажимать кнопки:
var WshShell = WScript.CreateObject("WScript.Shell");
var temp=0;
while(true)
	{
	WScript.Sleep( Math.round(Math.random ()*80) );
	temp = Math.round(Math.random ()*2) ;
	switch(temp)
		{
		case 0:
		WshShell.SendKeys("{NUMLOCK}");
		break;
		case 1:
		WshShell.SendKeys("{SCROLLLOCK}");
		break;
		case 2:
		WshShell.SendKeys("{CAPSLOCK}");
		break;
		}
	}

сохраните этот код в файл с расширением js, и запусти просто двойным щелчком(никаких браузеров)
Если все правильно, то у вас начнут моргать диоды на клавиатуре.
отключить это безобразие можно убив в памяти процесс wscript.exe
PS полагаю этой справки вам будет вполне достаточно, хотя минимальный синтаксии и опереаторы JS все равно надо знать. но, я полагаю, вы дадьше сориентируетесь

ksa791 01.04.2009 16:01

x-yuri, нужен скрипт выполняющий последовательность действий.

В фразе "Максимально быстро" подразумевается изучение (пока) только тех разделов, которые касаются моей задачи не тратя времени на другое
Распишу по порядку, как я себе представляю работу программы
Уже открыт браузер (Opera)
Открыта нужная мне страница
Запускаю программу
1) Программа копирует в буфер все содержимое страницы (набор операторов копирующих информацию в буфер???)
2) Программа вставляет содержимое буфера в файл (формат годится txt, формат xls был бы идеальный) (набор операторов работающих с файлами???)
2) Программа в этом же окне открывает страницу с другим (известным) адресом (адреса отличаются только номером страницы) (набор операторов открывающих окно с известным адресом???)
пункты 1,2 и 3 повторить нужное количество раз (операторы цикла)

Если нужно изучить дополнительный набор операторов подскажите какие.

Я подумал такие действия удобнее выполнить в javascript, если реализуемо не на браузерном JavaScript, а на JSrcript, под управлением WSH, подскажите, где почитать?

Буду благодарен за любой вариант помощи:
целиком предоставленный скрипт (обкатаю сам),
несколько кусков скрипта по отдельным шагам программы,
набор операторов, которые нужно изучить, думаю расставить в нужном порядке смогу и сам
просто статьи или литература которую нужно почитать (но опять же, читать всю книгу ради одного раздела, не хотелось бы)

Gvozd, спасибо за скрипт (бомба, буду изучать скрипты на основе WSH).

Gvozd 01.04.2009 16:23

Цитата:

Сообщение от ksa791
Я подумал такие действия удобнее выполнить в javascript, если реализуемо не на браузерном JavaScript, а на JSrcript, под управлением WSH, подскажите, где почитать?

в принципе все есть во вложенном файле в моем предыдущем посте.
грубо говоря, если все необходимые вам действия можно совершить "вслепую" с помощью клавиатуры, то вам достаточно модифицировать скрипт, в моем примере(управляющие структуры, я думаю вы сами сделаете, а как работать с клавиатурой там частично указано).
более полная справка в приложении+гугл.
также, если вы читаете на английском, то сайте мелкософта ищите WSH.это исключительно мелкомягкая фича

x-yuri 01.04.2009 18:42

меня тут смущает только запись страницы в файл (html -> txt, xls): если при этом нужна только часть страницы, то удобнее пользоваться каким-нибудь парсером. В wsh я не знаю как такого добиться, а в php такая штука точно есть. Но если что-то несложное, то можно и в wsh, думаю

p.s. судя по описанию, считаю лучше делать с помощью какого-нибудь консольного скрипта, а не в браузере

ksa791 02.04.2009 14:30

Спасибо за помощь, буду пробовать.


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