Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Скрипт для плагина к Download Master (https://javascript.ru/forum/misc/2470-skript-dlya-plagina-k-download-master.html)

ponand 30.12.2008 14:18

Скрипт для плагина к Download Master
 
На этой странице форума в 3 посте описан скрипт для плагина Download Master Script Host но он у меня не хочет работать :(
не подскажите почему он не работает?
Если быть точным он даже не открывает IE :(

Андрей Параничев 30.12.2008 15:58

Причем тут IE? Если это не браузерный JavaScript вовсе. Это JScript, запускаемый в Windows Script Host.

Вы конечно можете открыть браузер из JScript, это будет выглядеть так:
var IEObject = new ActiveXObject("InternetExplorer.Application");
IEObject.Visible = true;
IEObject.Navigate("http://www.javascript.ru/");

ponand 30.12.2008 16:16

A вчем разница?
Вродебы оба пишутся в текстовом редакторе и сохраняются в формате
*.js

ponand 30.12.2008 16:33

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

function EventRaised(eType, eData)
{ if (eType == 'PluginInit' && eData == 'reload')
{ 
for (i = 0; i < 10; i++)
{
var IE = new ActiveXObject ("InternetExplorer.Application");
IE.Navigate("http://aдpec.caйтa.com/index.php?page=" + i);
while (IE.ReadyState != 4);
var links = IE.Document.links;
for (j = 0; j < links.length; j++)
{ 
var href = links.item(j).href.toString();
if (href.indexOf('http://aдpec.caйтa.com/zip/') == 0)
{
var res = DM.DoAction('AddingURL', '<url>' +href + '</url> <hidden>1</hidden>');
} } 
IE.Quit();
IE = null;
} } }

Андрей Параничев 30.12.2008 16:43

ponand,
А как вы запускаете его? Читали ли вы из комментариев:
Цитата:

ВНИМАНИЕ!!! Скрипт не начинает работу автоматически при старте DM. Для начала его работы нужно остановить скрипт в плагине и нажать кнопку Reload. Мне так было нужно. Если вас это не страивает, используйте документацию к плагину и измените это условие:
if (eType == 'PluginInit' && eData == 'reload')

ponand 30.12.2008 16:56

Пробывал и так и вместо reload ставил auto
даже страницы для пробы закешировал через хенди кеш
может быть проблема с IE?

Андрей Параничев 30.12.2008 17:08

ponand,
А как вы узнаете, что он не работает? Мониторите процесс iexplorer.exe?

Ведь при создании окна IE через COM - оно будет невидимым. Добавьте в скрипт строку:
IE.Visible = true;

Если хотите увидеть окно браузера.

ponand 30.12.2008 17:30

Если для вас не трудно можете переделать скрипт на любой сайт для проберки ото я могу вставить не так как надо :(
чтобы загрузил хотябы 3-4 страницы и выбрал ссылки на файлы может я еще и в счетчиках не те данные выставляю и ссылки не правильно вставляю :(

Андрей Параничев 30.12.2008 18:28

ponand,
Тогда сформулируйте задачу четче. Какой сайт вы парсите. Какого вида ссылки нужно скачивать.

ponand 30.12.2008 19:20

Ссылка на первую страницу выгледит так http://dimonvideo.ru/smart/uploader/3/17/dateD/0 следующая страница http://dimonvideo.ru/smart/uploader/3/17/dateD/10
тоесть шаг будет + 10
у меня в профиле настроена загружать по 40 ответов и шаг будет + 40
ссылка на скачку http://file.dimonvideo.ru/uploader/temy-symbian-8.1/Имя файла

Андрей Параничев 30.12.2008 21:00

Попробуйте так:
function EventRaised(eType, eData)
{
   if (eType == 'PluginInit' && eData == 'reload')
   {
      // 10 страниц:
      for (var i = 0; i < 10; i++)
      {
         var page = i * 40; // Шаг по странице
         var IE = new ActiveXObject("InternetExplorer.Application");

         IE.Navigate("http://dimonvideo.ru/smart/uploader/3/17/dateD/" + i);

         while (IE.ReadyState != 4);
         
         var links = IE.Document.links;

         for (j = 0; j < links.length; j++)
         {
            var href = links.item(j).href.toString();
            
            if (href.indexOf('http://file.dimonvideo.ru/uploader/temy-symbian-8.1/') == 0)
            {
               var res = DM.DoAction('AddingURL', '<url>' + href + '</url> <hidden>1</hidden>');
            }
         }
         
         IE.Quit();
         IE = null;
      }
   }
}

ponand 31.12.2008 14:12

Таже проблема не открывает IE :(
В управлении скриптами
скрипт работает
В диспечере задач нет процеса IEXPLORE.exe :(

ponand 31.12.2008 15:50

Нашол и устранил свою ошибку, IE открылся :)
но счетчик работает не коректно изменение происходит на +1
строка var page = i * 40 ; почемуто не работает :(

Андрей Параничев 31.12.2008 20:53

ponand,
Я ошибся, замените строчку на:
IE.Navigate("http://dimonvideo.ru/smart/uploader/3/17/dateD/" + page);

ponand 31.12.2008 22:43

Заменил начала бегать по страничкам :)
но почемуто перестала их проверять на наличие ссылок? :(
и еще можноли задать 2 варианта ссылок на загрузку?

ponand 31.12.2008 23:01

Извеняюсь все работает просто не заметил что на следующих страницах ссылки на другой сервер :)
С новым годом !!!

ponand 01.01.2009 19:19

А можна как нибудь обработать страницы на странице ?

Андрей Параничев 01.01.2009 19:29

ponand,
Что значит обработать страницы на странице?

ponand 01.01.2009 19:38

Ну примерно так на примере приведущих ссылок:
1.Открываем страницу http://dimonvideo.ru/smart/uploader/3/17/dateD/0 на ней 40 страниц http://dimonvideo.ru/smart/uploader/номер файла#coments вод их и надо открыть и проверить на наличие нужных ссылок

ponand 04.01.2009 21:32

А не подскажите как из этого скрипта сделать простой генератор ссылок?
Вчера хотел 200 страниц форума скачать а переделать так и не получилось :( то ссылка без значения счетчика добавляется :( то значение счетчика добавляется :( а вместе почемуто не как :(

Андрей Параничев 05.01.2009 21:41

ponand,
Зачем вам скрипт, ведь для этого существует специальный софт?

ponand 05.01.2009 22:12

Да все дела в USB модеме от билайна та еще гадасть :(
в автоматическом режиме могу использовать только ДМ плюс плагин для перезагрузки в случае если активная закачка имеет нулевую скорость но соединение не разорвано :( поэтому и пытаюсь расширить возможности ДМ :)
скрипт для страниц вродебы получился:
function EventRaised(eType, eData)
{
if (eType == 'PluginInit' && eData == 'reload')
{
// 10 страниц:
for (var i = 0; i < 10; i++)
{
var page = i * 40; // Шаг по странице
var href = new String("http://dimonvideo.ru/smart/uploader/3/17/dateD/")+page;
var res = DM.DoAction('AddingURL', '<url>' + href + '</url> <hidden>1</hidden>');
}
}
}
сейчас пытаюсь добится обработку страниц на странице но както не очень выходит :(


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