WebSite-Watcher 2014 (14.2) © 2014 Aignesberger Software GmbH Данное руководство содержит разделы файла справки WebSite-Watcher. 1 WebSite-Watcher 2014 Оглавление СПРАВКА ПО WEBSITE-WATCHER ....................................................................................7 Добро пожаловать в WebSite-Watcher ...................................................................................... 7 Краткий обзор ................................................................................................................................ 7 Главное окно .................................................................................................................................... 7 Главное меню .................................................................................................................................. 8 Панели инструментов ..................................................................................................................... 9 Символы в списке закладок ......................................................................................................... 10 Изменения боковой панели .......................................................................................................... 10 Что можно проверять .................................................................................................................... 11 Полезные горячие клавиши ......................................................................................................... 12 Добавление новых закладок .................................................................................................... 12 Использование Мастера ............................................................................................................... 12 Добавление закладок вручную .................................................................................................... 13 Добавление закладок из браузера .............................................................................................. 13 Импорт закладок ........................................................................................................................... 14 Импорт URL из текстового файла ............................................................................................... 14 Импорт из Excel / CSV................................................................................................................... 14 Проверка закладок ...................................................................................................................... 18 Проверка страничек вручную ....................................................................................................... 18 Проверка страничек автоматически (с Автопроверкой) ............................................................ 19 Проверка отключенных закладок ................................................................................................. 19 Сообщения о состоянии и ошибках ............................................................................................. 19 Исключение закладок из проверки .............................................................................................. 21 Открытие изменённых закладок .............................................................................................. 21 Как показывается изменение закладки ....................................................................................... 21 Как открыть (изменённые) закладки ............................................................................................ 22 Встроенный браузер с вкладками ............................................................................................... 22 Фильтр: Игнорируемые / Отслеживаемые для определённых участков страницы..... 23 Что такое настройки фильтра (краткий обзор) ........................................................................... 23 Автофильтр .................................................................................................................................... 24 Мастер фильтра ............................................................................................................................ 25 Создание вручную фильтра Игнорируемые/Отслеживаемые .................................................. 28 Специальный фильтр ................................................................................................................... 30 Зависимость настроек от типа страницы .............................................................................. 31 RSS / Atom каналы ........................................................................................................................ 31 Форумы, основанные на таблицах .............................................................................................. 31 PDF-файлы .................................................................................................................................... 32 Word / Excel файлы ....................................................................................................................... 33 FTP-файлы и каталоги .................................................................................................................. 34 Изображения.................................................................................................................................. 34 Двоичные файлы ........................................................................................................................... 34 Локальные файлы и папки ........................................................................................................... 34 Проверка по снимку экрана (скриншоту) ..................................................................................... 35 Страницы, защищённые паролем ............................................................................................ 35 Аутентификация сервера ............................................................................................................. 35 Базовая web-авторизация / Макрокоманды проверки ............................................................... 36 Защищённые паролем FTP-файлы ............................................................................................. 38 Подсветка изменений ................................................................................................................. 38 Методы подсветки ......................................................................................................................... 38 Подсветка измененных изображений на странице .................................................................... 39 Группы новостей ......................................................................................................................... 40 Группы новостей............................................................................................................................ 40 Сервер ............................................................................................................................................ 40 Добавление группы новостей....................................................................................................... 40 Темы ............................................................................................................................................... 41 © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 2 Ответы на статью .......................................................................................................................... 41 Отчёт / Экспорт ............................................................................................................................ 41 Краткий обзор / Шаблоны ............................................................................................................. 41 Поля данных для закладок ........................................................................................................... 42 Поля данных для папки ................................................................................................................ 44 Общие поля данных/опции ........................................................................................................... 44 Пример: Простой список URL в формате HTML......................................................................... 45 Пример: Экспорт в формат CSV .................................................................................................. 46 Пример: Экспорт в файл закладок Opera ................................................................................... 46 Подстановочные знаки и регулярные выражения .............................................................. 46 Краткий обзор ................................................................................................................................ 46 Подстановочные знаки ................................................................................................................. 46 Регулярные выражения ................................................................................................................ 47 Работа с разными файлами закладок..................................................................................... 49 Где хранятся закладки .................................................................................................................. 49 Перемещение файла закладок в другое место .......................................................................... 50 Экспорт/Импорт закладок между файлами закладок ................................................................ 50 Синхронизация файлов закладок ................................................................................................ 50 Передача всего между двумя компьютерами............................................................................. 51 Ошибки базы данных .................................................................................................................... 51 Дополнительные инструменты и возможности ................................................................... 52 Расширенный поиск ...................................................................................................................... 52 Резервное копирование / Восстановление ................................................................................. 52 МиниБраузер ................................................................................................................................. 53 Менеджер загрузки ........................................................................................................................ 53 Командная строка.......................................................................................................................... 54 Переменные даты ......................................................................................................................... 54 Импорт конфигурации программы ............................................................................................... 55 Проверка орфографии .................................................................................................................. 58 Фоновая инсталляция/деинсталляция ........................................................................................ 58 Как................................................................................................................................................... 59 Отображать изображения вместо серых участков ..................................................................... 59 Мониторить странички по специальным словам (ключевые слова) ........................................ 60 Проверять страницы, требующие JavaScript .............................................................................. 60 Мониторить весь сайт (Отслеживание ссылок) .......................................................................... 61 Отправлять e-mail при обнаружении обновления ...................................................................... 61 Игнорировать обновления ............................................................................................................ 63 Ограничить соединение с отдельным сервером/URL ............................................................... 64 Создать закладку в папке Hotsite ................................................................................................. 64 Изменить свойства в нескольких закладках ............................................................................... 64 Отслеживать исходный HTML-код на странице ......................................................................... 65 Предопределить настройки закладок ......................................................................................... 66 Использовать Local Website Archive ............................................................................................ 66 Что делать, если... ....................................................................................................................... 68 Страница не отображается .......................................................................................................... 68 Все закладки сообщают об ошибке ............................................................................................. 68 Состояние проверки "Фильтруется всё содержание (проверьте настройки фильтра)" ......... 69 Web-страница содержит только непонятные символы ............................................................. 69 ИНТЕРФЕЙС .......................................................................................................................69 Конфигурация программы ........................................................................................................ 69 Общие ............................................................................................................................................ 69 Закладки ......................................................................................................................................... 70 Проверка ........................................................................................................................................ 71 Автопроверка ................................................................................................................................. 71 Автоматическая конфигурация времени..................................................................................... 71 Встроенный браузер ..................................................................................................................... 72 Авторезервирование (AutoBackup) .............................................................................................. 72 Внешний вид .................................................................................................................................. 73 © 2014 Aignesberger Software GmbH 3 WebSite-Watcher 2014 Сообщения ..................................................................................................................................... 73 Папка .............................................................................................................................................. 73 Инфоокно ....................................................................................................................................... 74 Звуки ............................................................................................................................................... 74 Внешний браузер .......................................................................................................................... 74 RSS-вложения ............................................................................................................................... 74 Импорт/Экспорт ............................................................................................................................. 74 Цвета .............................................................................................................................................. 74 Сторонние инструменты ............................................................................................................... 75 User Agent ...................................................................................................................................... 75 Проверка новой версии ................................................................................................................ 75 Изображения.................................................................................................................................. 75 Прокси ............................................................................................................................................ 76 E-mail .............................................................................................................................................. 76 Соединения.................................................................................................................................... 78 Дозвон (Dial-up) ............................................................................................................................. 78 Тонкая настройка (Tweak) ............................................................................................................ 78 Свойства закладки ...................................................................................................................... 81 Общие ............................................................................................................................................ 81 Ключевые слова ............................................................................................................................ 82 Автопроверка ................................................................................................................................. 83 Проверка ........................................................................................................................................ 84 Действия ........................................................................................................................................ 85 Опции ............................................................................................................................................. 87 Настройки времени ....................................................................................................................... 87 Подсветка изменений ................................................................................................................... 88 Изображения.................................................................................................................................. 88 Плагин ............................................................................................................................................ 88 Отслеживание ссылок................................................................................................................... 89 Слияние страниц (Merge Pages) .................................................................................................. 90 Игнорирование обновлений ......................................................................................................... 91 IFRAMES ........................................................................................................................................ 91 Логин (Login) .................................................................................................................................. 91 Опции проверки (1) ....................................................................................................................... 92 Опции проверки (2) ....................................................................................................................... 93 Форум ............................................................................................................................................. 94 RSS/Atom ....................................................................................................................................... 94 Группы новостей............................................................................................................................ 95 Отчёт .............................................................................................................................................. 95 Поиск неисправностей .................................................................................................................. 95 Разное ............................................................................................................................................ 96 Поля Примечание / Инфо ............................................................................................................. 96 Свойства папки ............................................................................................................................ 96 Свойства папки .............................................................................................................................. 96 Виртуальная папка...................................................................................................................... 96 Свойства виртуальной папки ....................................................................................................... 96 ЯЗЫК СЦЕНАРИЕВ ............................................................................................................97 Язык сценария (краткий обзор) ................................................................................................ 97 Синтаксис сценария.................................................................................................................... 99 Команды сценария ...................................................................................................................... 99 AbortScript ...................................................................................................................................... 99 BackupToZip ................................................................................................................................. 100 CheckBookmarks .......................................................................................................................... 100 CheckFolder .................................................................................................................................. 100 CloseBrowser ................................................................................................................................ 100 CreateReport ................................................................................................................................. 101 ImportBookmarks .......................................................................................................................... 101 MarkAsVisited ............................................................................................................................... 102 MessageBox ................................................................................................................................. 103 © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 4 OpenBookmarkFile ....................................................................................................................... 103 OpenWithInternalBrowser ............................................................................................................. 103 PlaySound + SystemBeep ............................................................................................................ 103 QuestionBox .................................................................................................................................. 104 Quit ................................................................................................................................................ 104 RasDial .......................................................................................................................................... 104 RasHangup ................................................................................................................................... 105 RestartScript ................................................................................................................................. 105 RunProgram .................................................................................................................................. 105 SelectFolder .................................................................................................................................. 105 SendBookmarks ............................................................................................................................ 106 SendMail ....................................................................................................................................... 106 StartAutoWatch ............................................................................................................................. 107 SyncBookmarkFiles ...................................................................................................................... 107 WaitDelay + WaitUntilTime ........................................................................................................... 107 WindowToTray .............................................................................................................................. 108 Переменные и дополнительные команды .......................................................................... 108 Переменные................................................................................................................................. 108 Предопределённые переменные ............................................................................................... 109 Label и Goto .................................................................................................................................. 109 Оператор IF .................................................................................................................................. 109 Встроенные функции .................................................................................................................. 110 Глобальные настройки/флажки ............................................................................................. 112 Флажки отключения определённых свойств закладки ............................................................ 112 Пример 1: Проверка закладок ................................................................................................. 112 Пример 2: Эмуляция Автопроверки ...................................................................................... 112 Пример 3: Создание и отправка отчёта ................................................................................ 113 Дополнительные примеры / Участки кода........................................................................... 113 СИСТЕМА ПЛАГИНОВ ..................................................................................................... 114 Краткий обзор ............................................................................................................................ 114 Общие/частные плагины ......................................................................................................... 114 Функции событий ...................................................................................................................... 115 Список встроенных функций.................................................................................................. 116 Константы ................................................................................................................................... 118 Базовый язык сценариев ........................................................................................................ 119 Краткий обзор .............................................................................................................................. 119 Идентификаторы ......................................................................................................................... 119 Комментарии ............................................................................................................................... 119 Типы данных ................................................................................................................................ 119 Назначаемые операторы ............................................................................................................ 120 Переменные................................................................................................................................. 120 Строки .......................................................................................................................................... 120 Массивы ....................................................................................................................................... 121 Оператор IF .................................................................................................................................. 121 Оператор WHILE ......................................................................................................................... 121 Оператор DO...LOOP .................................................................................................................. 122 Оператор FOR ............................................................................................................................. 123 Оператор SELECT CASE ............................................................................................................ 123 Оператор FUNCTION .................................................................................................................. 124 Оператор SUB ............................................................................................................................. 124 Функции событий ...................................................................................................................... 125 Wsw_SelectPlugin ........................................................................................................................ 125 Wsw_BeforeCheck........................................................................................................................ 125 Wsw_MergePages ........................................................................................................................ 126 Wsw_PreProcessPage ................................................................................................................. 127 © 2014 Aignesberger Software GmbH 5 WebSite-Watcher 2014 Wsw_CompareVersions ............................................................................................................... 128 Wsw_CheckKeywords .................................................................................................................. 130 Wsw_ActionsOnUpdate ................................................................................................................ 130 Wsw_AfterCheck........................................................................................................................... 131 Встроенные функции ............................................................................................................... 132 InStr ............................................................................................................................................... 132 LastPos ......................................................................................................................................... 132 FindString ...................................................................................................................................... 133 FindWildcard ................................................................................................................................. 133 GetFirstWildcardMatch.................................................................................................................. 133 GetAllWildcardMatches ................................................................................................................. 134 DeleteAllWildcardMatches ............................................................................................................ 134 FindRegex ..................................................................................................................................... 135 GetFirstRegexMatch ..................................................................................................................... 135 GetAllRegexMatches .................................................................................................................... 135 Регулярные выражения .............................................................................................................. 136 Left ................................................................................................................................................ 137 Right .............................................................................................................................................. 138 Mid................................................................................................................................................. 138 Delete ............................................................................................................................................ 139 CopyAndDelete ............................................................................................................................. 139 ExtractDigits .................................................................................................................................. 140 ExtractChars ................................................................................................................................. 140 FindHtmlTag.................................................................................................................................. 140 DeleteHtmlTags ............................................................................................................................ 141 OptimizeHtml................................................................................................................................. 141 HtmlGetParam .............................................................................................................................. 141 HtmlExtract.................................................................................................................................... 142 LCase ............................................................................................................................................ 142 UCase ........................................................................................................................................... 143 AnsiLowercase .............................................................................................................................. 143 AnsiUppercase .............................................................................................................................. 143 Trim ............................................................................................................................................... 144 Len ................................................................................................................................................ 144 Replace ......................................................................................................................................... 144 ReplaceText .................................................................................................................................. 145 ReplaceWildcard ........................................................................................................................... 145 ReplaceRegex ............................................................................................................................... 146 Insert ............................................................................................................................................. 146 Chr................................................................................................................................................. 147 Asc ................................................................................................................................................ 147 DeleteDoubleBlanks...................................................................................................................... 147 Crc32 ............................................................................................................................................. 148 GetUniqueID ................................................................................................................................. 148 SortStringLines .............................................................................................................................. 148 Функции строковых списков ....................................................................................................... 148 DownloadFile ................................................................................................................................ 150 DownloadPageToString ................................................................................................................ 150 FileExists ....................................................................................................................................... 151 FileToString ................................................................................................................................... 152 StringToFile ................................................................................................................................... 152 AddStringToFile ............................................................................................................................ 152 DeleteFile ...................................................................................................................................... 153 MakeUniqueFilename ................................................................................................................... 153 ExtractFileName............................................................................................................................ 153 ExtractFileExt ................................................................................................................................ 154 ExtractFilePath .............................................................................................................................. 154 ChangeFileExt............................................................................................................................... 154 AddBackslash ............................................................................................................................... 155 Execute ......................................................................................................................................... 155 ExecuteAndWait............................................................................................................................ 155 Sleep ............................................................................................................................................. 156 GetComparisonInfo ....................................................................................................................... 156 © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 6 Функции преобразования типов ................................................................................................. 156 Abs ................................................................................................................................................ 157 Round ............................................................................................................................................ 157 Trunc ............................................................................................................................................. 157 Rnd ................................................................................................................................................ 158 Now ............................................................................................................................................... 158 Date ............................................................................................................................................... 158 FormatDateTime ........................................................................................................................... 158 DecodeDate .................................................................................................................................. 160 DecodeTime .................................................................................................................................. 160 EncodeDate .................................................................................................................................. 160 EncodeTime .................................................................................................................................. 161 Day ................................................................................................................................................ 161 DayOfWeek ................................................................................................................................... 161 IncMonth ....................................................................................................................................... 162 IsLeapYear .................................................................................................................................... 162 WswMessageBox.......................................................................................................................... 163 WswInputBox ................................................................................................................................ 163 Bookmark_GetProperty ................................................................................................................ 163 Bookmark_SetProperty ................................................................................................................. 164 Bookmark_ApplyFilter ................................................................................................................... 166 Bookmark_AddLog........................................................................................................................ 166 Bookmark_LoadCacheFile ............................................................................................................ 166 Bookmark_SaveWebDocBinary.................................................................................................... 167 GetWswConfiguration ................................................................................................................... 167 Недокументированные функции ................................................................................................ 167 Как................................................................................................................................................. 169 Создать частный плагин ............................................................................................................. 169 Создать общий плагин ................................................................................................................ 169 Примеры...................................................................................................................................... 169 Проверка наличия определённой цены .................................................................................... 169 Предупреждение, если нет обновлений ................................................................................... 170 Поиск ключевых слов .................................................................................................................. 171 Предупреждение, если ключевые слова НЕ найдены ............................................................. 171 Слияние страниц результатов поиска ....................................................................................... 172 Слияние страниц в теме форума............................................................................................... 172 Регистрация в лог-файле продолжительности проверки закладки ........................................ 175 Предупреждение, только если имеется более 1 изменения................................................... 175 О ПРОГРАММЕ... .............................................................................................................. 176 Установка на переносной диск / USB-брелок ...................................................................... 176 Купить WebSite-Watcher онлайн ............................................................................................. 176 Распечатываемое руководство пользователя ................................................................... 176 Поддержка онлайн .................................................................................................................... 177 Лицензионное соглашение ...................................................................................................... 177 Благодарности ........................................................................................................................... 178 © 2014 Aignesberger Software GmbH 7 WebSite-Watcher 2014 Справка по WebSite-Watcher Добро пожаловать в WebSite-Watcher WebSite-Watcher позволяет Вам отслеживать обновления и изменения на Ваших любимых web-сайтах с минимумом времени и усилий. Вам не потребуется вручную посещать каждую страницу в поисках изменений. Когда на странице обнаружены изменения, WebSite-Watcher сохранит две последние её версии на Ваш жёсткий диск и выделит цветом все изменения в тексте. Множество функций дают Вам возможность управления - как и когда должен проводиться мониторинг изменения страниц. Например, для получения уведомления только в случае, когда указанное ключевое слово доступно в пределах изменённого текста. WebSite-Watcher работает как клиент на Вашем компьютере, подобно email-клиенту. Все закладки и конфигурации хранятся локально на Вашем жёстком диске, WebSite-Watcher не требует наших серверов для проверки страниц на обновления и изменения. Основные возможности Мониторинг web-страниц Мониторинг страниц, защищённых паролем Мониторинг форумов на появление новых сообщений и ответов Мониторинг RSS-каналов, групп новостей и локальных файлов Мониторинг файлов PDF/Word/Excel Подсветка изменений на странице Мощная система фильтров, для исключения ненужного контента Множество других необходимых мощных возможностей, соответствующих современным требованиям! Краткий обзор Главное окно Главное окно WebSite-Watcher включает три области. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 8 1. Дерево папок на левой стороне содержит несколько предопределённых папок (такие как Автопроверка, HotSites или Корзина) и пользовательские папки, которые могут быть созданы пользователем. 2. Список закладок показывает все закладки в выбранной папке. Каждая закладка имеет собственную конфигурацию, которую можно открыть с помощью контекстного меню. 3. Двойной щелчок на закладке открывает веб-страницу с выделенными изменениями во встроенном браузере. После запуска WebSite-Watcher, этот встроенный браузер закрыт и откроется автоматически, как только вы откроете закладку. Встроенный браузер опционально может быть размещен внизу или с правой стороны от списка закладок. Главное меню Файл В меню Файл содержатся все соответствующие команды для создания, открытия и ведения файлов закладок (баз данных). Базы данных закладок имеют расширение *.wsw и содержат все папки, закладки и конфигурации. Кэш-файлы сохраняются в соответствующих папках *_WSW. Меню "База" содержит все команды для поддержания, оптимизации и восстановления базы данных. Вы должны выполнить эти команды только когда возникают проблемы с базой данных, такие как сбои, проблемы с производительностью и т.д. Если ваша база данных повреждена, то запуск команды "Восстановить базу" пытается восстановить столько данных, сколько возможно. Если у Вас есть рабочая до настоящего времени резервная копия Вашей базы данных закладок, то рекомендуется восстановить всё из резервной копии. Еще одна альтернатива для восстановления поврежденных баз данных заключается в использовании "Пересоздать базу из папки кэша". Эта команда восстанавливает всю базу данных из файлов, которые доступны в папке кэша. Вы должны использовать эту команду, как последний вариант, если команда "Восстановить базу" не дала результата, и если у вас нет рабочих до настоящего времени файлов резервного копирования. Закладки Это меню содержит все команды для управления закладками. Команды "Найти" и "Найти далее" позволяют искать текст во всех конфигурациях закладок выбранной папки. Если вы хотите искать текст в проверенных веб-страницах, вы должны использовать функцию Расширенный поиск. С функцией "Замена" Вы можете заменить текст в выбранной конфигурации закладок. Проверка Это меню содержит все команды для проверки веб-страниц. Команда "Проверить HotSites" выбирает и проверяет все закладки в папке "HotSites". Команда "Проверить выделенные закладки (расширенные опции)" дает больше вариантов проверки закладок, например, игнорирует время проверки, указанное в конфигурации. Инструменты Меню Инструменты содержит несколько вспомогательных инструментов, например, для импорта/экспорта закладок из/в различные форматы, синхронизации двух файлов закладок, поиска текста в отслеживаемых страницах, и так далее. Сценарий WebSite-Watcher включает в себя простой внутренний язык сценариев, который позволяет автоматизировать многие вещи и взаимодействия с пользователем. Например, проверка ваших закладок, отправка сформированного отчета по электронной почте и повторение всей процедуры по истечении заданного времени. © 2014 Aignesberger Software GmbH 9 WebSite-Watcher 2014 Опции Это меню содержит все опции и конфигурации WebSite-Watcher. Вид Это меню содержит команды для показа/скрытия элементов главного окна, статистику закладок, лог-файлы и т.д. Справка Разделы справки и, конечно, информация о программе. Панели инструментов Главная панель инструментов Открытие файла (базы данных) закладок. Списки закладок хранятся в файлах с расширением *.wsw, отслеживаемые web-страницы - в связанной кэш-папке *_WSW Мастер для добавления новых закладок Добавление новой закладки Проверка всех закладок в выбранной папке Прерывание проверки Отображение информационного окошка (состояние проверки и т.д.) Переход к предыдущей закладке Переход к следующей закладке Переход к следующей изменённой/непрочтённой отображаются полужирным красным шрифтом) закладке Открытие/Закрытие встроенного браузера Открытие окна расширенного поиска Включение/отключение режима Автопроверка Минимизация WebSite-Watcher в системный трей Выход из WebSite-Watcher Кнопки панели инструментов встроенного браузера Назад Вперёд Прервать Перезагрузка страницы во встроенном браузере Найти текст на странице, открытой во встроенном браузере Дополнительные команды страницы и возможности Правка свойств закладки Создание Автофильтра (игнорирование подсветки изменений) Восстановление предыдущей версии © 2014 Aignesberger Software GmbH (изменённые закладки Справка по WebSite-Watcher 10 Открытие следующей изменённой закладки (изменённые закладки отображаются полужирным красным шрифтом) Переход к следующему изменению на открытой странице Открытие онлайн-версии закладки Открытие новой версии закладки Открытие старой версии закладки Открытие версии с подсветкой изменений Открытие обоих версий - с подсветкой изменений и старой Развёртка в полный экран окна встроенного браузера Открытие страницы во внешнем браузере Панель инструментов может быть настроена в меню Опции. Символы в списке закладок Каждая закладка может иметь один или более следующих значков: Для каждой закладки может быть назначен маленький флажок. Главной целью является установить простой маркер, который помогает легко увидеть важные закладки с первого взгляда. Есть также некоторые другие функции, основанные на этих флажках, например, "Не удалять закладки, помеченные флажками" в свойствах папки. Вы можете назначить флажок двойным кликом на первом столбце закладок или через контекстное меню, в котором доступны разноцветные значки. Этот значок появляется, когда в свойствах закладки введены примечания. Двойной щелчок на этом значке перейдёт на диалог "Примечания" без необходимости открывать свойства закладки. Каждая закладка может быть помечена как закладка папки HotSite. Все закладки с этим флажком перечисляются в папке "HotSites". Закладка является Мастер-закладкой (это означает, что в свойствах закладки включена функция Отслеживание ссылок). Закладка является "дочерней" к Мастер-закладке и была включена автоматически с помощью функции Отслеживание ссылок. Закладка находится в очереди для проверки. Произошла ошибка во время проверки закладки, закладка снова помещена в очередь для второй проверки Закладка проверяется в текущий момент При проверке закладки произошла ошибка, закладка в настоящий момент проверяется второй раз Изменения боковой панели При открытии закладки во внутреннем браузере WebSite-Watcher, Вы можете увидеть изменения панели с левой стороны. Этот индикатор показывает, где находятся изменения и ключевые слова, и позволяет легко прокрутить страничку к этим местам. Области, в которых находятся изменения, отображаются жёлтым цветом. Пространство до и после этих жёлтых областей, отображается белым цветом. Выделенные изменения располагаются только внутри жёлтых областей и отображаются красным цветом. Выделенные ключевые слова в пределах выделенных изменений отображаются синим цветом. Панель изменений не показывает ключевые слова, которые находятся за пределами выделенного изменения. Если страница содержит выделенные изменения, которые скрыты или не могут быть отображены в связи с определениями CSS, то WebSite-Watcher показывает их как небольшие сиреневые маркеры. © 2014 Aignesberger Software GmbH 11 WebSite-Watcher 2014 Вы можете переключиться на вкладку "Текст" встроенного браузера, этот вид всегда будет показывать все выделенные изменения. Если изменения в боковой панели содержат символы xxx вместо маркеров изменений, значит невозможно получить точные позиции изменений (WebSite-Watcher зависит от некоторых функций Internet Explorer, которые иногда сообщают неправильные позиции). Такое бывает также в случае применения метода Проверка по снимку экрана (скриншоту), при котором также невозможно извлечь позиции изменений. Что можно проверять WebSite-Watcher может отслеживать множество разных типов файлов и страниц: Любые web-страницы с текстовым содержанием. WebSite-Watcher также поддерживает статичные web-страницы (страницы с расширением файла .htm или .html) и динамичные web-страницы (страницы с расширением файла .asp, .php, и так далее). Потоки RSS/Atom: Потоки RSS/Atom преобразовываются в читаемые web-страницы. Страницы, защищённые паролем: Для защищённых паролем страниц Вы можете записать макрокоманду, которая будет автоматически выполнена во время проверки страницы на обновление. Дискуссионные форумы: Форумы обрабатываются как обычные web-страницы с различными оптимизациями, например, со специальным методом подсветки изменений. Страницы с Javascript: Для страниц, содержание которых отображается с Javascript, WebSite-Watcher поддерживает отдельную и более сложную технологию преобразования динамически сгенерированного содержания страницы в статичное содержание. PDF-файлы: Интегрированный плагин автоматически преобразует PDF-документы на веб-страницах. Затем PDF-файлы могут быть проверены как обычные веб-страницы и WebSite-Watcher имеет возможность выявлять изменения в тексте. Файлы Microsoft Word: Интегрированный плагин автоматически преобразует документы Microsoft Word в веб-страницы. Затем файлы Word можно отслеживать, как обычные веб-страницы и WebSite-Watcher имеет возможность выявлять изменения в тексте. Файлы Microsoft Excel: Интегрированный плагин автоматически преобразует документы Microsoft Excel на веб-страницах. Затем файлы Excel можно отслеживать, как обычные веб-страницы и WebSite-Watcher имеет возможность выявлять изменения в тексте. Группы новостей: Группы новостей (протокол NNTP) преобразуются в веб-страницу, подобно © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 12 дискуссионному форуму. Вы также можете отвечать на сообщения и создавать новые сообщения с помощью WebSite-Watcher. Изображения: Если Вы отслеживаете файлы изображений напрямую, WebSite-Watcher также способен подсвечивать изменения в изображении. Двоичные (бинарные) файлы: WebSite-Watcher может обнаруживать обновление двоичных файлов (например, файлы zip или exe) сравнением даты файла, размера файла и/или части его содержания (двоичные файлы не будут полностью загружаться при проверке на обновление). Flash-файлы: Файлы Flash-анимации обрабатываются как двоичные файлы. WebSite-Watcher не подсвечивает изменения в их содержании. FTP-файлы и каталоги: WebSite-Watcher поддерживает отслеживание FTP-файлов и каталогов. FTP-файлы могут проверяться по дате/размеру файла или по содержанию. Локально хранящиеся файлы: WebSite-Watcher может отслеживать файлы на Вашем жёстком диске. Полезные горячие клавиши Навигация по изменённым закладкам F12 Открытие следующей изменённой закладки Ctrl+F12 Прыжок на следующее изменение Enter Открытие выбранной закладки (если список закладок в фокусе) Shift+Enter Открытие выбранной закладки и максимизация окна встроенного браузера (если список закладок в фокусе) Ctrl+Enter Установка фокуса на список закладок Ctrl+Alt+Enter Открытие выбранной закладки во внешнем браузере Встроенный браузер F11 Максимизация окна встроенного браузера Пробел Прокрутка страницы вниз во встроенном браузере Shift+Клик по Открытие страницы в новой вкладке браузера Shift+Клик по ссылке Открытие ссылки в новой вкладке браузера Shift+Ctrl+Клик по ссылке Открытие ссылки в новой вкладке браузера. Новая вкладка будет открыта в фоне, если включена опция "Открывать новые вкладки в фоне", и наоборот. Ctrl+Alt+Клик по Открытие версии во внешнем браузере Ctrl+Alt+Клик по ссылке Открытие ссылки во внешнем браузере Ctrl+Tab Выбор следующей вкладки браузера Ctrl+W Закрытие выбранной вкладки браузера Ctrl+Shift+W Закрытие всех прочитанных вкладок браузера Добавление новых закладок Использование Мастера Клик на кнопке в главной панели инструментов позволяет добавлять новые закладки с помощью © 2014 Aignesberger Software GmbH 13 WebSite-Watcher 2014 Мастера. В несколько шагов Мастер поможет выбрать лучшую конфигурацию в зависимости от типа страницы. На первом этапе вы должны решить, может ли веб-страница быть доступна напрямую или страница требует базовой web-авторизации. Страница может быть доступна напрямую Проще говоря, к странице можно обращаться напрямую, когда вы можете открыть ее в веб-браузере, введя URL-адрес (без дополнительных действий, например, нажатие кнопки или что-то в этом роде). В этом случае вы можете ввести адрес страницы в адресной строке. Страница защищена паролем Если страница защищена паролем и требует базовой web-авторизации, то вам придется записать макрокоманду проверки. Макрокоманда проверки содержит все шаги входа и выполняется, когда вы проверяете закладку на обновление. Страница является результатом поискового запроса Если страница может отображаться только после заполнения формы (например, после выполнения поискового запроса), вы должны записать макрокоманду проверки. Говоря техническим языком, во многих случаях результат поискового запроса отображается с помощью POST-команды, а не GET-команды, макрокоманда проверки сохраняет все эти шаги и POST-команды. После нажатия кнопки Далее, WebSite-Watcher выполняет проверку и инициализирует закладки. На следующем этапе вы должны выбрать тип страницы, который является отправной точкой для всех дальнейших действий мастера по выбору самых лучших вариантов и конфигураций для закладки. 1. Нажмите кнопку Мастера в главной панели инструментов 2. Введите URL-адрес, который Вы хотите отслеживать (или создайте макрокоманду проверки для защищённой паролем страницы) 3. Нажмите "Далее" для инициализации страницы 4. Выберите тип страницы (если он не определился автоматически) 5. Следуйте дальнейшим указаниям Добавление закладок вручную В качестве альтернативы Мастеру создания новых закладок, Вы можете добавлять закладки напрямую нажатием кнопки Добавить на главной панели инструментов (или нажатием клавиши "Ins"). Вы можете только ввести адрес странички в поле URL и нажать кнопку 'Проверить !' для инициализации закладки, все другие настройки имеют стандартные типовые значения. Если Вы оставите поле имени закладки пустым, то WebSite-Watcher автоматически назначит имя по заголовку страницы. 1. Нажмите кнопку Добавить на главной панели инструментов (или клавишу "Ins") 2. Введите адрес странички в поле URL 3. Нажмите кнопку "Проверить !" Добавление закладок из браузера Комфортные методы добавления новых закладок непосредственно из Вашего браузера с помощью интеграции WebSite-Watcher с браузером: Кнопка WebSite-Watcher в заголовке окна Вашего браузера Когда WebSite-Watcher запущен, в заголовке окна Вашего браузера отображается небольшой значок кнопки. При щелчке по этой кнопке появится меню, которое позволяет Вам добавить текущую открытую страницу в WebSite-Watcher. Этот метод работает с браузерами Internet Explorer, Firefox, Mozilla и Opera. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 14 Контекстное меню в Вашем Web-браузере Если в WebSite-Watcher была активирована интеграция с браузерами, то Вы можете добавить текущую открытую страничку с помощью контекстного меню документа. Если WebSite-Watcher выполняется в это время, то выбор пункта контекстного меню 'Добавить в WebSite-Watcher' запустит его автоматически. Drag&Drop (перетаскивание) вкладки браузера в папку Быстрый и комфортный путь вставки новых закладок в WebSite-Watcher - это перетаскивание мышью вкладки встроенного браузера в список папок. Импорт закладок Импорт закладок может быть выполнен из разных источников (меню "Инструменты"): Импорт всех/новых закладок из Вашего браузера Эта функция выполняет импорт всех закладок из Internet Explorer, Firefox, Chrome или Opera. WebSite-Watcher импортирует папки и закладки и пропускает дубликаты. Импорт закладок из текстового файла WebSite-Watcher может выполнить импорт URL из текстового файла, описание поддерживаемых форматов может быть найдено в разделе «Импорт URL из текстового файла». Импорт RSS-каналов из OPML-файла Каналы RSS/Atom могут быть импортированы из OPML-файла, который можно сохранить на Вашем жёстком диске или где-нибудь в web. 1. Щёлкните "Инструменты" в главном меню 2. Выберите "Импорт/Экспорт" 3. Выберите источник в зависимости от того, откуда Вы хотите выполнить импорт закладок Импорт URL из текстового файла WebSite-Watcher может выполнять импорт URL из текстовых файлов, имеющих один из следующих форматов: Каждый URL в отдельной строке Каждый URL размещается в отдельной строке, например: http://www.website-watcher.com http://www.aignes.com/support.htm http://www.aignes.com/videos.htm Каждое Имя и URL в отдельной строке Каждая строка содержит Имя и URL, разделённые символом табуляции, например: WebSite-Watcher{TAB}http://www.website-watcher.com WSW Support{TAB}http://www.aignes.com/support.htm Videos{TAB}http://www.aignes.com/videos.htm Файл должен быть сохранен в формате Ansi или UTF8. 1. Нажмите "Инструменты" в главном меню 2. Выберите "Импорт/Экспорт" 3. Выберите "Импорт всех/новых закладок из текстового файла" 4. Выберите размещение и формат текстового файла 5. Нажмите ОК Импорт из Excel / CSV Импорт из Excel / CSV Закладки (включая свойства закладки) могут быть импортированы из первого листа книги Excel или CSV-файла. Поддерживаются расширения файлов xls, xlsx и csv. Первая строка должна содержать имена полей, которые должны быть импортированы. Следующие © 2014 Aignesberger Software GmbH 15 WebSite-Watcher 2014 строки должны содержать значения свойств закладки (одна закладка в строке). На следующем снимке экрана показан типичный лист Excel: Вам нужно только указать поля, которые вы хотите импортировать. Самым маленьким листом была бы таблица с только одним столбцом, содержащим поля URL. Поддерживаемые поля: Общие Поле Описание wswid Уникальный идентификатор (ID) закладки WebSite-Watcher, который записывается, когда Вы экспортируете закладки. Если этот ID доступен при импорте закладок, то WebSite-Watcher будет использовать этот номер для идентификации закладки. Иначе используются комбинации полей url/check_macro/postdata. name Имя закладки url URL закладки. Если не доступно wswid, то это поле должно быть доступно, иначе строка не будет импортирована. url2 Альтернативно проверяемый URL check_macro Исходный код макрокоманды проверки postdata PostData, если закладка проверяется с помощью POST-команды Фильтр ignore_filter Определения фильтров Игнорируемые, установленные вручную с одним фильтром в строке. watch_filter Определения фильтров Отслеживаемые, установленные вручную с одним фильтром в строке. ignore_removed_elements Специальный фильтр: Игнорировать Допустимые значения: 0 или 1 ignore_html_tags Специальный фильтр: Игнорировать все тэги HTML. Допустимые значения: 0 или 1 ignore_upper_lower Специальный фильтр: Игнорировать верхний/нижний регистр. Допустимые значения: 0 или 1 ignore_dropdown Специальный фильтр: Игнорировать записи в выпадающих полях и полях списков filter_sort_content Специальный фильтр: Сортировать контент Допустимые значения: 0 = нет сортировки 1 = сортировать контент страницы по словам 2 = сортировать контент страницы по предложениям удаленные элементы. страницы. Ключевые слова highlight_keywords Подсветка ключевых слов. Одно ключевое слово в строке. same_keywords_as_above Использовать вышеуказанные ключевые слова. Допустимые © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 16 значения: 0 или 1 update_on_keywords Обновление по ключевым словам. Одно ключевое слово в строке. Автопроверка autowatch Включение Автопроверки. Допустимые значения: 0 или 1 autowatch_automatic Включение или выключение автоматической конфигурации времени Допустимые значения: 1 = Использовать автоматическую конфигурацию времени 2 = Использовать установленную вручную конфигурацию времени "Проверять каждые..." autowatch_check_every_value Значение конфигурации времени "Проверять каждые..." autowatch_check_every_unit Единица конфигурации времени "Проверять каждые..." Допустимые значения: s = секунд m = минут h = часов d = дней autowatch_max_one_update_per_day Опция "Максимально одно уведомление об обновлении в день". Допустимые значения: 0 или 1 autowatch_only_check_between Проверка только в указанном интервале времени. Формат: ЧЧ:ММ-ЧЧ:ММ Если в ячейке не используется именно этот синтаксис, то значение ячейки игнорируется. autowatch_dont_check_between Не проверять в указанном интервале времени. Формат: ЧЧ:ММ-ЧЧ:ММ Если в ячейке не используется именно этот синтаксис, то значение ячейки игнорируется. autowatch_check_on_days Проверка только в определённые дни. Допустимые значения: x = не проверять, 1 = проверять Формат: 7 символов с x или 1, первым символом будет понедельник, последним символом будет воскресенье, и так далее. Пример: xxxxx11 (проверка только в субботу и воскресенье) Проверка alert_on_initialization Уведомление/Действия значения: 0 или 1 при инициализации. Допустимые alert_on_update Уведомление/Действия при изменении. Допустимые значения: 0 или 1 alert_on_error Уведомление/Действия при ошибке. Допустимые значения: 0 или 1 alert_on_error_count Уведомление после X ошибок в серии. Допустимые значения: 1-99 check_technology Технологии проверки web-страниц Допустимые значения: 1 = По умолчанию 2 = Internet Explorer/Браузер 3 = По снимку экрана (скриншоту) delay_after_page_loaded Количество секунд для опции "Задержка после загрузки страницы". Только в комбинации с технологией проверки "IE/Браузер" или "По снимку экрана (скриншоту)". follow_javascript_redirections Включение опции "Следовать по перенаправлению JavaScript". Допустимые значения: 0 или 1 Эта опция должна быть включена только когда страница не может быть проверена без неё! © 2014 Aignesberger Software GmbH 17 WebSite-Watcher 2014 disable_optimizations Включение опции "Отключить оптимизацию". Допустимые значения: 0 или 1 Эта опция должна быть включена только когда страница не может быть проверена без неё! scroll_pages_down Количество страниц, которые должны быть прокручены вниз во время проверки. Только в комбинации с технологией проверки "IE/Браузер" или "По снимку экрана (скриншоту)". Действия action_sendmail Включает действия закладки Отправить e-mail. Допустимые значения: 0 или 1 action_sendmail_format Формат E-Mail Допустимые значения: html = отправка сообщения в HTML-формате text = отправка сообщения в текстовом формате action_sendmail_attach_changes Вложить файл с подсвеченными изменениями. Допустимые значения: 0 или 1 action_sendmail_attach_new Вложить новую версию страницы. Допустимые значения: 0 или 1 action_sendmail_attach_old Вложить старую версию страницы. Допустимые значения: 0 или 1 action_sendmail_ignore_css Игнорирует CSS-стили при отправке e-mail в формате HTML. Допустимые значения: 0 или 1 action_sendmail_emails Альтернативные e-mail. Несколько разделены запятыми или пробелами. action_sendmail_queue_with_priority Отправить раньше других e-mail. Допустимые значения: 0 или 1 action_sendmail_subject Альтернативная тема. Поле темы поддерживает те же переменные, как и переменные в конфигурации программы. action_mark_as_read Включает действие закладки Пометить как прочитанное. Если Вы не открываете закладки в WebSite-Watcher (например, при чтении изменившейся закладки только в вашем почтовом клиенте), то вы должны также включить действие Пометить-как-прочитанную. e-mail должны быть Опции jump_to_first_change Переход к первому подсвеченному изменению. Допустимые значения: 0 или 1 jump_to_first_keyword Переход к первому ключевому слову (с изменениями). Допустимые значения: 0 или 1 prevent_horizontal_scrolling Предотвращение значения: 0 или 1 offset_before_change Место перед первым изменением в пикселах. show_removed_content Показывать удалённые элементы внизу страницы. Допустимые значения: 0 или 1 show_last_change_marker Показывать маркер значения: 0 или 1 dont_check Включение опции "Отключить Допустимые значения: 0 или 1 горизонтальной подсвеченными прокрутки. последнего изменения. закладку (не Допустимые Допустимые проверять)". Игнорирование обновлений ignore_updates_is_blacklist Определяет введённые слова/фразы в чёрный список (1) или в белый список (0). Допустимые значения: 0 или 1 ignore_updates_words Слова/фразы ignore_updates_min_char_count Требуемое количество символов. означает, что эта опция активна. © 2014 Aignesberger Software GmbH Значение больше нуля Справка по WebSite-Watcher 18 Поиск неисправностей troubleshooting_ignore_css Игнорировать определения значения: 0 или 1 CSS troubleshooting_ignore_text_color Игнорировать цвета текста документа. Допустимые значения: 0 или 1 troubleshooting_ignore_background_color Игнорировать цвет фона документа. Допустимые значения: 0 или 1 troubleshooting_dont_ignore_noscript Не игнорировать части NOSCRIPT. Допустимые значения: 0 или 1 troubleshooting_dont_optimize_offlinebrowsing Не подготавливать страницы Допустимые значения: 0 или 1 документа. для Допустимые оффлайн-просмотра. Примечание note Примечание закладки. Поддерживается многострочность. infofield1 Дополнительное информационное поле #1 infofield2 Дополнительное информационное поле #2 infofield3 Дополнительное информационное поле #3 Экспорт в Excel WebSite-Watcher может экспортировать закладки в файл Excel с теми же полями, что описаны выше. Это, например, даёт возможность экспортировать закладки в Excel, изменить их там и повторно импортировать их в WebSite-Watcher. Проверка закладок Проверка страничек вручную Существуют различные методы проверки закладок: 1. 2. 3. 4. вручную с помощью команд меню и горячих клавиш автоматически через функцию Автопроверка через интегрированный язык сценариев через параметры командной строки Для проверки закладок вручную могут использоваться следующие методы: Проверка всех закладок в выбранной папке 1. Выберите папку, закладки которой хотите проверить 2. Нажмите кнопку "Проверка" (или горячую клавишу F9) (Ctrl+Shift+Click на папке также начнет проверку) Проверка всех закладок 1. Выберите папку "Все закладки" 2. Нажмите кнопку "Проверка" (или горячую клавишу F9) Проверка выбранных закладок 1. Выберите закладки, которые Вы хотите проверить 2. Нажмите правую кнопку мыши на выделенном и выберите "Проверить закладки" (или нажмите горячие клавиши Ctrl+K) © 2014 Aignesberger Software GmbH 19 WebSite-Watcher 2014 Проверить все Hotsites Горячие клавиши Ctrl+Shift+H выбирают папку "Hotsites" и запускают проверку всех закладок в ней. Когда Вы запускаете проверку закладок, закладки помещаются в очередь проверки и появляется небольшой серый значок иконки земного шара в первой колонке списка закладок. Когда закладка проверена, то возле неё будет показан голубой значок иконки земного шара . По окончании проверки все символы земного шара уже не будут показываться. Проверка страничек автоматически (с Автопроверкой) В качестве альтернативы ручной проверки закладки, WebSite-Watcher поддерживает автоматизированный метод проверки (так называемую Автопроверку) для мониторинга закладки автоматически через предопределенные промежутки времени. Как использовать Автопроверку 1. Разрешите Автопроверку для указанных закладок 2. Запустите режим Автопроверки Как разрешить Автопроверку для закладки 1. Свойства закладки Откройте свойства закладки (щёлкнув правой кнопкой мыши на закладке) и выберите вкладку Автопроверка. В этом разделе вы можете включить Автопроверку и при необходимости ввести дополнительные ограничения времени, когда и как часто закладка должна быть проверена. Для выполнения этой задачи на нескольких закладках, щелкните правой кнопкой мыши на выбранных закладках и запустите "Установить свойства для всех выбранных закладок..." 2. Drag&Drop (перетаскивание мышью) Drag&Drop (перетащите мышью) закладки в папку Автопроверка чтобы разрешить Автопроверку с уже определенной конфигурацией времени. Это действие не будет перемещать закладки в эту папку, а просто включит функцию Автопроверка. 3. Предопределённая конфигурация В конфигурации программы Вы можете предопределить конфигурации Автопроверки для новых закладок (кнопка "Назначить свойства закладки"). Это может быть сделано в папке с помощью свойств папки. Все закладки с поддержкой Автопроверки перечислены в папке Автопроверка. Запуск режима Автопроверки Щелкните на кнопке Автопроверка в главной панели инструментов для запуска режима Автопроверки. Закладки будут отслеживаться автоматически только когда эта кнопка нажата. Проверка отключенных закладок Закладка может быть отключена в её свойствах, это означает, что она не будет проверяться в ходе нормального выполнения проверки. Проверка закладки также может быть пропущена, если вы ввели в конфигурации некоторое время, например, конфигурация "Проверять каждые 7 дней". Функция "Проверить выделенные закладки (расширенная опция)" предлагает Вам способ обойти эти ограничения. 1. Выберите закладки, которые хотите проверить 2. Кликнете "Проверка + Проверить выделенные закладки (расширенная опция)" или используйте комбинацию клавиш Ctrl+F9 3. Нажмите кнопку ОК Сообщения о состоянии и ошибках Столбец состояния в списке закладок показывает результаты последней проверки. Если при проверке закладки произошла ошибка, то текст состояния отображается синим цветом. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 20 Успешная проверка ОК Если отображается "ОК", это означает, что проверка была успешно выполнена. Запись OK может быть отображена вместе с другой информацией и предупреждениями. Успешная проверка с информацией Если "ОК" отображается в комбинации с по крайней мере одним из следующих сообщений, то страница возможно проверена корректно. Инициализировано При первой проверке закладки инициализируются данные проверки. WebSite-Watcher загружает страницу и собирает все данные, которые необходимы для обнаружения изменений при дальнейших проверках. Внимание: фреймы Это означает, что загруженная страница содержит фреймы и WebSite-Watcher должен загрузить все фреймы, которые определены в структуре (если это возможно, он не работает со всеми наборами фреймов). Это предупреждение можно отключить в свойствах закладки. Перенаправление Перенаправление происходит в случае, когда Вы ввели адрес в поле URL Вашего веб-браузера, и тот автоматически "перескакивает" на адрес другой страницы (адрес в поле URL Вашего браузера будет изменён автоматически). Если происходит такое перенаправление, отображается это предупреждающее сообщение. Внимание: размер загрузки Обычная web-страница имеет размер между 10 и 100 КБ, иногда даже больше. Если WebSite-Watcher проверяет и загружает страницу намного большего размера (например, 1 МБ или более), то тогда возможно перенаправление к двоичному файлу, который обрабатывается как обычная web-страница. Если скачанный объем данных больше заданного размера (введённого в программе конфигурации), то Вы получите такое предупреждение. Обратите пожалуйста внимание, что это только предупреждение, проверка не будет прервана. Пропущено Закладка не была проверена из-за некоторых ограничений времени в свойствах закладки. Вы можете использовать "Проверка закладок (расширенный режим)" для проверки такой закладки. Отключено Закладка была заблокирована в свойствах закладки. Вы можете использовать "Проверка закладок (расширенный режим)" для проверки отключенных закладок. Проверка с ошибками Если в столбце состояния отображается, по крайней мере, одно из следующих сообщений, то страница не может быть проверена корректно. Внимание: фильтруется всё содержание (проверьте настройки фильтра) Обычно WebSite-Watcher сравнивает отфильтрованное текстовое содержание новой версии с отфильтрованным текстовым содержанием старой версии страницы. Если отфильтровано всё содержание страницы, то WebSite-Watcher не имеет данных для сравнения и не способен обнаружить изменения. В таком случае будет показано это сообщение об ошибке. Откройте свойства закладки и проверьте/измените Ваши определения фильтра для исправления этой проблемы. С функцией "Тест фильтра" Вы можете увидеть фильтрованное содержание, которое используется для обнаружения изменений. Связанная тема: «Что такое настройки фильтра (краткий обзор)». Разрешить перенаправление через команды HTML HTML-перенаправления поддерживаются, но не включены по умолчанию. Если отображается такое сообщение, то Вы можете попробовать изменить URL закладки на адрес переадресованной страницы, или включите HTML-перенаправления в свойствах закладки. В редких обстоятельствах перенаправления HTML требуются, например, когда постоянный URL перенаправляет на URL, содержащий сегодняшнюю дату или идентификатор сессии (Session-ID). © 2014 Aignesberger Software GmbH 21 WebSite-Watcher 2014 Страница недоступна? Страница не была доступна во время проверки. Знак вопроса говорит, что нет гарантии, что это постоянная ошибка. Вы должны самостоятельно проверить и принять решение, была ли страница временно недоступна или же страница была полностью удалена. Доступ запрещён? Если вы получаете сообщение об ошибке, то страница, как правило, защищена с помощью аутентификации сервера и вам нужны имя пользователя и пароль для доступа к странице. Имя пользователя/пароль могут быть введены в свойствах закладки, смотрите также раздел «Вход через аутентификацию сервера». Время ожидания истекло Страница не может быть проверена в пределах определенного времени. Это может, например, случиться, если страница временно недоступна, или когда Вы проверяете страницу намного большего размера, чем может быть передано данных за это время. Значение времени ожидания может быть изменено в конфигурации программы или индивидуально для каждой закладки в её свойствах. Ошибка при загрузке страницы Страница доступна, но не может быть загружена или загрузка была усечена. В основном, это временная проблема сервера, и этот вопрос должен решиться автоматически, когда вы повторно проверите закладки в более позднее время. Ошибка: Страница или файл не найдены Страница недоступна по неизвестной причине. Например, из-за проблем с сервером, проблемы вашего интернет-провайдера и т.д. Исключение закладок из проверки Закладки могут быть "отключены". После чего эти закладки будут храниться в списке закладок, но не будут проверяться. Постоянное исключение из проверки Для отключения закладок и исключения их из проверки навсегда, откройте в Свойствах закладки раздел Дополнительно и в разделе Опции включите опцию "Отключить закладку (не проверять)". Временное исключение из проверки Для временного исключения закладки из проверки (например, на следующие 7 дней), щёлкните правой кнопкой мыши на выбранной закладке, затем выберите "Экстра" и "Отключить проверку". Здесь Вы можете установить, как долго не нужно будет проверять закладку. Как снова включить отключенные закладки Постоянно исключённые закладки Постоянно исключённые закладки могут быть снова включены в свойствах закладки отключением опции "Отключить закладку (Не проверять)". Временно исключённые закладки Временно исключённые закладки могут быть снова включены так же, как они были отключены. Щёлкните правой кнопкой мыши на выбранной закладке, затем выберите "Экстра" и "Отключить проверку". Затем просто введите "0 минут" и нажмите OK. Открытие изменённых закладок Как показывается изменение закладки Обновлённые закладки отображаются красным и полужирным шрифтом, они также автоматически сортируются в верхней части списка закладок. Открытие обновлённой закладки изменит состояние назад в "прочитанная", и закладка снова будет отображаться обычным чёрным шрифтом. Папки с измененными закладками отображаются красным цветом и полужирным шрифтом, число изменившихся закладок отображается в скобках. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 22 Как открыть (изменённые) закладки Открытие следующих измененных/непрочитанных закладок Горячая клавиша F12 открывает следующую непрочитанную закладку Кнопка открывает следующую непрочитанную закладку Двойной клик по закладке открывает выбранную закладку Навигация в открытых закладках Комбинация клавиш Ctrl+F12 переходит к следующему выделенному изменению Кнопка переходит к следующему выделенному изменению Клавиша Пробел прокручивает открытую страницу вниз Типичные клавиши навигации, поддерживаемые в Internet Explorer, например, PageUp/Down, клавиши стрелок, и так далее. Встроенный браузер с вкладками При запуске WebSite-Watcher, внутренний браузер закрыт по умолчанию и автоматически открывается, как только вы открываете закладку. Внутренний браузер является встроенным Internet Explorer, вы можете открыть проверенные закладки, а также онлайн веб-страницы. WebSite-Watcher всегда будет использовать первую вкладку браузера для отображения измененных закладок. Ссылки могут быть открыты в дополнительных вкладках браузера. Открытие страниц в новых вкладках браузера Страницы откроются в новых вкладках браузера, когда: Удерживается нажатой клавиша Shift при щелчке на ссылке Через контекстное меню, когда щёлкнули правой кнопкой мыши на ссылке Удерживая нажатой клавишу Shift, при этом нажать на одну из следующих кнопок: Открытие новой пустой вкладки браузера с помощью горячих клавиш Ctrl+T Новые вкладки в браузере могут открываться поверх всех или в фоне. Такое поведение может быть изменено в конфигурации программы (на вкладке "Встроенный браузер") или быстро щелкнув правой кнопкой мыши вкладку браузера. Если нажать Ctrl+Shift во время щелчка по ссылке, то новая вкладка откроется на переднем плане, если включена опция "Открыть новые вкладки в фоне", и наоборот. Закрытие открытых вкладок браузера Открытые вкладки браузера могут быть закрыты с: Щелчком правой кнопки мыши на вкладке браузера Использованием горячих клавиш Ctrl+W Все реально открытые вкладки браузера могут быть закрыты с Ctrl+Shift+W Открытие во внешнем web-браузере Кнопка открывает все текущие открытые страницы в Вашем web-браузере. Если Вы удержите нажатыми Ctrl+Alt во время щелчка на ссылке или по одной из кнопок , то страницы будут также открыты в Вашем внешнем web-браузере, установленном по умолчанию. © 2014 Aignesberger Software GmbH 23 WebSite-Watcher 2014 Фильтр: Игнорируемые / Отслеживаемые для определённых участков страницы Что такое настройки фильтра (краткий обзор) Для обнаружения обновлений WebSite-Watcher сравнивает текстовое содержание новой версии страницы с текстовым содержанием старой версии страницы. Если содержание разное, WebSite-Watcher уведомляет об обновлении. Если страница содержит изменяющиеся части (например, текущую дату, некоторое рекламное объявление, ...), то уведомление об обновлении будет при каждой проверке. Фильтр может игнорировать определённые части страницы для предотвращения ложного уведомления об обновлении. Если задан фильтр, WebSite-Watcher будет сравнивать отфильтрованное текстовое содержание новой версии с отфильтрованным текстовым содержанием старой версии для обнаружения изменений страницы. Определения фильтра хранятся в свойствах закладки. Кнопку "Тест фильтра" можно найти в разных местах, она открывает диалог, отображающий отфильтрованное текстовое содержание новой версии и отфильтрованное текстовое содержание старой версии. Типы фильтров 1. Автоматически создаваемый фильтр Игнорируемые (Автофильтр) Функция Автофильтр - это самообучающаяся фильтрующая система, которая обеспечивает простой и комфортный путь автоматического создания фильтров Игнорируемые, и основанная на подсветке изменений. Вы должны пользоваться этим фильтром только тогда, когда получаете ненужные положительные уведомления, например, вызванные изменением даты, счётчика посещений и так далее). Не используйте эту функцию, если страница содержит любые другие подсвеченные новости и изменения. 2. Фильтры игнорирования Этот фильтр должен быть создан вручную, он игнорирует указанные части страницы, например текст с изменением номеров, текущей даты или все с начала страницы и до определенного текста. 3. Фильтры отслеживания Этот фильтр должен быть создан вручную, он следит за указанными частями страницы и игнорирует все остальное. Он может, например, использоваться для отслеживания только номера версии программного обеспечения на странице загрузки. 4. Специальные фильтры WebSite-Watcher имеет также некоторые встроенные опции фильтра, которые только могут быть включены или отключены, например, для сортировки всех слов на странице. В большинстве случаев они отлично работают с определением набора фильтров игнорирования, либо с системой Автофильтров или в ручном режиме с помощью Мастера фильтров. Как создать фильтры Игнорируемые/Отслеживаемые 1. Использование системы Автофильтра Автофильтры могут быть созданы непосредственно во встроенном браузере, нажатием кнопки © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 24 на панели инструментов. Эта кнопка также доступна в разделе на панели инструментов. Эта кнопка также доступна в разделе подменю "Страница" панели инструментов браузера. 2. Использование Мастера фильтров Мастер фильтра может быть запущен непосредственно во встроенном браузере (просто удерживайте нажатой клавишу Alt при выборе текста, который вы хотите фильтровать) или в свойствах закладки (по нажатию кнопки "Мастер фильтра"). Мастер фильтра позволяет создавать фильтры Игнорируемые/Отслеживаемые весьма удобным способом в интерактивном режиме. Главными шагами будут выбор текста, который вы хотите фильтровать, и классификация выделенного текста (например, текст из непрерывного текста, текст с меняющимся номером и т.д.). 3. Создание фильтра вручную В качестве альтернативы системе Автофильтров и Мастеру фильтра Вы можете вручную создать фильтр Игнорируемые/Отслеживаемые с простыми определениями подстановочных знаков и/или регулярными выражениями. Автофильтр Функция Автофильтр является самообучающейся фильтрующей системой, которая обеспечивает простой и комфортный путь автоматического создания фильтров Игнорируемые, и основанная на подсветке изменений. Когда может использоваться Автофильтр? Вы должны пользоваться этим фильтром только тогда, когда получаете ненужные положительные уведомления, например, вызванные изменением даты, счётчика посещений и так далее. Не используйте эту функцию, если страница содержит любые другие подсвеченные новости и изменения. Используйте систему Автофильтра при изменениях, подобных этим: Today is May 29th, 2006 - 13:41:56 am You are visitor number 8,736 Comments (7), Trackback (3) Не используйте систему Автофильтра при изменениях подобных этим: 02-May-2006 WebSite-Watcher 4.10 has been released. This major update introduces often requested Unicode support, many improvements to the user interface and lots of new features. 26-Apr-2006 AM-Notebook 4.0 has been released. This major update comes with many new formatting features, table support, formula based spreadsheets. Как создать Автофильтр? Автофильтр можно создать напрямую во встроенном браузере, нажав кнопку Автофильтр . Эту кнопку можно найти в подменю "Страница" на панели инструментов браузера (или непосредственно в панели инструментов, если это настроено). Кроме того, вы можете открыть Мастер фильтра в свойствах закладки, выбрав вкладку Автофильтр и щёлкнув кнопку "Автофильтр (Игнорирование изменений)". © 2014 Aignesberger Software GmbH 25 WebSite-Watcher 2014 Процесс обучения После нажатия на кнопку Автофильтр , WebSite-Watcher отображает следующее диалоговое окно, которое показывает количество обученных изменений и число обученных фильтров: Иногда фильтр может быть создан сразу после вызова функции Автофильтр. В других случаях обучаются только изменения, и фильтр может быть создан только после нескольких процессов обучения. Это зависит от типа изменений и случаев, когда может быть создан фильтр. При определенных обстоятельствах, WebSite-Watcher не может создать Автофильтр. Невозможно создать Автофильтр Если WebSite-Watcher не способен создать фильтр автоматически, Вы должны использовать Мастер фильтра для создания фильтра вручную. Определённые вручную фильтры имеют высший приоритет и будут выполняться перед Автофильтрами. Автоматически созданные фильтры автоматически удаляются после того, как они больше не используются. Нет никакой необходимости вручную обслуживать эти фильтры. Мастер фильтра Мастер фильтра позволяет создавать фильтры Игнорируемые/Отслеживаемые весьма удобным способом в интерактивном режиме. Главными шагами будут выбор текста, который вы хотите фильтровать, и классификация выделенного текста (например, текст из непрерывного текста, текст с меняющимся номером и т.д.). Мастер фильтра может быть запущен непосредственно во встроенном браузере (просто удерживайте нажатой клавишу Alt при выборе текста, который вы хотите фильтровать) или в свойствах закладки (по нажатию кнопки "Мастер фильтра"). Типы фильтров Есть два типа фильтров, которые могут быть созданы с помощью Мастера фильтра: Фильтры игнорирования Игнорирует указанные части страницы, например текст с изменением номеров, текущей даты или все с начала страницы и до определенного текста. Фильтры отслеживания Следит за указанными частями страницы и игнорирует все остальное. Он может, например, использоваться для отслеживания только номера версии программного обеспечения на © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 26 странице загрузки. Создание фильтра во встроенном браузере Шаг 1: Выделите текст, который хотите фильтровать (например: "Downloads today: 3,333") Выбранный текст должен быть уникальным, насколько это возможно. Уникальный текст может легко идентифицироваться системой фильтра. Если бы Вы выделите только "3,333", то WebSite-Watcher нашёл и отфильтровывал бы на странице все числа с запятыми. Комбинация текста "Downloads today:" с числом делает выбор уникальным, и может быть точно определена и отфильтрована. После выбора текста, нажмите кнопку "Страница" и кликните "Создать новый фильтр" для запуска Мастера фильтра. Если Вы будете удерживать клавишу "Alt" во время выделения текста, Мастер фильтра запустится автоматически. Шаг 2: Выберите тип фильтра, который Вы хотите создать (в нашем случае: Игнорировать выбранный текст с меняющимися номерами) После появления Мастера фильтра, Вы должны выбрать тип фильтра, который хотите создать. Вы можете переключаться между фильтрами Игнорировать/Отслеживать, просматривать и выбирать тип фильтра, нажав на одну из кнопок. © 2014 Aignesberger Software GmbH 27 WebSite-Watcher 2014 На основании выбранного типа фильтра, помощник проведет вас через все остальные этапы в процессе создания. Следующим шагом является классификация выделенного текста, в нашем случае это текст с меняющимся номером. После классификации выделенного текста, WebSite-Watcher покажет все подходящие результаты проверки до окончания создания фильтра. Теперь, когда Вы выбрали тип фильтра, появится окно, в котором WebSite-Watcher отображает результаты сравнения. Результата может не быть в случае, если WebSite-Watcher не смог найти выбранный текст, один результат - в случае уникального текста, или множество результатов, если WebSite-Watcher нашёл много соответствий, "совместимых" с созданным фильтром. Если WebSite-Watcher не находит результат, то Вы должны попробовать сделать более точную настройку. Порядок фильтров важен! Фильтры всегда выполняется сверху вниз, это означает, что фильтр в первой строке выполняется перед фильтром во второй строке и т.д. Содержание, которое отфильтруется первым фильтром, больше не будет доступно для определений фильтров по следующим направлениям. Пример: Вы задали следующие два игнорируемых фильтра: Watcher WebSite-Watcher © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 28 Первый фильтр игнорирует (удаляет) все слова "Watcher". Второй фильтр уже никогда не найдёт соответствий, так как "Watcher" больше недоступен. Корректный порядок для этих двух фильтров был бы таким: WebSite-Watcher Watcher Здесь первый фильтр игнорирует (удаляет) все слова "WebSite-Watcher". Второй фильтр может затем игнорировать все оставшиеся слова "Watcher". Опции Преобразовать ссылки в текст При включении этой опции WebSite-Watcher будет преобразовывать все ссылки в текст. Это может несколько изменить компановку, но делает более лёгким выделение текста в ссылках. Устаревшие фильтры Устаревшие игнорируемые фильтры автоматически обнаруживаются и удаляются через некоторое время после того, как они больше не находят никаких соответствий. Нет необходимости удалять вручную устаревшие игнорируемые фильтры. Такое поведение можно отключить в секции «Тонкая настройка (Tweak)» (но мы не рекомендуем делать это). Устаревшие отслеживаемые фильтры не удаляются автоматически, вы должны обслуживать эти фильтры вручную. Не забывайте проверить настройки Вашего фильтра Функция "Тест фильтра" позволяет Вам всегда проверять определения фильтра путем сравнения фильтруемого текстового содержимого новой страницы с фильтром текстового содержимого старой страницы. Создание вручную фильтра Игнорируемые/Отслеживаемые В качестве альтернативы системе Автофильтров и Мастеру фильтра Вы можете вручную создать фильтр Игнорируемые/Отслеживаемые. Вводите каждое выражение фильтра в отдельной строке. Все выражения фильтра нечувствительны к регистру символов, они преобразовываются внутренне программой в нижний регистр. Кнопка "Новый фильтр Игнорируемые" (или "Новый фильтр Отслеживаемые") открывает диалог помощи, в котором Вы можете ввести и проверить корректность нового выражения фильтра. Кнопка "Тест выбранной строки" позволяет Вам проверить корректность выражения фильтра в активной строке. Кнопка "Тест фильтра" тестирует все определения фильтра, сравнивая отфильтрованное текстовое содержание новой страницы с отфильтрованным текстовым содержанием старой страницы. Каждая строка может содержать следующие элементы: 1. Фраза статического текста Вы можете использовать этот тип, если хотите игнорировать определённые фразы на © 2014 Aignesberger Software GmbH 29 WebSite-Watcher 2014 странице. 2. Текст со знаками подстановки Фильтр с подстановочными знаками, как правило, используется для игнорирования области страницы с указанным началом/концом текста. 3. Регулярное выражение С регулярными выражениями Вы можете задавать сложный поиск и фильтровать выражения, которые должны быть размещены в специальных именах функций, например "regex(....)". Фильтр со знаками подстановки WebSite-Watcher поддерживает следующие три типа фильтров подстановки с ограничением разрешается только один подстановочный знак в выражении фильтра: *КонецТекста Эта форма фильтрует всё от начала страницы до первого вхождения в "КонецТекста". Например: *Daily News НачалоТекста*КонецТекста Эта форма фильтрует все области текста, начиная от "НачалоТекста" и до "КонецТекста". Например: Downloads:*Publisher НачалоТекста* Эта форма фильтрует всё от последнего вхождения "НачалоТекста" до конца страницы. Пример: Users online* Регулярные выражения WebSite-Watcher поддерживает PERL5-совместимые регулярные выражения, которые могут использоваться для создания сложных определений фильтров. Регулярные выражения должны размещаться в одной из следующих функций: regex( ... ) Фильтрует указанное регулярное выражение Например: regex(\d+ downloads) FirstRegex( ... ) Фильтрует только первое вхождение определенных регулярных выражений Например: FirstRegex(\d+ downloads) StartToRegex( ... ) Фильтрует всю страницу, начиная от первого вхождения указанного регулярного выражения Например: StartToRegex(\d+ visitors) RegexToRegex( ... , ... ) Фильтрует всю страницу между двумя регулярными выражениями Например: RegexToRegex(Downloads\: \d+,License\:) RegexToEnd( ... ) Фильтрует всю страницу, начиная от последнего вхождения указанного регулярного выражения, и до конца страницы Например: RegexToEnd(\d+ users online) RegexCmp(... ) Находит определенное регулярное выражение, извлекает из результата все цифры и сравнивает их с заранее определенным числом. Это может использоваться, например, для извлечения и сравнения цены. Подобно нахождению соответствия, только когда определенная цена выше 1000. Например: RegexCmp(\d+([,\.]\d+)* Euro;,; > 1000) Фильтры, основанные на CSS Контент страницы также можно проигнорировать по именам классов CSS. Это функция работает © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 30 только для фильтров игнорирования, но не для фильтров отслеживания. css( ИМЯ_КЛАССА ) Фильтр всего текстового контента, отформатированного с определенным именем класса CSS. Порядок фильтров важен! Фильтры всегда выполняется сверху вниз, это означает, что фильтр в первой строке выполняется перед фильтром во второй строке и т.д. Содержание, которое отфильтруется первым фильтром, больше не будет доступно для определений фильтров по следующим направлениям. Пример: Вы задали следующие два игнорируемых фильтра: Watcher WebSite-Watcher Первый фильтр игнорирует (удаляет) все слова "Watcher". Второй фильтр уже никогда не найдёт соответствий, так как "Watcher" больше недоступен. Корректный порядок для этих двух фильтров был бы таким: WebSite-Watcher Watcher Здесь первый фильтр игнорирует (удаляет) все слова "WebSite-Watcher". Второй фильтр может затем игнорировать все оставшиеся слова "Watcher". Устаревшие фильтры Устаревшие игнорируемые фильтры автоматически обнаруживаются и удаляются через некоторое время после того, как они больше не находят никаких соответствий. Нет необходимости удалять игнорируемые фильтры вручную. Такое поведение можно отключить в секции «Тонкая настройка (Tweak)» (но мы не рекомендуем делать это). Устаревшие отслеживаемые фильтры не удаляются автоматически, вы должны обслуживать эти фильтры вручную. Не забывайте проверить настройки Вашего фильтра Функция "Тест фильтра" позволяет Вам всегда проверять определения фильтра путем сравнения фильтруемого текстового содержимого новой страницы с фильтром текстового содержимого старой страницы. 1. Откройте свойства закладки 2. Нажмите кнопку "Мастер фильтра" (или на текст "Ручной фильтр") 3. Введите определения фильтра Похожие темы Подстановочные знаки Регулярные выражения Специальный фильтр WebSite-Watcher имеет только некоторые встроенные опции фильтра, которые могут быть только включены или отключены. Эти фильтры работают для всей страницы, а не только для определённых частей фильтра Игнорируемые/Отслеживаемые. Игнорировать все тэги HTML Этот фильтр по умолчанию включен и возвращает только реальное, читаемое текстовое содержание страницы, а все HTML-тэги игнорируются. Этот фильтр должен отключаться только в специальных случаях, например, когда Вы хотите мониторить любые изменения в исходном коде страницы. Исходный код "this is a <b>bold</b> word" содержит HTML-теги <b> и </b>, которые разрешают Вашему браузеру показывать слово "bold" полужирным шрифтом. Этот фильтр удаляет все © 2014 Aignesberger Software GmbH 31 WebSite-Watcher 2014 HTML-тэги, в результате остаётся чистый текст "this is a bold word". Игнорировать Верхний/Нижний регистр Этот фильтр включен по умолчанию и игнорирует все изменения верхнего/нижнего регистра. Если Вы хотите получать уведомления об изменениях регистра, тогда Вам придется отключить этот фильтр. Игнорировать записи в выпадающих полях и полях списков Если этот фильтр включен, то WebSite-Watcher игнорирует все записи в выпадающих полях и в полях списков. Отключите этот фильтр, если вы хотите контролировать эти записи. Знайте, что для них нет никакой возможности выделять новые или изменившиеся записи. Техническое описание: Игнорирует всё между HTML-тегами <option> и </option>. Сортировка контента страницы Этот фильтр сортирует все слова или предложения на странице и был реализован для некоторых специальных ситуаций. Если Вы отслеживаете, например, результаты поиска, в которых порядок найденных элементов каждый раз разный, то WebSite-Watcher будет уведомлять об обновлении при каждой проверке. Этот фильтр сортирует все слова или предложения на странице, и Вы не будете получать уведомление об обновлении, если изменён только порядок отображения найденных элементов. Игнорировать удалённые элементы (сообщать, если содержание добавлено/изменено) Если эта опция включена, Вы будете уведомлены об изменении только в случае, когда добавилось или изменилось содержание страницы, но не когда содержание было только удалено. Отслеживать все изменения в адресах ссылок Если Вы хотите знать об обновлении адресов ссылок на изменённой странице, то Вы должны использовать этот фильтр. Адреса ссылок обычно игнорируются фильтром "Игнорировать все тэги HTML". Отслеживать все изменения в адресах изображений Если Вы хотите знать об обновлении адресов изображений на изменённой странице, то Вы должны использовать этот фильтр. Адреса изображений обычно игнорируются фильтром "Игнорировать все тэги HTML". Минимальное количество новых/изменённых слов По умолчанию WebSite-Watcher предупреждает об обновлении, если обнаружено, по крайней мере, одно изменение. С этой опцией Вы можете определить количество новых/измененных слов, которое должно быть на странице, чтобы получить уведомление об обновлении. Окно "Версии "Тест фильтра" отображает количество новых/измененных слов. Если настроено, то игнорируется весь удалённый контент, а для обнаружения обновления используются только новые и измененные слова. Зависимость настроек от типа страницы RSS / Atom каналы WebSite-Watcher автоматически определяет и преобразует каналы RSS/Atom в читаемый формат. Вы можете использовать такие же функции, которые доступны для веб-страниц, например, для контроля RSS каналов по ключевым словам. По умолчанию не требуется никаких специальных настроек. Если WebSite-Watcher не может автоматически обнаружить каналы RSS/Atom, то вы можете попытаться изменить настройки типов файлов в свойствах закладки с "Автоопределение" на "rss". Форумы, основанные на таблицах WebSite-Watcher поддерживает два различных метода для обработки веб-форумов: 1. Форум-плагины 2. Форум-шаблоны Форум-плагины © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 32 Предопределенные плагины доступны для крупных форумов с макетом по умолчанию (например, phpBB, SMF, и т.д.) и могут быть выбраны в свойствах закладки или с помощью информационной панели браузера. WebSite-Watcher выполняет различные тесты на совместимость при выборе форум-плагина, чтобы его можно было использовать с выбранной закладкой. Форум-шаблоны WebSite-Watcher поддерживает форум-шаблоны для форумов, основанных на таблицах, особенно для списков тем. Такие списки тем должны содержать: 1. Заголовок таблицы Заголовок указывает WebSite-Watcher, где располагается начало списка тем, например в строке: Topics | Replies | Author | Views | Last Post 2. Время "Последнего сообщения" (для темы) Каждые поток/тема должны иметь время последнего сообщения, например, "09:13 AM". Это не работает, если форум показывает вместо времени "13 минут назад". 3. Колонтитул таблицы Нижний колонтитул указывает WebSite-Watcher, где располагается конец списка тем. Нижний колонтитул может содержать изменяемые номера, например "Отметить форум, как прочитанный" или "Страница 1 из 13". Если форум удовлетворяет всем этим требованиям, Вы можете использовать Мастер форума для создания форум-шаблона и требуемых определений фильтра, никакой дальнейшей настройки конфигурации в этом случае больше не потребуется. 1. Создайте новую закладку 2. Введите URL форума 3. Нажмите кнопку "Экстра" и выберите "Мастер форума" в подменю 4. Следуйте инструкциям Мастера форума Смотрите дополнительно раздел «Форум». PDF-файлы Мониторинг текстового контента PDF-файлов С помощью специального PDF-плагина, WebSite-Watcher может извлечь и преобразовать текстовое содержимое PDF-файла в HTML-страницу. Затем PDF файлы могут быть проверены и обработаны как обычные веб-страницы и WebSite-Watcher сможет выявить изменения в тексте. Этот PDF-плагин назначается автоматически при добавлении новых PDF-документов в список закладок. К сожалению, не всегда возможно извлечение текста из PDF-файла. PDF-плагин в WebSite-Watcher использует два различных решения для извлечения текста: 1. Внутренние процедуры преобразования 2. Извлечение текста с помощью системы IFilter IFilter является системой, используемой Windows Search для поиска в файлах в проприетарных форматах. IFilter для PDF-файлов, как правило, устанавливается автоматически с помощью программ-просмотрщиков PDF, например, с Adobe Reader. Если одно из этих двух решений не сработало, есть еще хороший шанс, что другое решение сможет извлечь текст из PDF-файла. © 2014 Aignesberger Software GmbH 33 WebSite-Watcher 2014 Инструменты сторонних разработчиков для преобразования PDF-файлов Как альтернативу описанному выше внутреннему решению, WebSite-Watcher может также использовать внешние инструменты для преобразования PDF-файлов в веб-страницы. Вот шаги по выбору плагина для внешних инструментов преобразования: 1. Откройте свойства закладки 2. Выберите вкладку "Дополнительно" 3. Выберите "Плагин" с левой стороны 4. Нажмите кнопку "Выбрать плагин" 5. Выберите один из доступных PDF-плагинов Для такого внешнего решения его необходимо установить как дополнительный PDF-инструмент. Мониторинг PDF-файлов без плагинов Если для мониторинга PDF файлов плагин не используется, то они обрабатываются как двоичные файлы. В зависимости от журнала сервера, используется один или несколько из следующих методов проверки: Проверка PDF-документа по дате файла Проверка PDF-документа по размеру файла Проверка частей контента файла В данном случае, это не представляет возможным выделить изменения текста или использовать фильтр для игнорирования нежелательного контента. Word / Excel файлы Мониторинг контента документов Word/Excel С помощью специального плагина, WebSite-Watcher может конвертировать документы Word/Excel размещённые на веб-странице. Тогда они могут быть проверены и обработаны как обычные веб-страницы и WebSite-Watcher может выявлять изменения в тексте. Этот плагин автоматически назначается при добавлении новых документов Word/Excel в список закладок. Использование Microsoft Office для конвертирования По умолчанию WebSite-Watcher использует внутренние процедуры преобразования для конвертирования файлов Word и Excel в веб-страницы. Если в системе установлен Microsoft Office 2003 или выше, то вы также можете использовать Microsoft Office для преобразования этих файлов (лучшее качество, особенно для файлов Word). Имеются отдельные плагины, использующие Microsoft Office для конвертации. Мониторинг файлов Word/Excel без плагинов Если для мониторинга документов Word/Excel плагин не используется, то они обрабатываются как двоичные файлы. В зависимости от журнала сервера, используется один или несколько из следующих методов проверки: Проверка документов Word/Excel по дате файла Проверка документов Word/Excel по размеру файла Проверка частей файлового контента В данном случае, это не представляет возможным выделить изменения текста или использовать фильтр для игнорирования нежелательного контента. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 34 FTP-файлы и каталоги FTP-файлы и каталоги FTP-файлы и каталоги могут отслеживаться после ввода FTP-адреса в поле URL закладки. Для проверки отдельных файлов Вы должны использовать завершённый URL, содержащий полный путь к файлу и имя файла. WebSite-Watcher проверит дату файла и его размер, но никакое содержимое передаваться не будет. Для проверки каталога последний символ URL должен быть наклоненной вправо чертой / (без имени файла)! Как проверять содержание (текст) файла С помощью метода проверки "автоматический" файл проверяется по его дате и размеру. Если Вы хотите проверить его по содержанию (например, текстовый файл), Вы должны изменить метод проверки с "автоматический" на "по содержанию". Тогда файл будет полностью загружен и обработан как web-страница. Защищённые паролем FTP-файлы / каталоги По умолчанию WebSite-Watcher выполняет анонимную FTP-авторизацию. Если FTP-сервер защищён паролем, Вы должны ввести имя пользователя и пароль в свойствах закладки (Дополнительно + Авторизация сервера). Изображения Если адрес графического файла вводится в адресной строке закладки, то изображение будет проверяться по содержанию и WebSite-Watcher сможет выявлять изменения в изображении. В этом случае не требуется никаких специальных настроек. Двоичные файлы WebSite-Watcher может мониторить двоичные файлы (например, файлы ZIP или EXE), не скачивая их. В зависимости от лог-файла сервера, используются один или несколько из следующих возможных методов: Проверка по дате файла Проверка по размеру файла Проверка части контента файла Обычно для проверки двоичных файлов не требуется никаких специальных настроек. Если WebSite-Watcher не может автоматически идентифицировать двоичный файл (например, когда сценарий перенаправляет к двоичному файлу), то Вы должны изменить тип файла с "автоопределение" на "двоичный" ("binary"). Локальные файлы и папки WebSite-Watcher умеет отслеживать локальные файлы и папки по введённому абсолютному пути в поле URL закладки, например "c:\docs\judo.doc" или "d:\docs\". Отслеживание каталога с вложенными подкаталогами Если Вы хотите проверять папку со всеми файлами и подпапками, Вы должны использовать функцию Отслеживание всей страницы (Отслеживание ссылок). Рекомендуется начать со значения глубины ссылки 1 и увеличивать его по необходимости. Каталоги и дата изменения Если любой файл в каталоге изменён, то также дата такого каталога тоже изменена. Это, вероятно, даст Вам ложные уведомления об обновлении, которых можно избежать следующим образом: © 2014 Aignesberger Software GmbH 35 WebSite-Watcher 2014 1. Создание соответствующего фильтра Создание соответствующего фильтра с помощью Мастера фильтра. 2. Использование даты создания папки вместо даты изменения папки В качестве альтернативы поведению по умолчанию Вы можете включить отображение даты создания вместо даты изменения для папок, введя следующую строку в секции Tweak в конфигурации программы: CheckLocalFolderUseCreationDate=1 Проверка по снимку экрана (скриншоту) Если страница содержит контент, который не может контролироваться при помощи всех имеющихся вариантов (например, содержание, которое выводится с Java), вы можете попробовать использовать функцию "Проверка по снимку экрана". Этот метод проверки открывает страницы в скрытом окне Internet Explorer, делает скриншот и сохраняет его как PNG-файл. Когда Вы откроете закладку, Вы увидите скриншот, который будет использоваться для обнаружения обновлений. WebSite-Watcher может также выявлять изменения в сохраненном скриншоте. При необходимости можно определить пользовательский размер окна и/или области, которую вы хотите захватить. По умолчанию WebSite-Watcher использует окна шириной 1024 пикселя и вычисляет высоту автоматически. Многие параметры, конечно, не работают с этим методом, но у вас есть дополнительные "возможности" для мониторинга содержания, которое в противном случае не отслеживалось бы. 1. Откройте свойства закладки 2. Выберите вкладку "Проверка" 3. Выберите технологию "Снимок экрана" Страницы, защищённые паролем Аутентификация сервера Аутентификация сервера - это специальный метод защиты страниц от публичного доступа. Вы можете идентифицировать тип входа в систему и когда появится небольшое диалоговое окно, Вы должны ввести имя пользователя и пароль, например, как: © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 36 Если появляется такой диалог, Вы должны ввести имя пользователя и пароль в свойствах закладки (Дополнительно + Аутентификация сервера) 1. Откройте свойства закладки 2. Выберите вкладку "Дополнительно" 3. Выберите "Логин" ("Login") с левой стороны 4. В секции "Вход через аутентификацию сервера" введите имя пользователя и пароль Если поля имя пользователя и пароль размещены на веб-странице, то для входа через web-форму, Вы должны записать макрокоманду проверки. Базовая web-авторизация / Макрокоманды проверки Что такое базовая web-авторизация? Базовая web-авторизация - это авторизация, при которой поля имени пользователя и пароля размещаются на web-странице (другой тип авторизации - это аутентификация сервера, при которой появится небольшое окно для ввода имени пользователя и пароля). Большинство защищённых паролем страниц используют базовую web-авторизацию. Эта авторизация не работает со стандартной технологией, это зависит от сервера и web-мастера, какая технология авторизации осуществляется. WebSite-Watcher и базовая web-авторизация К сожалению нет общего способа автоматизации базовой web-авторизации. Для обработки базовой web-авторизации, WebSite-Watcher поддерживает технологию, называемую Макрокоманды проверки. Макрокоманда может быть создана интерактивно с помощью встроенного инструмента МиниБраузер, записывающего все Ваши шаги, которые Вы сделаете для авторизации и перехода к странице, которую хотите отслеживать. WebSite-Watcher выполняет все эти шаги, когда закладка проверяется на обновление. Для записи новой макрокоманды нажмите кнопку "Check-Macro " в свойствах закладки, после чего будет отображен диалог. © 2014 Aignesberger Software GmbH 37 WebSite-Watcher 2014 Есть множество решений выполнения входа в систему, WebSite-Watcher поддерживает 3 разных технологии которые могут использоваться для записи макрокоманды. Запись динамических значений (Record dynamic values) Динамический метод пробует сохранить только введённые поля формы и использовать всё остальное из web-страницы, когда проверяется закладка (например, динамически генерируемые идентификаторы сессии - session ID). Этот метод обычно работает для страниц без Javascript. Если страница требует Javascript, Вы должны использовать опцию "Internet Explorer Macro" ("Макрос Internet Explorer"). Запись статических значений (Record static values) Статический метод (Record static values) сохраняет всё в том виде, как это доступно при записи макрокоманды. Этот метод не будет работать для страниц с Session-ID или другими динамическими значениями. Вы должны использовать это метод только тогда, когда динамический метод (Record dynamic values) не работает. Этот метод обычно работает для страниц без Javascript. Если страница требует Javascript, Вы должны использовать опцию "Internet Explorer Macro" ("Макрос Internet Explorer"). Макрос Internet Explorer (Internet Explorer Macro) Этот метод работает полностью по-другому и записывает только введённые данные и щелчки мышью. Когда макрокоманда выполняется, начальный url загружается в скрытом окне Internet Explorer и выполняет записанные шаги. Используйте этот метод тогда, когда другие методы не работают или когда страница требует Javascript. Технически это звучит сложно, но вот правило для упрощения процесса: Если один метод не сработал, попробуйте другой. Лучший путь - это сначала пробовать метод № 1, если он не сработает, то пробуйте метод № 2 и метод № 3. Session-ID располагается в пути URL В некоторых случаях страница вставляет динамический Session-ID в путь URL, который должен быть обработан и определен вручную с помощью регулярных выражений. Например: http://www.aignes.com/download/00938-8837-8872/files/file.htm здесь 00938-8837-8872 является Session-ID. Не используйте эту функцию для URL, которые имеют формат (Session-ID как параметр): http://www.aignes.com/index.htm?sessionID=9987-2234123 Вам потребуется знание синтаксиса Session-ID, тогда Вы сможете задать регулярное выражение для извлечения Session-ID из URL. Не добавляйте тире и наклоненную вправо черту, МиниБраузер сделает это автоматически. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 38 Примеры: \d+\-\d+\-\d+ найдёт Session-ID формата 123-456-789 (ровно два символа минуса) \d[0-9,a-z,-]+ Session-ID в формате 1sij9-13j8-1234 (число в начале, последующие числа, символы и/или символы минуса) Диалоги GET / POST при записи макрокоманд Для каждого URL, который открыт при записи макрокоманды, появляется специальное диалоговое окно и показывает используемую технологию (GET или POST), URL и некоторые дополнительные параметры (например, значения после заполнения формы). Обычно Вы можете просто нажать кнопку GET/POST для продолжения записи. Только, если Вы производите выход из системы, Вы должны отметить соответствующее поле в этом диалоге. Логины с CAPTCHA Если вход в систему защищён с помощью CAPTCHA, и пользователь должен ввести буквы и/или цифры из искажённого изображения, то Вы можете использовать технологию "Макрос Internet Explorer". После записи макроса, Вы должны после ввода букв/цифр установить флажок "Этот шаг защищён CAPTCHA". При проверке страницы, WebSite-Watcher покажет отдельное окно браузера, где вы должны будете ввести эти буквы/цифры, после чего WebSite-Watcher сможет продолжить проверку закладки. Демонстрации и видеофильмы По ссылке http://www.aignes.com/videos.htm Вы можете найти дополнительные видеоматериалы, показывающие как записываются и используются макрокоманды проверки. 1. Создайте новую закладку 2. Нажмите кнопку "Check-Macro" в свойствах закладки 3. В отдельном окне введите стартовый URL для макроса 4. Нажмите кнопку "Start recording" ("Начать запись") 5. Перейдите к странице, которую хотите отслеживать 6. Выполните выход в случае необходимости (и проверьте соответствующий флажок, сообщающий WebSite-Watcher, что вы выполняете выход) 7. Кнопка OK внизу диалога остановит запись и возвратит к свойствам закладки 8. Нажмите кнопку "Проверить !" для проверки страницы Защищённые паролем FTP-файлы По умолчанию WebSite-Watcher выполняет анонимную FTP-авторизацию. Если FTP-сервер защищён паролем, Вы должны ввести имя пользователя и пароль доступа в свойствах закладки (Дополнительно + Авторизация сервера). 1. Откройте свойства закладки 2. Выберите вкладку Дополнительно 3. Выберите "Login" ("Логин") с левой стороны 4. В разделе "Login | Авторизация сервера", введите имя пользователя и пароль Подсветка изменений Методы подсветки Если обнаружено обновление, WebSite-Watcher подсвечивает весь изменившийся текст на странице. WebSite-Watcher поддерживает различные методы подсветки изменений в тексте: © 2014 Aignesberger Software GmbH 39 WebSite-Watcher 2014 Стандартный Стандартный метод - это универсальный метод, который должен работать почти со всеми типами страниц. Он был разработан для игнорирования модификаций в структуре страницы (например, когда содержание перемещено в другое место) и работает очень хорошо для страниц новостей. Это универсальный метод, в то время как другие методы оптимизированы для специальных ситуаций или типов страниц. Основанный на таблице (подсветка всех изменённых строк) Вы можете использовать этот метод подсветки, если хотите подсвечивать полностью строки таблицы при изменении содержания по меньшей мере одной ячейки. Для предотвращения подсветки всей строки при изменении в ней чисел только в одном столбцов, Вы можете выбрать опцию "Изменение числа в столбце не приводит к подсветке всей строки". Точный Точный метод используется для более подробного анализа обнаружения изменений. Он может хорошо работать со страницами, в которых обновлены только небольшие элементы, например, отдельные числа в таблице. В зависимости от страницы этот метод может работать лучше, чем стандартный. 1. Откройте свойства закладки 2. Выберите вкладку Дополнительно 3. Выберите "Подсветка изменений" с левой стороны 4. Введите конфигурацию подсветки Подсветка измененных изображений на странице WebSite-Watcher может дополнительно рисовать рамку вокруг измененных изображений. Как обнаруживаются изменённые изображения? Это зависит от конфигурации изображений, если WebSite-Watcher может нарисовать границу вокруг измененных изображение. WebSite-Watcher поддерживает три разных конфигурации для загрузки и отображения изображений: 1. Загрузка всех изображений (рекомендуется) Если обновление обнаружено, WebSite-Watcher загружает все изображения на жесткий диск. С этой опцией WebSite-Watcher использует содержимое изображения для обнаружения изменения изображения. Это самый надежный способ поставить подсвечиваемые рамки вокруг измененных изображений. 2. Использование абсолютных адресов изображений (не рекомендуется) С этой настройкой WebSite-Watcher загрузит только web-страницу и загрузит изображения с её сервера, как только Вы откроете страницу в Вашем браузере. Если Вы используете этот метод, WebSite-Watcher будет использовать имена файлов изображений для обнаружения новых или изменённых изображений. 3. Показывать серые участки вместо изображений (не поддерживается) Это самый быстрый метод проверки и открытия страниц, но Вы будете видеть серые блоки вместо изображений. С этой опцией WebSite-Watcher невозможно подсвечивать изменения изображений. Обратите внимание, что веб-страница помечается как обновлённая, только когда были обнаружены изменения текста, а не в случае, когда было изменено только изображение! Если вы желаете наблюдать за конкретным изображением, вы можете поместить URL-адрес изображения в адресную строку закладки. 1. Откройте свойства закладки 2. Выберите вкладку Дополнительно 3. Выберите "Изображения" с левой стороны 4. Разрешите опцию "Загрузка всех изображений" 5. Выберите "Подсветка изменений" с левой стороны 6. Разрешите опцию "Подсветка изображений" Смотрите также раздел «Отображение изображений вместо серых участков». © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 40 Группы новостей Группы новостей Функциональность обработки групп новостей (Newsgroups) в WebSite-Watcher обеспечивает лёгкий путь отслеживания групп новостей на наличие заданных ключевых слов или отслеживания редкообновляемых групп новостей с низким трафиком. Вы можете также создавать новые статьи и ответы. Модуль группы новостей не заменяет реальную программу чтения новостей (newsreader), он имеет также некоторые ограничения для групп новостей с высоким трафиком, с чем лучше справляется типовая программа чтения новостей, которая имеет и повышенные возможности (например, фильтры, счёт и прочее). Функциональные возможности групп новостей работают только во встроенном в WebSite-Watcher браузере, невозможно открыть группы новостей во внешнем браузере. Сервер Конфигурация сервера новостей используется для определения всех серверов NNTP, с которыми вы работаете. Для каждого сервера Вы можете ввести описательное название, адрес сервера и порт. По умолчанию порт 119. Раздел идентификации содержит некоторые заранее заданные поля, которые используются, когда Вы отправляете новые статьи или ответы на них. Если идентификация не введена, то Вам придется вводить его каждый раз при добавлении новой статьи. Добавление группы новостей Выберите сервер В первом шаге Вы должны выбрать сервер новостей из раскрывающегося списка. Если в списке нет серверов, то нажмите кнопку "Сервер новостей..." для добавления и конфигурации сервера. Если Вы уже загружали доступные группы новостей для выбранного сервера, то этот список будет загружен автоматически. Загрузка доступных групп новостей может занять несколько минут. Обычно Вы можете отметить опцию "Загрузка доступных групп новостей с сервера" и список будет автоматически перезагружен в случае, если потребуется обнаружение новых групп новостей с сервера. Подписка на группы После нажатия кнопки "Вперёд" Вы увидите список всех доступных групп новостей для выбранного сервера. Отметьте поля в левой колонке для подписки на одну или более групп новостей. Для того, чтобы найти определённую группу, Вы можете ввести один или несколько элементов в поле поискового запроса. К примеру, "music rock" (без кавычек) добавит в список все группы новостей, содержащие "music" и "rock", например, группу новостей alt.music.modern.rock После того, как Вы подписались на группы новостей, в следующем шаге Вы увидите запрос - загружать или нет содержание групп новостей немедленно. Если нет, то будут отслеживаться только заголовки (автор и тема), а содержание (содержание статьи) будет загружено по требованию. Когда следует использовать опцию "Загружать содержание групп новостей"? Вам нужно загрузить лишь содержание новостей, если Вы хотите контролировать текст стать по введённым ключевым словам. Во всех других случаях это не имеет реального смысла, так как проверка займёт больше времени и большее количество данных будет загружено. Использование этой опции означает, что Вы также загружаете сообщения для ответов на интересующие Вас темы. Если Вы хотите отслеживать группы новостей только на наличие новых сообщений и ответов, то Вы не должны использовать опцию "загружать сообщения". Проверка будет выполняться быстрее и © 2014 Aignesberger Software GmbH 41 WebSite-Watcher 2014 содержание загружаться автоматически, когда Вы откроете статью. Темы Этот диалог показывает все ответы для выбранной темы (для групп новостей). Реконструкция темы Если некоторые сообщения отсутствуют в потоке (например, в очень старых темах), вы можете вызвать "Тема + Реконструкция темы", чтобы загрузить все недостающие статьи. Ответ Если Вы хотите отправить ответ на статью, просто нажмите кнопку "Ответ" в панели инструментов. Цитаты в ответах: Если текст не выделен в оригинальном сообщении, то весь текст сообщения вставляется как цитируемый текст. Если текст выделен в оригинальном сообщении, то только выделенный текст вставляется как цитируемый. Ответы на статью WebSite-Watcher может также использоваться для создания новых групп новостей или отправки ответов на существующие сообщения. Ваши имя, e-mail и сигнатура могут быть заданы в диалоге конфигурации сервера. Цитаты в ответах: Если в оригинальном сообщении текст не выделен, то весь текст сообщения вставляется как цитируемый текст. Если в оригинальном сообщении выделен текст, то только выделенный текст вставляется как цитируемый. Нажатие на кнопку "Отправить" приведёт к немедленной отправке ответа на статью, никакой очереди или папки для исходящих ответов нет. Отчёт / Экспорт Краткий обзор / Шаблоны Функция Отчет/Экспорт позволяет создавать собственные отчеты в HTML, XML или любом другом текстовом формате. С шаблонами отчетов вы можете создавать свои собственные индивидуальные отчеты. Шаблон отчета является HTML-файлом (для HTML-отчетов) или текстовым файлом (для текстового экспорта), который содержит несколько предопределенных полей данных. Эти поля данных будут заменены реальными значениями, при создании отчета. Отчёты всегда записываются в кодировке UTF-8! Как создать отчёт? 1. 2. 3. 4. 5. Вызовите "Отчёт/Экспорт" в меню Инструменты Выберите закладки, которые должны быть включены в отчёт Выберите шаблон отчёта Выберите выходной файл, в котором должен быть создан отчёт Нажмите кнопку "Start report" ("Создать отчёт") Структура шаблонов отчёта Структура шаблона HTML-отчёта (без папок): © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 42 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>your title</title> </head> <body> Your header text {wsw_begin_url} <a href="{wsw_url_url}" target="_top">{wsw_url_name}</a><br> {wsw_url_text}<br> date: {wsw_url_date_changed}<br> {wsw_end_url} <br> <br> report date: {wsw_report_date}<br> </body> </html> Структура шаблона HTML-отчёта (с папками): <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>your title</title> </head> <body> Your header text {wsw_begin_folder} Folder: <b>{wsw_folder_name}</b><br><br> {wsw_begin_url} <a href="{wsw_url_url}" target="_top">{wsw_url_name}</a><br> {wsw_url_text}<br> date: {wsw_url_date_changed}<br> {wsw_end_url} {wsw_end_folder} <br> <br> report date: {wsw_report_date}<br> </body> </html> Поля данных для закладок Все поля закладки помещаются между символами { и } и будут заменены реальными значениями во время создания отчета. Начало/конец блока закладки {wsw_begin_url} {wsw_end_url} Два этих поля данных определяют начало и конец закладки. © 2014 Aignesberger Software GmbH 43 WebSite-Watcher 2014 Для каждой закладки будет экспортироваться всё расположенное между этими полями. Поля закладки Следующие поля могут быть размещены между {wsw_begin_url} и {wsw_end_url}: {wsw_url_url} URL закладки. Если есть URL, указанный в позиции Отчёт (свойства закладки), то он будет использоваться вместо URL из закладки. {wsw_url_name} Имя закладки. Если есть название, определённое в позиции Отчёт (свойства закладки), то оно и будет использовано вместо названия закладки. {wsw_url_text} "Описание страницы", введённое в позиции Отчёт (в свойствах закладки). {wsw_url_highlighted_changes(MAXLEN)} Извлекает все изменения со страницы и отображает их как текст. MAXLEN есть максимальное количество символов, которые должны быть отображены. Если Вы хотите отобразить первые 200 символов, то используйте поле {wsw_url_highlighted_changes(200)}. Если доступны изменения, то тэг <br> автоматически добавляется в конец. {wsw_url_date_changed} Дата последнего обновления. {wsw_url_date_checked} Дата последней проверки. {wsw_url_date_created} Дата создания. {wsw_url_id} Уникальный ID закладки. ( = имя локально сохраненного файла без расширения) {wsw_url_follow_master_id} Если закладка является частью списка отслеживания ссылок, то это поле является уникальным идентификатором (ID) закладки из Мастер-закладки. {wsw_url_filename} Имя сохраняемого локально файла без пути (новая версия). {wsw_url_path_filename} Абсолютное имя сохраняемого локально файла (новая версия). {wsw_url_path_filename_chg} Абсолютное имя сохраняемого подсвеченными изменениями). (версия с {wsw_url_path_filename_chg1} Абсолютное имя сохраняемого локально файла (версия подсвеченными изменениями) и якорь первого изменения. с {wsw_url_relpath_filename} Относительные путь + имя локально хранящегося файла (новая версия). Относительный путь означает, что путь к кэш-папке *_WSW удалён, не имеет косой черты. Это поле может использоваться в комбинации с тэгом <BASE HREF="...">. {wsw_url_relpath_filename_chg} Относительные путь + имя (без косой черты) локально сохраненного файла (версия с подсветкой изменений). Относительный путь означает, что путь к кэш-папке *_WSW удалён, не имеет косой черты. Это поле может использоваться в комбинации с тэгом <BASE HREF="...">. {wsw_url_relpath_filename_chg1} Относительные путь + имя локально хранящегося файла (версия с подсветкой изменений) и якорь первого изменения. Относительный путь означает, что путь к кэш-папке *_WSW удалён, не имеет косой черты. Это поле может использоваться в комбинации с тэгом <BASE HREF="...">. {wsw_url_foldername} Имя папки закладки. {wsw_url_folderpath} Абсолютный путь папки закладки, например: "Папка\Подпапка". {wsw_url_note} Примечание к закладке без стилей текста. {wsw_url_note_format} Примечание к закладке со стилями текста. Используются стили текста - полужирный, курсив и подчёркнутый, преобразованные для HTML-тэгов. {wsw_url_field1} {wsw_url_field2} {wsw_url_field3} Дополнительные информационные поля. © 2014 Aignesberger Software GmbH локально файла Справка по WebSite-Watcher 44 {wsw_url_checkstatus} Состояние последней проверки. {wsw_folder_depth_tab} Заменяет и вставляет в глубину папки символы табуляции. Для глубины папки равной 3, WebSite-Watcher вставит 3 символа табуляции. Поля данных для папки Ниже описаны поля, которые необходимы только для отчетов с папками. Начало/конец блока папки Два этих поля данных определяют начало и конец папки. Для каждой папки будет экспортироваться все, что указано между этими двумя полями. {wsw_begin_folder} {wsw_end_folder} Поля папки Следующие поля могут быть помещены между {wsw_begin_folder} и {wsw_begin_url}. Имя папки. {wsw_folder_name} {wsw_folder_name_absolute} Абсолютный путь папки. Подпапка "Internet" в папке "Tools" будет отображаться как "Tools / Internet" {wsw_folder_depth_tab} Заменяет и вставляет глубину вложенности папки символами табуляции. Вы должны использовать это поле, если хотите выровнять закладки в пределах папки. Для глубины папки 3, WebSite-Watcher вставит три символа табуляции. Это поле также может быть размещено между {wsw_end_url} и {wsw_end_folder}. Пример: {wsw_begin_folder} Folder: {wsw_folder_name}<br> {wsw_begin_url} URL datafields... {wsw_end_url} {wsw_end_folder} Общие поля данных/опции Общие поля данных Следующие поля не должны использоваться между {wsw_begin_folder} и {wsw_end_folder}, и между {wsw_begin_url} и {wsw_end_url}. {wsw_report_date} Будет заменено датой создания отчёта (текущей датой). Опции Следующие поля могут использоваться для изменения некоторых свойств в отчёте. Просто вставьте одну или несколько из этих областей в начале шаблона отчета. {wsw_ansi} По умолчанию сообщение записывается в формате UTF-8. Если Вы вставите это поле в шаблон отчёта, отчёт будет записан в формате Ansi. {wsw_encode_html} Кодирует полученные символы HTML (например, символы < и > будут сохранены как < и >). Используйте эту опцию если Вам необходим экспорт в форматы XML, RSS или OPML. {wsw_root_folder_bottom} Если определено, WebSite-Watcher вставит закладки корневой папки внизу отчёта (по умолчанию, они вставляются в начале доклада). © 2014 Aignesberger Software GmbH 45 WebSite-Watcher 2014 Действительно только в сочетании с папками. {wsw_folder_root_without_overhead} Записывает закладки в корневую папку без определённого выше шаблона. ("выше" - это содержание между метками {wsw_begin_folder} и {wsw_begin_url}, также между маркерами {wsw_end_url} и {wsw_end_folder}). Действительно только в сочетании с папками. {wsw_folder_not_nested} WebSite-Watcher записывает вложенные папки в отдельный, строчный список. Эта опция может использоваться в комбинации с полем {wsw_folder_name_absolute} вместо относительных имён папок. Действительно только в сочетании с папками. {wsw_hide_empty_folder} Скрывает пустые папки. Эта опция работает только в комбинации с папками и опцией {wsw_folder_not_nested}. {wsw_dateformat(...)} Определяет формат даты в отчёте. Вы можете использовать следующие значения: yy - текущий год в виде двузначного числа yyyy - текущий год в виде четырёхзначного числа m - текущий месяц с 1 или 2 цифрами, без начального нуля (1-12) mm - текущий месяц с 2 цифрами, с начальным нулём (01-12) mmm - название текущего месяца, 3 символа (jan, feb...) mmmm - полное название текущего месяца d - текущий день с 1 или 2 цифрами, без начального нуля (1-31) dd - текущий день с 2 цифрами, с начальным нулём (01-31) ddd - наименование текущего дня с 2 символами dddd - наименование текущего дня hh - часы nn - минуты ss - секунды Пример: {wsw_dateformat(dd-mmm-yyyy)} Переменная {wsw_dateformat(internet)} использует интернет-формат даты/времени, например: Tue, 13 Mar 2007 13:39:53. Пример: Простой список URL в формате HTML Следующий шаблон выполняет экспорт закладок в простой список. Каждая закладка отображает первые 200 символов подсвеченных изменений и ссылку на файл с подсвеченными изменениями. <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>WebSite-Watcher Report</title> </head> <body> {wsw_begin_url} <a href="{wsw_url_path_filename_chg1}"><b>{wsw_url_name}</b></a><br> <blockquote> {wsw_url_highlighted_changes(200)}<br> <i>date: {wsw_url_date_changed} <a href="{wsw_url_path_filename_chg1}">{wsw_url_path_filename_chg1}</a></i> </blockquote> <br> {wsw_end_url} <br> report date: {wsw_report_date}<br> </body> © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 46 </html> Пример: Экспорт в формат CSV В следующем примере выполняется экспорт имени закладки и URL в текстовый CSV-файл. Вначале записывается заголовок CSV. "Name","Url"{wsw_begin_url} "{wsw_url_name}","{wsw_url_url}"{wsw_end_url} Пример: Экспорт в файл закладок Opera Следующий шаблон выполняет экспорт папок и закладок в формат файла закладок браузера Opera. {wsw_root_folder_bottom}{wsw_folder_root_without_overhead}Opera Hotlist version 2.0 Options:encoding=utf8,version=3 {wsw_begin_folder} #FOLDER NAME={wsw_folder_name} {wsw_begin_url} #URL NAME={wsw_url_name} URL={wsw_url_url} {wsw_end_url} {wsw_end_folder} Подстановочные знаки и регулярные выражения Краткий обзор Подстановочные знаки и регулярные выражения поддерживаются в различных функциях WebSite-Watcher, в особенности системой фильтров для игнорирования или наблюдения за содержанием web-страниц. WebSite-Watcher поддерживает три метода фильтрации или поиска в тексте: 1. Конкретные слова и фразы 2. Подстановочные знаки 3. Регулярные выражения Все три метода работают без учета регистра ("HELLO" то же самое, что и "hello"). Подстановочные знаки WebSite-Watcher поддерживает следующие три типа фильтров подстановки с ограничением разрешается только один подстановочный знак в выражении фильтра: *КонецТекста Эта форма фильтрует всё от начала страницы до первого вхождения в "КонецТекста". Например: *Daily News НачалоТекста*КонецТекста Эта форма фильтрует все области текста, начиная от "НачалоТекста" и до "КонецТекста". © 2014 Aignesberger Software GmbH 47 WebSite-Watcher 2014 Например: Downloads:*Publisher НачалоТекста* Эта форма фильтрует всё от последнего вхождения "НачалоТекста" до конца страницы. Пример: Users online* Все указанные подстановочные фильтры не чувствительны к регистру, они внутренне преобразуются в нижний регистр. Регулярные выражения Используя регулярные выражения можно выполнять сложный поиск и фильтрацию выражений. Все регулярные выражения по умолчанию нечувствительны к регистру символов. Regex-функции Регулярные выражения должны размещаться в одной из следующих функций: regex( ... ) Фильтрует указанное регулярное выражение Например: regex(\d+ downloads) FirstRegex( ... ) Фильтрует только первое вхождение определенных регулярных выражений Например: FirstRegex(\d+ downloads) StartToRegex( ... ) Фильтрует всю страницу, начиная от первого вхождения указанного регулярного выражения Например: StartToRegex(\d+ visitors) RegexToRegex( ... , ... ) Фильтрует всю страницу между двумя регулярными выражениями Например: RegexToRegex(Downloads\: \d+,License\:) RegexToEnd( ... ) Фильтрует всю страницу, начиная от последнего вхождения указанного регулярного выражения, и до конца страницы Например: RegexToEnd(\d+ users online) RegexCmp( ... ) Находит определенное регулярное выражение, извлекает из результата все цифры и сравнивает их с заранее определенным числом. Это может использоваться, например, для извлечения и сравнения цены. Подобно нахождению соответствия, только когда определенная цена выше 1000. Например: RegexCmp(\d+([,\.]\d+)* Euro;,; > 1000) Функцию regexcmp можно использовать в функциональности Ключевые слова, в Фильтрах игнорирования и Фильтрах отслеживания. Подробное описание можно найти ниже. Знаки регулярных выражений Ниже Вы можете найти список полезных знаков регулярных выражений. \ Обратный слеш (наклоненная влево черта) подразумевает любой символ, и поэтому может использоваться для замены символов со значением как литер, так и специальных символов. Например, '\[' соответствует '[', а '\\' соответствует '\'. . Точка соответствует любому символу. Например, 'go.d' соответствует 'gold' и 'good'. { } {n} ... Соответствие точно n времени {n,} ... Соответствие по крайней мере n времени {n,m} ... Соответствие по крайней мере n времени, но не более, чем m времени © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 48 [ ] Строка, заключённая в квадратные скобки, соответствует любому символу в этой строке, но не в других строках. Например, '[xyz]' соответствует только 'x', 'y', или 'z', диапазон символов может быть определён двумя символами, разделёнными знаком '-'. Обратите внимание, что '[a-z]' соответствует символам строго по алфавиту, в то время как '[z-a]' этому никогда не соответствует. [-] Дефис, заключённый в квадратные скобки, показывает диапазон изменения символов. Например [b-o] соответствует любому символу от b до o. | Вертикальная черта соответствует любому выражению, расположенному с обеих сторон от неё. Например, bar|car соответствует bar или car. * Звёздочка в конце строки соответствует любому числу появлений этой строки, сопровождающихся любыми символами, включая и нулевое количество символов. Например, bo* соответствует: bo, boo и booo, но не b. + Знак плюс в конце строки соответствует любому числу появлений этой строки, сопровождающихся любыми символами, кроме нулевого количества символов. Например, bo+ соответствует: boo и booo, но не bo или be. \d+ соответствует всем числам с одним или большим количеством цифр \d* соответствует всем числам с нулевым или большим количеством цифр \w+ соответствует всем словам с одним или более количеством символов a-z, A-Z и 0-9. \w+ найдёт title, border, width и прочее. Обратите внимание, что \w соответствует только числам и символам (a-z, A-Z, 0-9) ниже порядкового номера 128. \s соответствует разделителям (пробел, символы табуляции и возврата каретки/конца строки) .*? поиск нескольких символов, сколько возможно. a.*?b означает: "найти "a", потом столько символов, сколько возможно, потом "b" [a-zA-Z\xA1-\xFF]+ соответствует всем словам с одним или более количеством символов, содержащим a-z, A-Z и символы выше порядкового номера 161 (например, ä или Ü). Если Вы хотите находить слова с числами, то добавьте 0-9 к выражению: [0-9a-zA-Z\xA1-\xFF]+ По умолчанию, все регулярные выражения нечувствительны к регистру. Если вы добавляете (?-i) перед регулярным выражением, то он становится чувствительным к регистру. Например, regex((?-i)\d+ Comments) (?-i) RegexCmp(...) Функция RegexCmp находит определенное регулярное выражение, извлекает из результата все цифры и сравнивает их с заранее определенным числом. Если сравнение возвращает истину (true), то соответствие будет принято. Эта функция требует 3 параметра (разделённые символом ; ), правильным синтаксисом будет: regexcmp(регулярное выражение; символ десятичной точки; оператор числа) Параметры: регулярное выражение Это регулярное выражение извлекает со страницы определённое число. Результат может содержать буквы и цифры, например, как регулярное выражение, которое находит "Price: 49,00 Euro". Затем функция regexcmp извлечёт из найденного результата все числа и сравнит извлечённое число. символ десятичной точки Определяет, что используется на странице в качестве символа десятичной точки - точка или запятая. Допустимыми параметрами являются символы "." и "," (без кавычек). оператор числа допустимые операторы: = ... равно © 2014 Aignesberger Software GmbH 49 WebSite-Watcher 2014 < ... меньше чем <= ... меньше чем или равно > ... больше чем >= ... больше чем или равно <> ... не равно Число определяет число для сравнения и опционально может содержать символ десятичной точки, например 49,95 или 49.95. Разделители тысяч не допускаются. Пример: regexcmp(\d+([,\.]\d+)* Euro;,; > 49.95) Первый параметр ищет регулярное выражение "\d+([,\.]\d+)* Euro" и извлекает из найденных результатов все числа (включая символ десятичной точки). Например, 1449,95 Второй параметр определяет, какой параметр используется в качестве символа десятичной точки, в приведённом примере это символ "," Третий параметр сравнивает, выше ли ли цена, чем 49.95 Если извлечённая цена меньше или равна 49.95, то найденное соответствие пропускается. Если извлечённая цена больше, чем 49.95, то найденное соответствие принимается. Типовые примеры regex(bo*) будут найдены "b", "bo", "boo", "booooo" regex(bx+) будут найдены "bxxxxxxxx", "bxx", "bx" но не "b" regex(\d+) будут найдены все числа regex(\d+ visitors) будут найдены "3 visitors" или "243234 visitors" или "2763816 visitors" regex(\d+ of \d+ messages) будут найдены "2 of 1200 messages" или "1 of 10 messages" RegexToEnd(\d+ of \d+ messages) будет отфильтровано всё, начиная от последнего вхождения "2 of 1200 messages" или "1 of 10 messages" и до конца страницы regex(MyText.{0,20}) будут найдены "MyText" и следующие 20 символов после "MyText" regex(\d\d.\d\d.\d\d\d\d) будут найдены строки с датами формата 99.99.9999 или 99-99-9999 (точка в регулярных выражениях соответствует любому символу) regex(\d\d\.\d\d\.\d\d\d\d) будут найдены строки с датами формата 99.99.9999 regex(([_a-zA-Z\d\-\.]+@[_a-zA-Z\d\-]+(\.[_a-zA-Z\d\-]+)+)) будут найдены все адреса e-mail regexcmp(\d+([,\.]\d+)* Euro;,; > 49.95) будут найдены все цены в формате "9.999,99 Euro", но приняты только результаты с ценой выше 49,95 Euro Работа с разными файлами закладок Где хранятся закладки Файлы закладок Закладки хранятся в файлах баз данных с расширением *.wsw, загруженные кэшированные файлы © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 50 размещаются в связанном подкаталоге *_WSW. Если Ваш файл закладок имеет имя bookmarks.wsw, то все загруженные файлы хранятся в связанной подпапке bookmarks_WSW. Папка закладки Базы данных закладок могут храниться в любой папке. Расположение закладок по умолчанию: -или c:\Users\<user>\AppData\Roaming\aignes\WebSite-Watcher\bookmarks\ c:\Documents and Settings\<user>\Application Data\aignes\WebSite-Watcher\bookmarks\ Чтобы увидеть точную папку для текущего открытого файла закладки, Вы можете вызвать "Файл + База + Переместить файл закладки". Этот диалог покажет путь к папке, имя файла закладки и папку кэша. Перемещение файла закладок в другое место Вы можете использовать возможность "Переместить файл закладок" для перемещения базы данных закладок в новое место. 1. Нажмите "Файл" в главном меню 2. Выберите "База", затем "Переместить файл закладок" 3. Введите новое место размещения 4. Нажмите ОК Эти действия переместят все закладки, конфигурации и загруженные в кэш файлы в новое место. В зависимости от количества закладок эта операция может занять несколько минут. Экспорт/Импорт закладок между файлами закладок WebSite-Watcher предлагает интегрированный функционал Импорта/Экспорта для обмена отдельными закладками между файлами закладок. Эта возможность экспортирует/импортирует закладки со всеми конфигурациями и кэшированными файлами, но без структуры папок. Эта возможность располагается в меню Инструменты, пункт Импорт/Экспорт: Импорт закладок из файла экспорта (*.zip) Экспорт выбранных закладок в файл экспорта (*.zip) Для синхронизации двух файлов закладок (папок, закладок и загруженных кэшированных файлов), Вы должны использовать функцию Синхронизация. Синхронизация файлов закладок Возможность синхронизации позволяет выполнить синхронизацию текущего открытого файла закладок с выбранным конечным файлом закладок. WebSite-Watcher синхронизирует папки, закладки со всеми конфигурациями и загруженными кэш-файлами. WebSite-Watcher может производить следующие операции: Синхронизация перемещаемых закладок Если закладки были перемещены в другую папку, WebSite-Watcher синхронизирует эти перемещения. Этот шаг всегда выполняется независимо от выбранных опций. Добавление новых закладок Обновление изменённых закладок WebSite-Watcher использует дату "последней проверки" как эталонную дату. Закладка, которая является более актуальной будет скопирована в другой файл закладки. Удаление удалённых закладок Эта опция работает только в случае, если удалённые закладки доступны в Корзине. Если Вы пользуетесь функцией синхронизации, Вы обязательно должны держать удаленные закладки в Корзине значительное количество дней. Количество дней может быть настроено в © 2014 Aignesberger Software GmbH 51 WebSite-Watcher 2014 конфигурации программы. Передача всего между двумя компьютерами Передача файлов вручную Закладки хранятся в файлах баз данных с расширением *.wsw, загруженные кэшированные файлы размещаются в связанном подкаталоге *_WSW. Если Ваш файл закладок имеет имя "bookmarks.wsw", то все загруженные файлы хранятся в связанной подпапке "bookmarks_WSW". Чтобы перенести все закладки между компьютерами, вы должны через файловый менеджер скопировать этот файл и кэш-папку на второй компьютер. Переданные файлы закладки могут быть открыты с помощью Файл+Открыть второго компьютера. Передача через Резервное копирование/Восстановление WebSite-Watcher встроенный функционал Резервного копирования/Восстановления, который может использоваться для копирования или передачи программных настроек и/или баз данных закладок между компьютерами. Шаги для копирования закладок и настроек программы с одного компьютера на другой: 1. На ПК1: Щёлкните "Инструменты + Резервное копирование/Восстановление" 2. На ПК1: Выберите "Резервное копирование" и следуйте указаниям Мастера. Будет создан единственный ZIP-файл, в нашем примере он называется wsw_bookmark.zip. 3. Скопируйте файл wsw_bookmark.zip с ПК1 на ПК2 4. На ПК2: Щёлкните "Инструменты + Резервное копирование/Восстановление" 5. На ПК2: Выберите "Восстановление" и следуйте указаниям Мастера. На следующем шаге Мастер запросит "Файл резервной копии", здесь вы должны ввести файл wsw_bookmark.zip из шага #2 Передача через синхронизацию Чтобы передать две существующие базы данных закладки в синхронизации, Вы можете использовать функцию Синхронизация. Ошибки базы данных Перед тем, как применить один из следующих шагов, настоятельно рекомендуется сделать резервную копию поврежденной базы данных (файл *.wsw) и связанную с ней папку кэша (папка *_WSW). Просто чтобы знать, что вы всегда можете всё восстановить, если одно из этих действий не удастся. Если база данных закладки (файл с расширением *.wsw) имеет физические повреждения, то у вас есть возможность исправить или восстановить базу данных с одним из следующих шагов: 1. Восстановление из резервной копии Если у Вас есть рабочая до настоящего времени резервная копия Вашей базы данных закладок, то рекомендуется восстановить всё из резервной копии. Это всегда самое лучшее и надежное решение. По умолчанию, WebSite-Watcher ежедневно автоматически создаёт резервные копии (AutoBackup), которые могут быть восстановлены с помощью Инструменты + Резервное копирование/Восстановление. 1. Кликните "Инструменты" в главном меню 2. Выберите "Резервное копирование/Восстановление" 3. Выберите "Восстановить AutoBackup" и следуйте указаниям Мастера 2. Выполнение команды "Восстановить базу" Если у вас нет рабочего файла резервной копии или файл резервного копирования устарел, то вы можете выполнить команду "Восстановить базу". Это позволит восстановить базу данных и восстановить столько данных, сколько возможно. После использования этой команды, при © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 52 следующем запуске проверки могут выводиться ложные уведомления об обновлениях, особенно если у вас отключен специальный фильтр "Игнорировать все HTML-теги". 1. Кликните "Файл" в главном меню 2. Выберите "База" 3. Выполните команду "Восстановить базу" 3. Выполнение команды "Пересоздать базу из папки кэша" Эта команда может быть использована, если команда "Восстановить базу" не дала результата, и у вас нет рабочей до настоящего времени файла резервной копии. Эта команда воссоздает всю базу данных из файлов, которые хранятся в папке кэша. После использования этой команды, при следующем запуске проверки могут выводиться ложные уведомления об обновлениях, особенно если у вас отключен специальный фильтр "Игнорировать все HTML-теги". 1. Кликните "Файл" в главном меню 2. Выберите "База" 3. Выполните команду "Пересоздать базу из папки кэша" После запуска любой из этих команд, вы можете выполнить команду "Оптимизировать базу", которая будет также выполнять проверку целостности. Инструмент восстановления баз данных Если ничто не позволило запустить WebSite-Watcher или открыть базу данных в связи с повреждением базы данных и авариями, вы можете использовать приложение "dbtool.exe", которое можно найти в каталоге установки WebSite-Watcher. С этим инструментом вы также можете выполнить описанные выше действия на более низком уровне. Дополнительные инструменты и возможности Расширенный поиск Расширенный поиск представляет Вам возможность производить поиск текстовой информации в контенте страничек. Кнопка "Показать в главном окне" передаёт результаты поиска в папку "Результаты поиска" в главном окне, выбирает эту папку и закрывает Расширенный поиск. 1.Откройте "Расширенный поиск" через кнопку (или нажмите горячую клавишу F7) 2.Введите поисковый запрос 3.Нажмите кнопку "Поиск" на панели инструментов Связанные темы Регулярные выражения Резервное копирование / Восстановление Встроенное резервное копирование/восстановление позволяет Вам создать резервную копию Вашей конфигурации и текущего открытого файла закладок (включая загруженные web-страницы) в ZIP-файл. 1. Выберите в главном меню "Инструменты" 2. Выберите "Резервное копирование / восстановление..." 3. Следуйте пошаговым указаниям мастера © 2014 Aignesberger Software GmbH 53 WebSite-Watcher 2014 МиниБраузер Что такое МиниБраузер? МиниБраузер представляет собой интегрированный инструмент со следующими целями: Запись макрокоманд проверки для мониторинга защищённых паролем страниц Определение cookies для страниц Определение данных для POST-команд МиниБраузер находится в меню Инструменты, но он также может быть доступен из разных мест в свойствах закладки, например, для записи макрокоманд проверки. Опция "Использование непосредственно Internet Explorer" По умолчанию МиниБраузер загружает введенный URL-адрес с тем же внутренним методом, который также используется для проверки веб-страниц. Если страница не может быть отображена с этим методом, вы можете включить опцию "Использовать Internet Explorer для доступа к веб-сайтам". Тогда МиниБраузер использует встроенный Internet Explorer для загрузки и отображения страниц со всеми его интернет-настройками и возможностями. Аутентификация сервера Если сервер требует Аутентификацию сервера для доступа к веб-странице, вы должны ввести данные в поля "Имя пользователя" и "Пароль". Аутентификация сервера - это специальный метод защиты страниц от публичного доступа. Вы можете идентифицировать тип входа в систему и когда появится небольшое диалоговое окно, Вы должны ввести имя пользователя и пароль. Смотрите также раздел «Аутентификация сервера» Макрокоманды проверки Макрокоманды проверки могут использоваться в WebSite-Watcher для проверки защищённых паролем страниц. Макрокоманда может быть создана интерактивно с помощью встроенного инструмента МиниБраузер, записывающего все Ваши шаги, которые Вы сделаете для авторизации и перехода к странице, которую хотите отслеживать. WebSite-Watcher выполняет все эти шаги, когда закладка проверяется на обновление. Смотрите также раздел «Базовая Web-авторизация / Макрокоманды проверки» Менеджер загрузки WebSite-Watcher включает в себя интегрированный менеджер загрузки, который может быть использован для автоматической закачки вложений RSS-потока. Поддерживается загрузка по протоколам HTTP и HTTPS. Как загрузить файлы 1. Загрузка вложений RSS-потока Вложения RSS-потока могут быть автоматически загружены при изменении RSS-потока. Эта опция может быть включена в свойствах закладки (секция "Дополнительно"). По умолчанию, WebSite-Watcher загружает mp3 и wav-файлы, эти расширения могут быть изменены или расширены в конфигурации программы (секция "Дополнительно"). 2. Добавление URL-адреса вручную URL загрузки можно добавить вручную, запустив менеджер загрузки и нажав кнопку "Add Download" ("Добавить загрузку"). В WebSite-Watcher, менеджер загрузки может быть запущен через меню Инструменты. 3. Загрузка с плагинами Система плагинов поддерживает команду DownloadFile для добавления URL загрузки в менеджер загрузки. Это означает, что вы можете извлечь конкретный URL со страницы и загрузить его с менеджером загрузки. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 54 Где хранятся закачанные файлы? По умолчанию, WebSite-Watcher сохраняет загруженные файлы в следующие папки: -или c:\Users\<user>\AppData\Roaming\aignes\WebSite-Watcher\config\downloads\ c:\Documents and Settings\<user>\Application Data\aignes\WebSite-Watcher\config\downloads\ Автоматическое удаление файлов после X дней Менеджер загрузки сохраняет все загружаемые файлы в течение заранее определенного количества дней, после чего они автоматически удаляются из списка и с жесткого диска. Щелчок правой кнопкой мыши на файле (или выбор файла) позволяет скопировать или переместить все выбранные файлы в другую папку. Вы также можете автоматически копировать скачанные файлы в другое место, на основе настроенных правил (см. конфигурацию программы в Download Manager). Загруженные файлы будут удаляться только из назначенной по умолчанию папки загрузки. Если загружаемые файлы были скопированы/перемещены в другое место (вручную или автоматически с помощью функции "Копировать в"), то эти копии, конечно, остаются. Командная строка Использование wswatch.exe [опции] имя_файла Опции /R Запуск ручной проверки Ваших закладок. Файл закладок должен быть определен в командной строке, в сочетании с параметром /R. /Q Выход из WebSite-Watcher по завершении проверки. Работает только в сочетании с /R. /C Соединение с Интернет (Dial-up). Работает только в сочетании с /R. /D Отключение от Интернет (Dial-up). Работает только в сочетании с /R. /L Запись файла отчёта (wswatch.log). Работает только в сочетании с /R. /SND Воспроизведение звука. Работает только в сочетании с /R. /BatchMode Подавление конкретного сообщения пользовательского ввода, например, автоматической проверки новых версий. Работает только в сочетании с /R. /MINIMIZE Запуск WebSite-Watcher минимизированным /SEARCH Открытие окна "Расширенный поиск" /SCRIPT="..." Выполнение указанного (в кавычках) сценария. Если сценарий не хранится по умолчанию в каталоге сценариев, Вы должны указать полный путь к файлу сценария. /NODB Запускает WebSite-Watcher не открывая последнюю открытую базу данных Примеры wswatch.exe "c:\wsw\magazines.wsw" wswatch.exe /c /d /r /q "c:\wsw\magazines.wsw" Переменные даты Если часть URL содержит текущую дату, Вы можете использовать переменную даты, которая будет заменена действительной датой при проверке закладки. Пример URL-адреса с переменной даты: http://www.domain.com/file<$date$,'yyyy-mm-dd',0>.htm © 2014 Aignesberger Software GmbH 55 WebSite-Watcher 2014 Итоговый URL: http://www.domain.com/file2009-03-15.htm Использование <$date$,формат,DayDifference> <$date$,формат,DayDifference,MonthNames> Если формат даты, содержит переменную 'mmm' или 'mmmm' для названий месяцев, WebSite-Watcher будет автоматически использовать английские названия. Если вам нужны национальные названия месяцев, их можно определить с помощью параметра MonthNames. Вы должны точно определить 12 имен, разделенных двоеточием, например, jan:feb:mae:apr:mai:jun:jul:aug:sep:okt:nov:dez. Формат даты yy текущий год в виде двузначного числа yyyy текущий год в виде четырёхзначного числа m текущий месяц с 1 или 2 цифрами, без начального нуля (1-12) mm текущий месяц с 2 цифрами, с начальным нулём (01-12) mmm название текущего месяца, 3 символа (jan, feb...) mmmm полное название текущего месяца d текущий день с 1 или 2 цифрами, без начального нуля (1-31) dd текущий день с 2 цифрами, с начальным нулём (01-31) hh часы nn минуты ss секунды "xx" Символы, заключенные в кавычки отображаются как есть, и не влияют на форматирование. Отличие дней Параметр DayDifference позволяет добавлять/вычитать определенное количество дней к/из текущей даты. 0 ... текущая дата 1 ... завтра -1 ... вчера -2 ... позавчера Если Вы добавите после значения отличия дней символ "h", "m" или "s" как параметр, то значение будет добавлено к часам, минутам или секундам. 1h ... плюс один час -100m ... минус 100 минут 5s ... плюс 5 секунд Примеры: http://www.domain.com/file<$date$,'yyyy-mm-dd',0>.htm http://www.domain.com/changes<$date$,'yy-mm',0>.txt http://www.domain.com/events-<$date$,'mmm-dd',1>.html http://www.domain.com/news_<$date$,'mmmmyyyy',0,jan:feb:mae:apr:mai:jun:jul:aug:sep:okt:nov:dez>.h tml Импорт конфигурации программы WebSite-Watcher имеет специальную функцию для автоматического импорта предопределенных © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 56 конфигураций программы из INI-файла. Это дает вам возможность инициализировать или изменять конфигурации программы при установке и поддержании WebSite-Watcher на многих компьютерах или рабочих станциях. Если файл "config1.ini" с предопределёнными опциями существует в папке конфигурации, то следующий запуск WebSite-Watcher автоматически импортирует и удалит его. Папкой конфигурации является: c:\Users\<user>\AppData\Roaming\aignes\WebSite-Watcher\config\settings\ c:\Documents and Settings\<user>\Application Data\aignes\WebSite-Watcher\config\settings\ Доступные разделы / поля [General] BookmarkFile= Абсолютные путь и имя файла для файла закладок Пример: BookmarkFile=f:\website-watcher\bookmarks.wsw PromptBeforeStartingAutoWatch= 1 ... запрос разрешения перед стартом Автопроверки 0 ... старт Автопроверки без запроса разрешения StartAutoWatchAfterLoading= 1 ... старт Автопроверки после запуска WebSite-Watcher 0 ... не запускать Автопроверку после запуска WebSite-Watcher DateFormat= Формат даты для столбцов "последняя проверка", "последнее обновление", и так далее. Смотрите также «Внешний вид» CurrentDateFormat= Формат отображения даты текущего дня Смотрите также «Внешний вид» [Proxy] http_proxy_config= 0 ... автоматическая конфигурация прокси 1 ... не использовать прокси 2 ... конфигурация прокси вручную http_addr= адрес HTTP-прокси http_port= порт HTTP-прокси http_username= имя пользователя, при необходимости http_password= пароль, при необходимости (открытый текст) ftp_noproxy= 1 ... не использовать FTP-прокси 0 ... использовать FTP-прокси ftp_direct_type= использует одно из следующих значений: • not passive • passive ftp_type= использует одно из следующих значений: • Proxy not passive • Proxy passive • Socks 4 • Socks 4a • Socks 5 ftp_login_type= Тип входа, который может быть определен автоматически в программе конфигурации. Допустимые значения: 0-8. ftp_addr= адрес FTP-прокси ftp_port= порт FTP-прокси ftp_username= имя пользователя, при необходимости ftp_password= пароль, при необходимости (обычный текст) © 2014 Aignesberger Software GmbH 57 WebSite-Watcher 2014 ftp_ftpoverhttp= 1 ... использовать FTP-через-HTTP 0 ... не использовать FTP-через-HTTP noproxy= введите здесь адреса доменов, которые не должны проверяться через прокси-сервер. Отделять домены {crlf} (смотрите пример ниже) [Connection] threads= количество одновременных соединений timeout= время ожидания в секундах [Dialup] usedialup= 1 ... dial-up-соединение с Интернет 0 ... постоянное соединение с Интернет dial= 1/0 ... дозвон перед проверкой hangup= 1/0 ... отключение после проверки dun= название соединения username= имя пользователя для соединения password= пароль для соединения [EMail] smtp_server= адрес хоста SMTP-сервера smtp_port= номер порта smtp_username= имя пользователя для SMTP-сервера smtp_password= пароль для SMTP-сервера smtp_authentification= 1/0 ... выполнение аутентификации SMTP smtp_connection= fullssl ... полный SSL autossl ... автоматический SSL smtp_after_pop= 1/0 ... использовать SMTP-после-POP pop3_server= хост-адрес для POP3-сервера используете smtp-после-pop) pop3_port= номер порта pop3_username= имя пользователя для POP3-сервера pop3_password= пароль для POP3-сервера pop3_connection= fullssl ... полный SSL autossl ... авто SSL to_email= e-mail-адреса получателей (разделяйте их пробелом или запятой) to_email_bcc= e-mail-адреса получателей копии письма (разделяйте их пробелом или запятой) from_email= e-mail-адреса отправителя advanced_rules= использовать дополнительные правила для отправляемых e-mail (вместо отправки после каждого выполнения проверки). Допустимые значения 1 или 0. max_mails_per_session= максимальное количество e-mail за сессию (вход SMTP). sec_between_sessions= секунд между сессиями SMTP. blacklist= Фразы чёрного списка для отмены отправки e-mail. Строки должны © 2014 Aignesberger Software GmbH (необходим, только если Вы Справка по WebSite-Watcher 58 разделяться {crlf} [CheckForNewVersion] Period= 0 ... запрос пользователя перед проверкой доступности новой версии программы 1 ... без запроса пользователя, фоновая проверка доступности новой версии программы 2 ... никогда не проверять доступность новой версии программы Пример [Proxy] http_noproxy=0 http_addr=localhost http_port=8081 http_user=hercules http_passwort=zeus noproxy=aignes.com{crlf}192.168. Проверка орфографии WebSite-Watcher поддерживает проверку орфографии в различных местах, например, в редакторе ключевых слов или при записи групп новостей. WebSite-Watcher автоматически включает в себя американский словарь. Дополнительные словари можно загрузить и установить с http://www.aignes.com/dictionaries.htm Фоновая инсталляция/деинсталляция Программа установки WebSite-Watcher допускает дополнительные параметры командной строки для выполнения фоновой установки. Фоновая инсталляция Синтаксис: wswsetup.exe /SILENT /DIR="x:\dirname" Параметры: /SILENT Устанавливает режим фоновой установки, взаимодействие с пользователем не потребуется. Отображается только окно с ходом установки, а также сообщения об ошибках инсталляции. /DIR="x:\dirname" Определяет каталог установки по умолчанию (который обычно отображается в Мастере на странице Выбор места размещения). Необходимо указать полный путь. Фоновая деинсталляция Синтаксис: unins000.exe /SILENT /REMOVEDATA Параметры: /SILENT Если указано, то деинсталлятор не будет запрашивать у пользователя подтверждения запуска или отображать сообщения о завершении деинсталляции. Однако сообщения о критических ошибках будут отображаться. © 2014 Aignesberger Software GmbH 59 WebSite-Watcher 2014 /REMOVEDATA Если указано, то деинсталлятор также удалит конфигурацию WebSite-Watcher и базу данных закладок (при условии, что она хранится в папке по умолчанию). Как... Отображать изображения вместо серых участков По умолчанию WebSite-Watcher заменяет все изображения в странице на локальные серые рамки. Это лучший способ проверки и открытия закладок. В качестве альтернативы этим некрасивым, серым полям Вы также можете загружать и показывать реальные изображения страницы. Конфигурация изображения может быть изменена глобально в конфигурации программы или индивидуально для каждой закладки. Опции для загрузки изображений WebSite-Watcher поддерживает следующие опции для загрузки и отображения изображений: 1. Показывать серые участки вместо изображений (ускорение работы) Если эта опция включена, все изображения будут заменены на локальную, серую графику. Это высокопроизводительный путь для проверки и открытия закладок, изображения не будут загружаться и отображаться. 2. Использовать абсолютные web-адреса для всех изображений Если эта опция включена, то все относительные адреса изображений будут преобразованы в абсолютные. Изображения не будут загружаться во время проверки. Как только Вы откроете закладку, изображения будут загружены с сервера и показаны в Вашем браузере. 3. Сохранять изображения на диск Если эта опция включена, WebSite-Watcher загружает изображения при обнаружении обновлений. Все изображения сохраняются на Ваш жёсткий диск. Всегда загружать все изображения Если эта опция включена, WebSite-Watcher будет всегда загружать все изображения, а не только новые. Разрешайте эту опцию, если веб-страница всегда использует одни и те же имена файлов для изменяющихся изображений. Фильтровать изображения с других доменов Эта опция не будет загружать изображения с других доменов. Часто некоторые виды рекламы приходят с других доменов. Фильтровать баннеры по размерам Эта опция не будет загружать изображения с размерами, которые обычно используются для рекламы. Фильтровать баннеры по размерам только с других доменов Эта опция не будет загружать изображения (с других доменов) с размерами, которые обычно используются для рекламы. Показывать внедрённое flash-видео WebSite-Watcher может опционально отображать внедренные flash-видео, если включены абсолютные адреса изображений или загрузка изображений. Показ встроенных flash-анимаций позволяет комфортно проиграть такое видео (например, YouTube видео) в проверяемой странице, но он также может замедлить процесс открытия закладок. Общие конфигурации изображений 1. Кликните Опции в главном меню 2. Откройте "Конфигурация программы" 3. Выберите вкладку "Закладки" 4. Щёлкните кнопку "Загрузка/Вид изображений..." 5. Введите конфигурацию изображений © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 60 Индивидуальные конфигурации изображений для закладки 1. Откройте свойства закладки 2. Выберите вкладку "Дополнительно" 3. Выберите "Изображения" с левой стороны 4. Введите конфигурацию изображений Мониторить странички по специальным словам (ключевые слова) Чтобы получить уведомление об обновлении, только если указанные ключевые слова доступны в новом или измененном контенте страницы, вы должны использовать функцию "Обновление по ключевым словам" в свойствах закладки. Чтобы выделить указанные ключевые слова, вы должны использовать функцию "Подсветка ключевых слов". Обе функции работают независимо друг от друга. Если Вы хотите, чтобы подсвечивались те ключевые слова, которые Вы ищете, Вы должны ввести ключевые слова дважды или использовать опцию "Использовать вышеуказанные ключевые слова". 1. Откройте свойства закладки 2. Выберите вкладку "Ключевые слова" 3. Введите ключевые слова в поле "Подсветка ключевых слов" и/или "Обновление по ключевым словам". Введите одно слово/фразу/регулярное выражение в одной сроке. Ключевые слова будут выделены только в версии с выделением изменений, а не в новой/старой версии страницы. Если вы используете функцию "Обновление по ключевым словам", то новая версия будет сохранена только когда хотя бы одно из введенных ключевых слов находится в пределах измененного содержания. Регулярные выражения regex(WebSite.Watcher) должны быть определены с regex() или regexcmp(), например: Смотрите также раздел «Ключевые слова» Проверять страницы, требующие JavaScript По умолчанию WebSite-Watcher фильтрует весь контент Javascript из страницы и работает только со статическим текстовым содержанием. Для страниц, которые отображаются только с разрешённым Javascript, поддерживает специальную технологию проверки "Internet Explorer / Браузер". WebSite-Watcher 1. Откройте свойства закладки 2. Выберите вкладку "Проверка" 3. Выберите технологию "Internet Explorer / Браузер" Эта технология открывает страницу в скрытом окне Internet Explorer и преобразовывает "динамическое содержание Javascript" в статическое, текстовое содержание, которое может использоваться и обрабатываться в WebSite-Watcher. Задержка после загрузки страницы (в секундах): Эта опция должна использоваться для страниц, на которых содержание динамически изменяется после загрузки страницы. Например, когда нужно подождать несколько секунд для того, чтобы было показано заключительное содержание. Следовать по перенаправлению Javascript: Если WebSite-Watcher не может автоматически следовать по перенаправлению Javascript, то Вы можете включив эту опцию, разрешить дополнительный метод следования по такого рода перенаправлению. Эту опцию следует включать, только если WebSite-Watcher автоматически не следует по всем перенаправлениям. Отключить оптимизацию: Эта опция отключает различные оптимизации производительности и пропускной способности во время проверки. Отключение оптимизации, скорее всего, увеличит время проверки. Включайте эту опцию только если проверка не будет правильно работать без этой опции. © 2014 Aignesberger Software GmbH 61 WebSite-Watcher 2014 Мониторить весь сайт (Отслеживание ссылок) По умолчанию, вы должны создать отдельную закладку для каждой страницы, которую вы хотите мониторить. Если должен мониториться весь сайт, а не отдельные страницы, вы можете использовать функцию Отслеживание ссылок. Эта функция позволяет автоматически вставлять все ссылки на странице в качестве новых закладок. Вы можете указать несколько параметров, сколько и какие ссылки должны быть вставлены в качестве новых закладок, например, глубина отслеживания ссылок. Отслеживание ссылок требует Мастер-закладку, которая является корнем для всех остальных автоматически вставляемых дочерних закладок. Мастер закладка отображает картинку перед именем закладки и обычно сортируется перед всеми другими закладками. Для всех дочерних закладок отключается конфигурация Отслеживание ссылок. Изменения в конфигурации Отслеживание ссылок могут быть сделаны только в мастер-закладке. 1. Создайте новую папку (это рекомендуется для размещения каждой Мастер-закладки в отдельной папке) 2. Создайте новую закладку и введите URL 3. Выберите вкладку "Дополнительно" 4. Выберите "Отслеживание ссылок" с левой стороны 5. Разрешите опцию "Отслеживавние ссылок" и введите конфигурацию Отправлять e-mail при обнаружении обновления Если обнаружено обновление закладки, WebSite-Watcher может отправить сообщение по электронной почте одному или нескольким адресатам. Настройка этой возможности состоит из двух шагов: 1. Настройка SMTP-сервера 2. Включение функции отправки почты для указанных закладок Настройка SMTP-сервера Прежде чем Вы сможете отправлять сообщения электронной почты, Вы должны ввести конфигурацию почтового сервера. 1. Откройте конфигурацию программы 2. Выберите вкладку "Проверка" 3. Щёлкните кнопку "E-mail" 4. Введите конфигурацию сервера © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 62 SMTP-сервер SMTP сервер для исходящих e-mail. SMTP после POP В зависимости от конфигурации сервера, может потребоваться логин POP3 перед отправлением электронной почты (также называется SMTP-после-POP или POP-перед-SMTP аутентификацией). Если эта опция включена, WebSite-Watcher будет работать только для входа и выхода с POP3-сервера, но почта загружаться не будет. POP-сервер Требуется только если вы используете функцию SMTP-после-POP. Соединения WebSite-Watcher поддерживает различные методы аутентификации сервера: Регулярное - Стандартный вход без SSL/TLS Полный SSL - Использование SSL/TLS старта с первым контактом с сервером. Серверы с режимом полного SSL/TLS обычно не используют стандартный порт TCP (25). Авто SSL - Использование SSL/TLS только если это поддерживается на удаленном сервере. Шаблон: Секция Шаблон содержит основные конфигурации адреса электронной почты, такие как имя и почтовый адрес отправителя или получателя. Чтобы ввести более одного адреса электронной почты для поля Получатель, Вы должны разделять их запятой или пробелом. Поля e-mail Тема и Тело могут содержать переменные, которые будут заменены реальными значениями при отправке электронных писем. Переменные в Теме e-mail: {name} Имя закладки {url} URL закладки {check_url} URL, проверка которого была закончена, изменения в URL опознаны с помощью системы плагинов (функция событий Wsw_BeforeCheck) и перенаправления. {folder} Абсолютный путь папки {foldername} Имя папки {status} Состояние последней проверки {infofield1} Информационное поле #1 {infofield2} Информационное поле #2 {infofield3} Информационное поле #3 {changes50} Первые 50 символов подсвеченного изменения {date_changed} Дата последнего обновления Переменные в Теле e-mail: {name} Имя закладки {url} URL закладки {check_url} URL, проверка которого была закончена, изменения в URL опознаны с помощью системы плагинов (функция событий Wsw_BeforeCheck) и перенаправления. {folder} Абсолютный путь папки {foldername} Имя папки {status} Состояние последней проверки {note} Примечание закладки {infofield1} Информационное поле #1 © 2014 Aignesberger Software GmbH 63 WebSite-Watcher 2014 {infofield2} Информационное поле #2 {infofield3} Информационное поле #3 {changes} Подсвеченные изменения в текстовом формате (только для e-mail в формате TEXT) {date_changed} Дата последнего обновления Включение возможности "Отправить e-mail" в свойствах закладки Если e-mail должен быть отправлен для закладки, Вы должны включить возможность "Отправить Mail" в свойствах закладки. 1. Откройте свойства закладки 2. Выберите вкладку "Действия" 3. Выберите "Отправить e-mail" с левой стороны 4. Включите возможность отправки e-mail E-mail может быть представлен в форматах HTML или текст. Если e-mail представлен в текстовом формате, Вы можете опционально присоединять загруженные web-страницы. Для почты в формате HTML используется страница с подсвеченными изменениями. Если заполнено поле Получатель, то эти данные будут использоваться вместо данных Получателя, которые были введены в конфигурации программы. Если Вы вводите более одного e-mail адреса, Вы должны разделять их запятой или пробелом. Поле Тема поддерживает те же переменные, что и переменные в конфигурации программы. Игнорировать определения CSS документа По-умолчанию, WebSite-Watcher отправляет e-mail в формате HTML со всеми определениями CSS, которые назначены для страницы. Этот параметр удаляет из документа все определения CSS. Используйте эту опцию, если Ваш почтовый клиент испытывает проблемы с отображением страниц с опредениями CSS. Отправить перед другими e-mail Опция "Отправить перед другими e-mail" будет вставлять этот e-mail в начало списка исходящих сообщений. Таким образом, эти e-mail будут иметь более высокий приоритет среди исходящих сообщений и будут отправлены раньше e-mail, не имеющих такого флажка. Используйте эту опцию только для единичных (критичных) закладок, но не для большинства или всех закладок. Следует ли также включить "Пометить как прочитанное"? Если вы просматриваете изменённые закладки только в вашем почтовом клиенте, не открывая их в WebSite-Watcher, то Вы должны также включить для закладки действие "Пометить как прочитанное". Иначе старая версия не будет заменена новой версией, и Вы всегда будете видеть все изменения между (не обновлённой) старой версией и новой веб-версией. Игнорировать обновления Функция "Игнорировать обновления" позволяет 1. Предотвращать уведомления об обновлениях, если предопределенный текст (режим чёрного списка), или страница содержит некоторый 2. Разрешить уведомление об обновлении только когда страница содержит некоторый предопределенный текст (режим белого списка) Типичный пример: Страница показывает определенное сообщение об ошибке Если страница регулярно отображает определенное сообщение об ошибке, Вы можете предотвратить ложные уведомления об обновлениях, когда появляется такое сообщение. Типичные примеры таких сообщений об ошибках, это "Слишком большое количество пользователей в сети, пожалуйста, повторите попытку позже" или "Невозможно подключиться к базе данных". 1. Откройте свойства закладки 2. Выберите вкладку "Дополнительно" © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 64 3. Выберите "Игнорирование" с левой стороны 4. Введите текст, при наличии которого WebSite-Watcher должен предотвратить уведомление об обновлении (каждая фраза в отдельной строке) Если на странице найдено слово из черного списка, то WebSite-Watcher (1) отобразит закладку в папке ошибок и (2) уведомит об обновлении после возникновения заданного количества ошибок подряд. Такое поведение программы может быть предотвращено с помощью Тонкой настройки "HandleIgnoreUpdateAsError=0", тогда WebSite-Watcher будет игнорировать обновления, но не отобразит закладку в папке ошибок, не предупредит об обновлении после X ошибок подряд. Ограничить соединение с отдельным сервером/URL Если сервер имеет некоторый предел одновременных соединений, Вы можете уменьшить количество соединений с этим сервером или указанным URL. 1. Откройте конфигурацию программы 2. Выберите вкладку "Проверка" 3. Нажмите кнопку "Соединение..." 4. Выберите вкладку "Расширенные правила соединения" 5. Нажмите кнопку "Новая" 6. Введите имя домена, например, "aignes.com" (без кавычек) и предел одновременных соединений, который Вы хотите использовать Создать закладку в папке Hotsite Что такое HotSites? HotSites - это закладки с определённым разрешающим флажком. Все HotSites будут перечисляться в виртуальной папке "HotSites", независимо от того, в какой папке они в действительности хранятся. Это даёт Вам преимущество отображения Ваших избранных закладок в одной папке. Как разрешить флажок HotSites Есть несколько путей создания закладки в папке HotSites: Разрешение опции "HotSite" в свойствах закладки Выбор закладки и двойной клик по столбцу Hotsite Drag&Drop (перетаскивание) закладки в папку "HotSites" Изменить свойства в нескольких закладках WebSite-Watcher предлагает различные способы изменения указанных свойств в нескольких закладках одной процедурой. 1. Изменение свойств в выбранных закладках 1. В главном окне выберите закладки, которые Вы хотите изменить 2. Щёлкните правой кнопкой мыши на выделенном 3. Выберите "Установить свойства для выделенных закладок..." Этом откроет окно, которое позволяет настроить указанные свойства закладок. Для изменения конкретной конфигурации, установите флажок "Изменить" и настройте соответствующие функции. Отключение уже настроенной опции Чтобы отключить уже настроенной функцию, вы должны проверить флажки "Изменить", но снять соответствующую функцию (как показано в следующем примере): © 2014 Aignesberger Software GmbH 65 WebSite-Watcher 2014 2. Обновление аналогичных закладок Если вы изменили настройки в свойствах закладки прямо и хотите применить эти изменения к другим закладкам, вы можете включить опцию "Обновление аналогичных закладок", прежде чем нажать кнопку "ОК". На экране появится окно, которое позволяет выбрать целевые закладки и параметры, которые Вы хотите скопировать из активной открытой закладки. Отслеживать исходный HTML-код на странице По умолчанию WebSite-Watcher фильтрует все HTML-теги и используется только реальное, легко читаемое содержание текста на странице. Для отслеживания страницы со всеми HTML-тегами, Вам потребуется в свойствах закладки отключить фильтр "Игнорировать все тэги HTML". 1. Откройте свойства закладки 2. Нажмите кнопку "Мастер фильтра" 3. Выберите вкладку "Специальный фильтр" 4. Отключите фильтр "Игнорировать все тэги HTML" Если Вы хотите видеть на странице исходный код (который не отображается на странице), то Вы должны открыть свойства закладки, затем сменить опцию "тип файла" с "автоопределение" на "текст". 5. Выберите вкладку "Дополнительно" 6. Выберите "Опции проверки (1)" с левой стороны 7. Смените опцию "тип файла" с "автоопределение" на "текст" © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 66 Предопределить настройки закладок Способы предопределения свойств закладки Глобально в конфигурации программы Настройки для новой закладки могут быть предварительно определены глобально в конфигурации программы. Эти предварительные конфигурации действительны для всех баз данных и применяются при создании новых закладок. 1. Нажмите "Опции" в главном меню 2. Выберите "Конфигурация программы" 3. Выберите вкладку "Закладки" 4. Нажмите на кнопку "Назначение свойств закладок" 5. Введите свойства, которые вы хотите предварительно определить для новых закладок Через папку Также можно предварительно определить свойства закладки для новых/существующих закладок через папку. Эти предопределенные свойства закладки хранятся в базе данных закладок. 1. Щёлкните правой кнопкой мыши на папке 2. Выберите "Свойства" 3. Выберите вкладку "Назначение свойств закладок" 4. Введите, когда и какие свойства закладки должны быть назначены Правила для определённых URL-адресов Третьим способом является система правил, которая позволяет предварительно определить свойства для закладок с определенным URL-адресом, например: использование метода проверки "Internet Explorer/Браузер" для всех URL-адресов домена "aignes.com". Эти предопределенные свойства закладок хранятся в базе закладок и назначаются новым/существующим закладкам. Определяйте эти правила насколько возможно уникально. Если обнаружено предопределение и отключена опция "Продолжить обработку с другими предустановками", то закладке не будут назначены следующие правила. В противном случае для одной закладки можно назначить несколько предопределений. 1. Нажмите "Опции" в главном меню 2. Выберите "Глобальное предопределение закладок" 3. Введите правила и свойства для новых/существующих закладок Порядок назначения предопределённых свойств закладок 1. Предопределение в конфигурации программы (только новые закладки) 2. Предопределение в свойствах папки 3. Основанное на правилах предопределение через "Глобальное предопределение закладок" в меню Опции. Определяйте эти правила насколько возможно уникально. Если обнаружено предопределение и отключена опция "Продолжить обработку с другими предустановками", то закладке не будут назначены следующие правила. В противном случае для одной закладки можно назначить несколько предопределений. Если предопределения назначены в шагах #1, #2 и #3, то они будут доступны для всех из них, в то время как свойства из шага #2 будут переопределять свойства из шага #1, а свойства из #3 будут переопределять свойства из #2 и #1. Использовать Local Website Archive WebSite-Watcher сохраняет последние две версии веб-страницы. Если Вы хотите архивировать страницы для будущей работы с ними, Вы можете использовать наш инструмент Local Website Archive (LWA). Local Website Archive может использоваться как дополнение к WebSite-Watcher и/или как самостоятельное решение для архивирования web-страниц с Вашим браузером. © 2014 Aignesberger Software GmbH 67 WebSite-Watcher 2014 Существуют разные способы того, как WebSite-Watcher и Local Website Archive могут работать вместе. 1. Архивирование страниц вручную Также, как и во внешнем браузере (например, Internet Explorer или Firefox), Вы можете архивировать странички из встроенного в WebSite-Watcher браузера в Local Website Archive. Если у вас включена интеграция с Internet Explorer (в LWA), Вы можете сделать это через контекстное меню. В качестве альтернативы Вы можете использовать "Страница + Добавить в Local Website Archive...". 2. Автоматическое архивирование страниц Обновлённые страницы могут быть автоматически заархивированы в Local Website Archive с действиями закладок. После обнаружения обновления, Вы можете заархивировать либо страницы с выделенными изменениями, либо новую версию страницы. 3. Открытие архивных страничек Если Вы работаете с автоматическим методом (№ 2), Вы можете открыть архивные страницы из разных мест: © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 68 Свойства закладки Контекстное меню закладки Щелчок кнопки "Версии" на панели инструмента браузера С помощью горячих клавиш, которые можно настроить через Опции + Горячие клавиши Это откроет дополнительное окно со всеми архивными страницами выбранной/открытой закладки. Что делать, если... Страница не отображается Если страница отображается некорректно, то Вы можете попробовать технологию "Internet Explorer / Браузер". С этой технологией WebSite-Watcher создаст скрытое окно Internet Explorer и проверит страницу в этом окне. 1. Откройте свойства закладки 2. Выберите закладку "Проверка" 3. Отметьте технологию "Internet Explorer / Браузер" Если этот метод не сработает, вы можете попробовать проверить страницу через функцию Снимок экрана. 1. Откройте свойства закладки 2. Выберите закладку "Проверка" 3. Выберите технологию "Снимок экрана" Все закладки сообщают об ошибке Если проверка выдаёт отчёт об ошибках для всех закладок, то одна из следующих причин может вызывать эту проблему: Некорректные прокси-настройки Если Вам требуется прокси для соединения с Интернет, то убедитесь, что конфигурация прокси правильно введена в WebSite-Watcher. 1. Откройте конфигурацию программы 2. Выберите вкладку "Проверка" 3. Нажмите кнопку "Прокси" 4. Введите конфигурацию Вашего прокси WebSite-Watcher блокируется файерволом (firewall) Если у Вас выполняется персональный файервол или комплект других инструментов © 2014 Aignesberger Software GmbH 69 WebSite-Watcher 2014 Интернет-защиты, то вероятно WebSite-Watcher блокируется этими программами. В этом случае Вы должны указать Вашему файерволу разрешать доступ для WebSite-Watcher, проблема не может быть исправлена из WebSite-Watcher. Состояние проверки "Фильтруется всё содержание (проверьте настройки фильтра)" Если после проверки закладки в столбце состояния отображается сообщение "Внимание: фильтруется всё содержание (проверьте настройки фильтра)", то может быть что-то не так с вашим определением фильтров и WebSite-Watcher не способен обнаружить обновления. Обычно WebSite-Watcher сравнивает отфильтрованное содержание текста новой версии с отфильтрованным содержанием старой версии страницы. Если отфильтровывается полностью всё содержание страницы, то WebSite-Watcher не имеет никакого текста для сравнения и не способен обнаружить обновления. В таком случае отображается это сообщение об ошибке. Откройте свойства закладки и проверьте/измените определения Вашего фильтра для исправления этого поведения. С функцией "Тест фильтра" Вы можете увидеть отфильтрованное содержание, которое используется для обнаружения изменений. Связанная тема: «Что такое настройки фильтра (краткий обзор)». Web-страница содержит только непонятные символы Если веб-страница содержит только загадочные символы, то веб-страница, вероятно, не имеет определения набора символов и WebSite-Watcher неправильно преобразует специальные языковые символы в Unicode. Для исправления этой ситуации Вы должны задать кодировку вручную. 1. Откройте свойства закладки 2. Выберите вкладку "Дополнительно" 3. Выберите "Опции проверки (1)" с левой стороны 4. Нажмите на ссылку "Кодировка" 5. Выберите в подменю правильную кодировку 6. Перезапустите проверку закладки Интерфейс Конфигурация программы Общие Значок в системном лотке Секция "Значок в системном лотке" позволяет определить, должен ли WebSite-Watcher и в каких случаях отображаться в системном лотке (в трее). Всегда показывать значок в системном лотке Если эта опция включена, то WebSite-Watcher будет всегда отображать себя в системном лотке, независимо от того, свёрнуто приложение или нет. Сворачивать с системный лоток при минимизации WebSite-Watcher WebSite-Watcher сворачивается в виде значка в системный лоток при нажатии на кнопку минимизировать в заголовке окна программы. Сворачивать с системный лоток при закрытии WebSite-Watcher WebSite-Watcher сворачивается в виде значка в системный лоток при нажатии на кнопку Закрыть в заголовке окна программы. В этом случае Вы сможете закрыть WebSite-Watcher только через команды меню Файл + Выход или Значок в системном лотке + Выход. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 70 Независимо от настроек конфигурации системного лотка, WebSite-Watcher всегда может быть свёрнут в системный лоток нажатием горячей клавиши F8 или кнопки в главной панели инструментов . Интеграция с браузером WebSite-Watcher поддерживает различные решения для интеграции с браузером, поддерживает браузеры Internet Explorer, Firefox и Opera. Косвенная интеграция браузера Если WebSite-Watcher запущен, в заголовке окна браузера отображается кнопка WebSite-Watcher. Нажатие этой кнопки позволяет добавлять открытую в настоящее время страницу в WebSite-Watcher. Требуется запущенный WebSite-Watcher, иначе этот тип интеграции не работает. WebSite-Watcher кнопку можно перемещать горизонтально через тонкую настройку (Tweak). Прямая интеграция браузера WebSite-Watcher может быть непосредственно интегрирован в Internet Explorer, Firefox и Opera. WebSite-Watcher не должен работать и запускаться автоматически в то время, когда вы хотите добавить в WebSite-Watcher текущую открытую страницу. Этот тип интеграции работает в основном с помощью контекстного меню браузера. Смотрите также раздел «Добавление закладок из вашего браузера» Закладки Закладки Перемещать изменённые закладки в начало списка Если эта опция включена, WebSite-Watcher поставит все измененные закладки в верхнюю часть списка (независимо от направления сортировки). Убирать закладки из папки "Изменённые" после их прочтения Закладка будет автоматически удалена из папки "Изменённые" как только Вы её откроете для чтения. Открывать изменённые закладки во всех папках Если в текущей папке не остаётся непрочитанных закладок, то при открытии следующей непрочитанной закладки WebSite-Watcher автоматически перейдёт к следующей папке, которая не содержит прочитанных закладок. Загрузка/Вид изображений WebSite-Watcher поддерживает разные методы загрузки и отображения изображений. Изображения могут быть заменены локально на серые участки (самый быстрый метод), изображения могут быть загружены из Интернет при открытии страницы (с абсолютными адресами изображений), или изображения могут быть загружены немедленно и будут храниться на Вашем локальном диске. Смотрите также: Изображения Отображение изображений вместо серых участков Подсветка измененных изображений на странице Предопределение свойств для новых закладок Здесь вы можете предопределить свойства, которые будут назначаться для новых закладок. Эти © 2014 Aignesberger Software GmbH 71 WebSite-Watcher 2014 предопределенные свойства могут быть изменены для каждой папки (через свойства папки). Плагины для: PDF/Word/Excel По умолчанию, WebSite-Watcher конвертирует файлы PDF, Word и Excel в web-страницы через интегрированную систему плагинов. В этом разделе вы можете определить по умолчанию плагины, которые должны будут использоваться для конвертирования. WebSite-Watcher содержит встроенные функции для преобразования этих файлов, никаких дополнительных инструментов не требуется. Как альтернативу этим внутренним решениям, WebSite-Watcher может использовать инструменты сторонних производителей для преобразования этих типов файлов. Например, если в системе установлен Microsoft Office 2003 или выше, то Вы также можете использовать Microsoft Office для преобразования файлов Word/Excel (лучшее качество, включая оформление, картинки и т.д.). Для PDF-файлов есть бесплатные сторонние инструменты, которые должны быть загружены и установлены отдельно. Проверка Уведомлять о первой инициализации закладки Страница инициализируется при первой проверке, при каждой следующей проверке могут быть обнаружены обновления. Если Вы включите эту опцию, Вы будете также получать уведомления об обновлениях, когда страница инициализируется первой проверкой. Никаких действий для закладки (например, "Отправить e-mail") в этом случае выполняться не будет. Уведомлять после ХХ ошибок подряд Если закладка достигает определенного числа ошибок подряд, вы получите уведомление об обновлении. Как только вы открываете страницу, количество ошибок сбрасывается и счетчик ошибок возобновляется с нуля. Никаких действий для закладки (например, "Отправить e-mail") в этом случае выполняться не будет. Повторно проверять закладки в случае ошибки Если проверка закладки завершилась с ошибкой, то закладка будет повторно поставлена в очередь на вторую проверку. Автопроверка WebSite-Watcher поддерживает метод автоматической проверки (называемую Автопроверкой) для автоматического отслеживания закладок с предопределёнными конфигурациями времени. Вы можете включить этот режим нажатием кнопки Автопроверка на панели инструментов. Подтверждение перед запуском Автопроверки Отображается сообщение при щелчке по кнопке Автопроверки на панели инструментов. Старт Автопроверки после запуска WebSite-Watcher Если эта опция включена, то Автопроверка будет начата автоматически после того, как Вы запустите WebSite-Watcher. Задержка перед первой проверкой Введите обратный отсчет в секундах, которые должны пройти до начала первой проверки. После первой проверки, WebSite-Watcher вычисляет обратный отсчет автоматически в зависимости от конфигурации времени для закладки. Смотрите также: Проверка страничек автоматически (с Автопроверкой) Автоматическая конфигурация времени "Автоматическая конфигурация времени" позволяет WebSite-Watcher автоматически использовать оптимизированные конфигурации времени на основании частоты предыдущих обновлений. Активные страницы будут проверяться более часто, чем страницы, бездействующие в течение нескольких месяцев, которые будут проверяться менее часто. Эта опция хороша для закладок, уведомление об обновлении которых не требуется как можно скорее. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 72 Если проверка закладки не находит изменений, интервал времени может вырасти до указанного максимума. Если изменения будут найдены, интервал времени сбрасывается на указанный минимум и может начаться новый "процесс роста". Автоматическая конфигурация времени и ключевые слова: Если вы задали ключевые слова в свойствах закладки (Обновление по ключевым словам), интервал времени также сбрасывается на указанный минимум, когда страница была изменена, но никаких ключевых слов не было найдено. Встроенный браузер Использовать встроенный браузер По умолчанию WebSite-Watcher всегда открывает закладки во встроенном в браузере (Встроенный Internet Explorer). Если Вы выключите эту опцию, то WebSite-Watcher будет открывать закладки во внешнем браузере, установленном по умолчанию. Всегда открывать ссылки внешним браузером Если установлено, то WebSite-Watcher всегда откроет онлайн URL-адреса в вашем внешнем браузере по умолчанию. Только проверенные закладки (локально сохраненные страницы) будут открыты в WebSite-Watcher. Эта опция полезна, когда у вас есть проблемы со встроенным Internet Explorer, например, когда программа зависает при просмотре определённых страниц во встроенном браузере. Блокировать всплывающие окна Эта функция предотвращает появление всплывающих окон, которые автоматически открываются без клика по ссылке. Не показывать сообщения IE (например, ошибки Javascript) Эта опция по умолчанию включена и предотвращает появление определённых сообщений Internet Explorer, например, когда Internet Explorer обнаруживает ошибки Javascript на странице. Обратите внимание, что эта настройка может также предотвращать появление диалогов авторизации при попытке открыть защищённые паролем страницы. Закрывать все вкладки в браузере при закрытии встроенного браузера Если эта опция включена, WebSite-Watcher закроет все открытые в браузере вкладки, когда Вы закрываете встроенный браузер. Это означает, что Вы увидите пустые документы, когда вновь откроете встроенный браузер. Вкладки браузера Использовать вкладки в браузере Вкладки в браузере позволяют Вам открывать разные страницы в множестве вкладок. Если Вы удерживая клавишу Shift кликните по ссылке, то ссылка будет открыта в новой вкладке браузера. Если эта опция отключена, то ссылки открываются в Вашем стандартном web-браузере вместо новой вкладки. Открывать новые вкладки в фоне Если опция включена, новые вкладки открываются в фоне и выбранная вкладка остаётся активной, в противном случае новая вкладка становится активной поверх всех других. Если Вы открываете ссылку с Ctrl+Shift+Клик, то новая вкладка будет открыта поверх всех, если включена опция "Открывать новые вкладки в фоне" и наоборот. Восстановление последних вкладок браузера Если браузер был закрыт с открытыми вкладками, WebSite-Watcher, будучи перезапущен, автоматически откроет эти вкладки. Авторезервирование (AutoBackup) Если включена опция "Авторезервирование" ("AutoBackup"), то WebSite-Watcher будет резервировать Вашу базу данных закладок в папку, настроенную для резервных копий. Будет сохранена только база закладок, кэш-файлы или настройки программы включены не будут. Вы можете восстановить автоматически зарезервированное через "Инструменты + Резервная копия/Восстановление", выбрав затем "Восстановление из AutoBackup" и следуя по шагам Мастера. Это позволит скопировать обратно базу данных закладок и воссоздать все важные кэш-файлы. © 2014 Aignesberger Software GmbH 73 WebSite-Watcher 2014 Внешний вид Общие Показывать линии разделительной сетки в списке закладок Отображаются линии разделительной сетки в списке закладок. Запуск минимизированным (значок в системном лотке) Запуск WebSite-Watcher минимизированным. В качестве альтернативы этой опции Вы можете использовать параметр командной строки /MINIMIZE для запуска WebSite-Watcher минимизированным. Формат даты Определяет, в каком виде отображается дата в столбцах "последняя проверка" и "последнее изменение". На текущий день можно использовать отдельные определения даты/времени, например, для отображения только времени без даты. Формат даты: yyyy год, отображаемый 4-мя цифрами mmm название месяца, формат: Jan, Feb, Mar, ... mm месяц, отображаемый 2-мя цифрами dd день, отображаемый 2-мя цифрами hh часы nn минуты ss секунды am/pm добавляет am или pm к текущему времени Примеры: dd-mmm-yyyy hh:nn hh:nn am/pm Шрифты Позволяет Вам изменить шрифт текста в дереве папок и списке закладок. Изменённые закладки Позволяет Вам изменить цвет и стиль текста для изменённых закладок. Если Вы отключите флажок жирный шрифт, то выделенные изменённые закладки могут быть не идентифицированы, так как цвет текста у выделенных закладок всегда одинаковый. Отключение флажка жирный шрифт рекомендуется только тогда, когда Вы просматриваете изменённые закладки через папку "Изменённые". Сообщения В этом разделе вы можете указать, когда WebSite-Watcher должен показывать сообщения или предупреждения. Папка Показывать папки Укажите, какие специальные папки должны отображаться. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 74 Корзина Очищать корзину после NN дней Определите, на какой период удалённые закладки должны храниться в Корзине. По истечении этого периода, удалённые закладки и файлы в кэше будут удалены окончательно. Инфоокно WebSite-Watcher может показывать небольшое плавающее информационное окошко (InfoWin), когда: 1. Обнаружены обновлённые закладки 2. WebSite-Watcher не располагается поверх всех окон. Двойной щелчок на этом окошке сделает окно Website-Watcher активным поверх всех других окон. Звуки Все звуковые файлы должны быть доступны в wav-формате. Обновления воспроизводится, когда обнаружено обновление закладки Завершение воспроизводится каждый раз по окончании проверки Разрешить стандартные звуки (по умолчанию) воспроизведение стандартных звуков, например, когда показывается диалоговое сообщение или когда открывается инициализированная закладка. Внешний браузер Укажите браузер, который будет использоваться в качестве внешнего браузера. RSS-вложения WebSite-Watcher поставляется со встроенным менеджером загрузки, который может быть использован для автоматической загрузки вложений RSS-потоков (подкастов). По умолчанию WebSite-Watcher использует этот менеджер закачек для MP3- или WAV-вложений. Чтобы добавить дополнительные расширения файлов, просто разделите их запятой. Примеры: mp3,wav,exe,msi,zip,rar,7z Импорт/Экспорт Введите местоположение файлов закладок браузера. Эти файлы используются в функции импорта закладок. Цвета Маркер последнего изменения WebSite-Watcher может отображать маркер последнего изменения, который будет помещён после последнего изменения на странице веб-сайта. Здесь Вы можете изменить шрифт и цвет текста этого маркера. Для каждой закладки, опция "Показывать маркер последнего изменения" включается в свойствах закладки. © 2014 Aignesberger Software GmbH 75 WebSite-Watcher 2014 Удалённые элементы Определите цвет удалённых элементов. Для каждой закладки, опция "Показывать удалённые элементы внизу страницы" включается в свойствах закладки. Сторонние инструменты Local Website Archive WebSite-Watcher сохраняет последние две версии веб-страницы. Если вы хотите постоянно иметь архив страниц для использования в будущем, вам потребуется дополнительный инструмент, например, Local Website Archive. В этом разделе вы должны ввести полный путь к Local Website Archive. Local Website Archive доступен как бесплатное программное обеспечение и как профессиональное издание, более подробную информацию можно найти на сайте http://www.aignes.com/lwa.htm Смотрите также раздел «Использование Local Website Archive» PDF-инструменты Помимо комплексного решения для преобразования PDF файлов в веб-страницы, WebSite-Watcher поддерживает внешние инструменты преобразования. Более подробную информацию можно найти на сайте http://www.aignes.com/pdf.htm User Agent По умолчанию WebSite-Watcher идентифицирует себя как Internet Explorer. Если Вы хотите, чтобы WebSite-Watcher идентифицировал себя как другой браузер или краулер (интернет-паук), Вы можете добавить идентификацию произвольного браузера. Проверка новой версии WebSite-Watcher может проверять наличие новой версии в Интернет. Эта функция проверяет наличие обновления только финальных версий (не бета-выпусков) и доступна только в зарегистрированной версии программы. Проверка производится один раз в неделю. Изображения Загрузка/Отображение изображений По умолчанию WebSite-Watcher заменяет все изображения страницы на локальные серые поля. Это лучший путь для проверки и открытия закладок. В качестве альтернативы этим некрасивым, серым полям, Вы можете также загружать и отображать реальные изображения со страниц. Для каждой закладки общую конфигурацию для изображений Вы можете переназначить в свойствах закладки. Смотрите раздел «Отображение изображений вместо серых участков» для получения дополнительной информации. Не загружать изображения, содержащие следующие строки Здесь Вы можете ввести части адреса (URL) изображения (одна запись в одной строке). Если URL изображения содержит одну из этих строк, то изображение загружено не будет. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 76 Пример: banner counter.pl /ads Показывать встроенные flash-видео WebSite-Watcher может опционально отображать внедренные flash-видео, если включены абсолютные адреса изображений или загрузка изображений. Показ встроенных flash-анимаций позволяет комфортно проиграть такое видео (например, YouTube видео) в проверяемой странице, но он также может замедлить процесс открытия закладок. Прокси Если у Вас доступ в Интернет через прокси-сервер, Вы должны ввести в этом разделе конфигурацию прокси-сервера. Для доступа к нужным сайтам без использования прокси введите, пожалуйста, имена доменов этих сайтов (по одному в строке). Пример: www.aignes.com website-watcher.com 345.32.123.21 FTP-прокси WebSite-Watcher поддерживает различные типы входа на FTP-прокси, вы можете задать их с номерами от 0 до 8. Для того чтобы определить правильный номер для FTP прокси-сервера, просто нажмите кнопку "Автообнаружение типа логина". FTP через HTTP Используйте метод FTP-через-HTTP, только если у вас есть подключение через прокси-сервер, который не поддерживает протокол FTP. Типичный пример, где требуется FTP-через-HTTP, это прокси-решение "Squid" ("Кальмар"). Метод FTP-через-HTTP отправляет HTTP-подобный запрос (GET "ftp://ftp.something.com") к Squid, Squid подключается к FTP серверу и получает список файлов. Тогда Squid сначала преобразует этот файл листинга в веб-страницу и возвращает его в браузер или WebSite-Watcher. Недостатки и ограничения: Нет прямой поддержки защищенных паролем FTP-серверов и каталогов. Единственным решением для мониторинга защищенных паролем каталогов является небезопасный формат URL: ftp://USERNAME:PASSWORD@ftp.something.com/ Этот формат поддерживается не всеми прокси, так что вы сначала должны проверить, работает ли он. Это не позволяет контролировать один файл с помощью каталога, это только даёт возможность контролировать весь список каталога (будут указаны все файлы в каталоге) Изменение прокси или прокси-сервера обновлений может привести к ложным срабатываниям Совет: Используйте метод FTP-через-HTTP только если невозможен прямой доступ к FTP! E-mail Если страница была изменена, WebSite-Watcher может автоматически отправлять электронные письма одному или нескольким адресатам. © 2014 Aignesberger Software GmbH 77 WebSite-Watcher 2014 Сервер SMTP сервер SMTP сервер для исходящих e-mail. SMTP после POP В зависимости от конфигурации сервера, может потребоваться логин POP3, перед отправлением электронной почты (также называется SMTP-после-POP или POP-перед-SMTP аутентификацией). Если эта опция включена, WebSite-Watcher будет работать только для входа и выхода с POP3-сервера, но почта загружаться не будет. POP сервер Требуется только если вы используете функцию SMTP-после-POP. Соединения Регулярное - Стандартный вход без SSL/TLS Полный SSL - Использование SSL/TLS старта с первым контактом с сервером. Серверы с режимом полного SSL/TLS обычно не используют стандартный порт TCP (25). Авто SSL - Использование SSL/TLS только если это поддерживается на удаленном сервере. Шаблоны Секция Шаблон содержит основные конфигурации адреса электронной почты, такие как имя и почтовый адрес отправителя или получателя. Чтобы ввести более одного адреса электронной почты для поля Получатель, Вы должны разделять их запятой или пробелом. Переменные: Поля e-mail Тема и Тело могут содержать переменные, которые будут заменены реальными значениями при отправке электронных писем. Поле Тело используется только при отправке сообщения электронной почты в формате TEXT. Поддерживаемые переменные можно найти в разделе «Отправка e-mail при обнаружении обновления». Дополнительно По умолчанию, WebSite-Watcher осуществляет запуск проверки закладок, а затем ставит в очередь сообщения электронной почты. Это означает, что проверка закладок и отправка электронной почты не будут делить ресурсы между собой. При помощи расширенных правил отправки можно ставить сообщения электронной почты в очередь независимо от выполнения проверки закладок. С этой опцией у вас есть больше гибкости и сообщения электронной почты могут быть отправлены раньше, если у вас много закладок и выполнение проверки занимает много времени. Писем за одну авторизацию SMTP Если в исходящих сообщениях находится хотя бы один адрес электронной почты, то WebSite-Watcher зайдёт на SMTP-сервер и по очереди отправит сообщения e-mail (но не более максимального количества, настроенного для электронной почты). Если в папке исходящих сообщений ещё останутся неотправленные e-mails, то WebSite-Watcher подождёт установленное время между авторизациями SMTP, сделает новую авторизацию и отправит следующую партию электронных писем. Это повторяется, пока не отправятся все закладки. Время между авторизациями SMTP Определяет время в секундах между авторизациями SMTP. Чёрный список Черный список может быть использован для отмены отправки электронной почты, если страница содержит предопределенный черным списком текст (например, "не удалось подключиться к базе данных"). Введите одну фразу в каждую строку. Записи не чувствительны к регистру. Подстановочные знаки или регулярные выражения не поддерживаются. Пример: database error site under maintenance © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 78 Соединения Общие конфигурации проверки Общее максимальное количество соединений Количество одновременных проверок обновлений. Максимальное количество HTTP соединений с сервером Максимальное количество одновременных соединений для одного сервера через протокол HTTP. Максимальное количество FTP соединений с сервером Максимальное количество одновременных соединений для одного сервера через протокол FTP. Время ожидания ответа сервера Если проверка одной закладки займёт время больше указанного в секундах, то проверка закладки будет прервана. Это значение может быть изменено для каждой закладки. Максимальный размер загружаемого файла Если размер загружаемой страницы больше указанного значения, то WebSite-Watcher покажет предупреждающее сообщение в столбце состояния. Это только информационное сообщение, которое не прерывает проверку. Расширенные правила соединения Расширенные правила соединения предоставляют возможность одновременных соединений с заданными серверами или URL. ограничения количества "Пауза между проверками " может использоваться если сервер, например, разрешает только два запроса в минуту (функция поиска на форумах зачастую имеет такое ограничение для защиты от автоматизированных хакерских атак). Расширенные правила соединения и макрокоманды проверки: Для расширенных правил соединения URL в макрокомандах не распознаются, эта функциональность базируется на полях закладки "URL" и "Альтернативный URL". Если альтернативный URL введён, то используется это поле, в противном случае используется поле URL. Заголовок HTTP Accept-Language Позволяет Вам конфигурировать вход Accept-Language (разрешаемый язык) в заголовке HTTP (стандартное значение en). Для получения более подробной информации об этой настройке попробуйте поискать в поисковых web-системах по запросу "HTTP Accept-Language". Дозвон (Dial-up) Если у вас модемное соединение с Интернетом, вы можете ввести в этом разделе коммутируемую конфигурацию. WebSite-Watcher дополнительно может выполнять соединение и отключение. Тонкая настройка (Tweak) Секция Tweak позволяет Вам точно настроить WebSite-Watcher, для включения специальных возможностей или функциональности. Секция Tweak использует формат ini-файлов, но без разделителей (имя между "[" и "]"), просто сделайте одну или несколько записей без указания раздела. Изменения в секции Tweak требуют перезапуска WebSite-Watcher для вступления изменений в силу. © 2014 Aignesberger Software GmbH 79 WebSite-Watcher 2014 BrowserButtonMoveLeft=nnn С помощью этой настройки Вы можете перемещать по горизонтали значок WebSite-Watcher, который отображается в заголовке окна браузера. nnn есть значение смещения в пикселях по горизонтали. Положительное значение перемещает кнопку влево, отрицательное значение перемещает кнопку вправо. Эта возможность полезна в случае, если в заголовке окна браузера располагаются также кнопки других программ и кнопка WebSite-Watcher закрывает их. UnfocusedColorRGB= Определение цвета (в формате RGB) выделенных папок и закладок, на которых не располагается фокус. Например, UnfocusedColorRGB=ff0000 отображает несфокусированное выделение красным цветом. UseProxyIfUrlExists= Если введён URL, то WebSite-Watcher пробует обратиться к нему перед выполнением первой проверки. Если доступ открыт, то WebSite-Watcher будет использовать установленные настройки прокси (конфигурация программы), в противном случае WebSite-Watcher использует прямое соединение с Интернет. Если Вы поместите знак "+ " (без кавычек) перед этим URL, то он будет проверяться при каждой проверке, иначе этот URL будет проверен только при следующем запуске WebSite-Watcher. Эта настройка используется для протоколов http и https. Примеры: UseProxyIfUrlExists=http://www.DOMAIN.com UseProxyIfUrlExists=+http://www.DOMAIN.com PerformCheckOnlyIfUrlExists=URL;ValidText WebSite-Watcher проверяет введённый URL перед выполнением проверки закладки. Проверяемый URL должен содержать указанный "ValidText" (действующий текст) для гарантии, что эта страница действительно доступна. Если указанного текста нет на странице, проверка закладки не будет выполнена. Эта возможность полезна в случае, когда Вы используете разные интернет-соединения (например, из разных мест) и хотите иметь гарантию, что WebSite-Watcher сможет получить соединение с Интернет. Если Вы поместите знак "+ " перед этим URL, то он будет проверяться при каждой проверке, иначе этот URL будет проверен только при следующем запуске WebSite-Watcher. Примеры: PerformCheckOnlyIfUrlExists=http://www.google.com;Advanced Search PerformCheckOnlyIfUrlExists=+http://www.google.com;Advanced Search Этот пример загружает страницу www.google.com и начинает проверку закладки только в случае, если эта страница содержит фразу "Advanced Search". BookmarkDblClickOpens=web|new В качестве альтернативы двойному клику для открытия онлайн или загрузки новой версии страницы. Действующие значения "web" и "new". OpenUrlInsteadOfAlternativeUrl=1 Если введён "Альтернативный URL", то, когда Вы открываете онлайн-версию закладки, WebSite-Watcher откроет URL закладки вместо "Альтернативного URL". BrowserActiveTabColorRGB= Определяет цвет активной вкладки браузера (в формате RGB). Например: BrowserActiveTabColorRGB=f0f0f0 CreateHighlightedChangesInBackground=1 По умолчанию WebSite-Watcher вычисляет и создает файл с выделенным изменениям, как только вы открываете закладку. Если включена эта опция, то WebSite-Watcher создает файл с выделенным изменениями сразу же во время проверки закладки. Это позволит ускорить открытие изменившейся закладки, но выполнение проверки будет потреблять больше памяти © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 80 и ресурсов. Не рекомендуется использовать эту настройку, если Вы часто перепроверяете изменившиеся/непрочитанные закладки, не открывая их после каждой проверки. FolderCheckAndShowRecursive=1 Эта настройка является расширением команды "Проверить папки и подпапки" (контекстное меню папки), и автоматически будет показывать закладки в подпапке. FollowLinksShowDepth=1 Показывает глубину ссылки справа от символов Отслеживания ссылок . SuppressInitializedInfoBar=1 Эта опция может использоваться для скрытия жёлтой информационной панели браузера, которая показывается при открытии инициализированной закладки. SavePageWhenNoKeywordsFound=1 По умолчанию, WebSite-Watcher не сохраняет страницы на жесткий диск, когда настроены ключевые слова (в "Обновлении-по-ключевым-словам"), но ни одно из них не находится в пределах нового/изменившегося содержания. С этой настройкой, страницы также сохраняются на вашем жестком диске, когда не найдено ни одно из настроенных ключевых слов. CheckLocalFolderUseCreationDate=1 Если проверяются на обновление локальные каталоги, WebSite-Watcher использует дату изменения папки (папки помечаются как изменённые при изменении любых файлов в папке). Если эта опция включена, то для проверки папки на обновление используется дата её создания. ReopenTabsAfterCrash=0 Если WebSite-Watcher завершился аварийно, то при следующем запуске появится диалог, предлагающий вновь открыть последние открытые вкладки браузера. Эта настройка подавляет вывод такого диалога и не переоткрывает вкладки браузера. MinAutoWatchSecondsAfterHibernation= Если в Автопроверке активен обратный отсчет, когда система переходит в спящий режим, то WebSite-Watcher будет ждать по крайней мере 15 секунд до запуска следующей Автопроверки после того, как система возвращается из спящего режима. Это дает Windows некоторое время для восстановления сетевого соединения до следующего запуска Автопроверки после спящего режима. Значением по умолчанию является 15 секунд. Пример: MinAutoWatchSecondsAfterHibernation=60 SendMailOnlyNewRssArticles=0 По умолчанию, действие закладки "Отправить e-mail" отправляет только новые статьи RSS-потока. Если установлена эта настройка, то в e-mail будут включены все статьи RSS-потока (как вы можете видеть их при открытии закладки). SendMailRemoveWswTags=0 По умолчанию, WebSite-Watcher удаляет справочные теги для подсвеченных изменений для e-mail, чтобы сделать размер e-mail как можно меньше. С этой настройкой теги удаляться не будут. Это может быть полезно, когда Вы хотите сделать постобработку e-mail и извлечь изменения через эти теги (например, wswchange1, wswchange2, и так далее). ExtSearchHighlightCSS= Определяет CSS для подсветки найденных слов в функции Расширенный поиск. Заданное CSS по умолчанию: color:#ff0000;background:#00ff00; Для размещения рамки вокруг подсвеченных слов может использоваться следующая строка: ExtSearchHighlightCSS=color:#ff0000;background:#00ff00;border:thin;border-color:#ff0000;bor der-style:solid;border-width:1px NewsgroupUrlFormat= Определяет формат URL, когда группы новостей открываются стандартной программой чтения новостей (NewsReader). Значением по умолчанию является: nntp://{server}/{group} Другой типовой формат новостей:{group} - возможные переменные из {server}, {port} и © 2014 Aignesberger Software GmbH 81 WebSite-Watcher 2014 {group}. AutoDeleteOutdatedIgnoreFilters=0 По умолчанию, WebSite-Watcher автоматически обнаруживает и удаляет устаревшие фильтры игнорирования. С этой настройкой Вы можете отключить такой механизм, но на протяжении многих лет Вы можете получить очень длинные списки фильтров игнорирования, если Вы используете только Мастер фильтров для интерактивного создания новых фильтров. НЕ рекомендуется отключать эту систему, если Вы не хотите вручную поддерживать определения Ваших фильтров. Имейте ввиду, что множество определений фильтров требует больше ресурсов и времени на обработку, даже если они устарели. HandleIgnoreUpdateAsError=0 Если закладка использует возможность конфигурации Игнорирование обновлений, и текст из чёрного списка найден на странице, то (1) WebSite-Watcher отобразит закладку в папке ошибок и (2) уведомит об обновлении после возникновения заданного количества ошибок подряд. С этой настройкой WebSite-Watcher будет игнорировать обновления, но не отобразит закладку в папке ошибок, не предупредит об обновлении после X ошибок подряд. QuickInsertFromWebBrowserContextMenu=1 Если вставить закладку через контекстное меню браузера, WebSite-Watcher обычно показывает диалог с выбором именем/URL/папки. Если установлена эта настройка, закладки молча вставляются в корневую папку открытого списка закладок, не отображая этот диалог. Если закладка уже существует, то URL не вставляется. UseStaticTrayIconHint=1 Отображает статичный текст "WebSite-Watcher", как подсказку иконки в трее, вместо динамически генерируемой информации о текущем состоянии проверки/обновления. BlindUser=1 Оптимизированный пользовательский интерфейс для слепых пользователей. Пример: BrowserButtonMoveLeft=100 BookmarkSort=-date_changed Свойства закладки Общие Общие Имя и URL Поле URL обязательно для заполнения. Если URL содержит ежедневно изменяемую дату, Вы можете использовать переменные даты для разрешения этого затруднения. Смотрите раздел «Переменные даты» для получения дополнительной информации. Если поле Имя не заполнено, то ему будет автоматически присвоено имя web-страницы во время следующей проверки закладки. Альтернативный URL Если здесь ввести адрес, то WebSite-Watcher будет использовать этот URL вместо основного адреса, введённого в поле выше. Кнопка "Check Macro" ("Макрокоманда проверки") для защищённых паролем страниц Если Вы хотите мониторить защищённые паролем страницы, которые доступны после входа в систему, Вы можете использовать макрокоманды проверки. Макрокоманды могут быть созданы интерактивно с помощью инструмента МиниБраузер, который записывает все Ваши шаги, необходимые для входа в систему и перехода к странице, которую хотите отслеживать. WebSite-Watcher выполняет все эти шаги, когда закладка проверяется на обновления. Макрокоманды проверки могут также использоваться для страниц, требующих множества шагов для получения определённой страницы, например, для поисковых запросов. Смотрите © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 82 раздел «Базовая Web-авторизация / Макрокоманды проверки» для получения дополнительной информации. Смотрите также: Использование Мастера Добавление закладок вручную RSS / Atom каналы FTP-файлы и каталоги Двоичные файлы PDF-файлы Изображения Фильтр при проверке веб-сайтов на изменения Для обнаружения изменений WebSite-Watcher сравнивает текстовое содержание новой версии страницы с текстовым содержанием старой версии страницы. Если различие есть, WebSite-Watcher уведомляет об обновлении. Если контент страницы содержит изменяющиеся части (например, текущую дату, некоторое рекламное объявление, ...), то уведомление об обновлении может быть при каждой проверке. Фильтр может игнорировать определённые части страницы для предотвращения ложных уведомлений об обновлении. Если фильтр задан, WebSite-Watcher будет сравнивать отфильтрованное текстовое содержание новой версии с отфильтрованным текстовым содержанием старой версии страницы для обнаружения изменений. Фильтры могут быть созданы с помощью системы Автофильтра, Мастера фильтра или вручную. По умолчанию фильтр "Игнорировать все тэги HTML" включен и возвращает только реальное, легко читаемое текстовое содержание страницы. Этот фильтр должен отключаться только в специальных случаях, например, если Вы хотите мониторить любые изменения в исходном коде страницы. Функция "Тест фильтра" даёт Вам возможность всегда проверить параметры настройки Вашего фильтра сравнением отфильтрованного содержания новой версии с отфильтрованным содержанием старой версии страницы. Смотрите также: Что такое настройки фильтра (краткий обзор) Автофильтр Мастер фильтра Создание вручную фильтра Игнорируемые/Отслеживаемые Специальный фильтр Фильтр с подстановочными знаками Работа с регулярными выражениями Обновление аналогичных закладок Если Вы изменили настройки в свойствах закладки напрямую и хотите, чтобы эти изменения применились к другим закладкам, вы можете включить опцию "Обновление аналогичных закладок" прежде чем нажать кнопку "ОК". На экране появится окно, позволяющее выбрать целевые закладки и параметры, которые Вы хотите скопировать из активной открытой закладки. Смотрите также раздел «Изменение свойств в нескольких закладках». Ключевые слова Подсветка ключевых слов Эта возможность позволит Вам подсвечивать указанные ключевые слова на странице. Целые слова поддерживаются и должны быть помещены в кавычки, например "watch". Все введённые ключевые слова нечувствительны к регистру символов. Ключевые слова подсвечиваются только в версии с подсвеченными изменениями, а не в новой или старой версиях страницы. Регулярные выражения должны быть помещены между "regex(" и ")" (без кавычек). © 2014 Aignesberger Software GmbH 83 WebSite-Watcher 2014 Например: regex(WebSite.Watcher) "WebSite_Watcher", ... найдёт "WebSite-Watcher", "WebSite Watcher", Ограничение: Ключевые слова могут быть подсвечены только в случае, когда никаких HTML-тэгов нет внутри этих слов (например, текст "<b>H</b>ello" содержит HTML-тэги, и подсветка ключевого слова "Hello" не возможна). Если WebSite-Watcher не может выделить все введенные слова, отображается предупреждение в начале страницы. Обновление по ключевым словам Возможность обновления по ключевым словам предупреждает об обновлении, только если хотя бы одно из введенных ключевых слов доступно в новом или измененном содержании. Если ни одно из введенных ключевых слов не найдено на странице, WebSite-Watcher не будет сохранять проверенные страницы на жесткий диск. Когда вы открываете закладку, вы всегда будете видеть последние версии, которые содержали, по крайней мере, одно из введенных ключевых слов. Вводите одно ключевое слово в строке. Все введённые ключевые слова нечувствительны к регистру символов. Части слов По умолчанию WebSite-Watcher выполняет поиск ключевых слов в новом и изменившемся текстовом содержимом, также, когда они являются частью слова. Если Вы введёте ключевое слово watch, то положительный результат поиска будет, если страница содержит слово WebSite-Watcher. Целые слова Если WebSite-Watcher должен найти только целые слова, то вы должны поместить их в кавычки. Ключевое слово "watch" (в кавычках) не даст Вам положительного результата при поиске, если страница содержит слово WebSite-Watcher, а не "watch", которое было бы найдено в тексте you can watch a page for. Регулярные выражения Ключевые слова, которые Вы ищете, также могут быть заданы с помощью регулярных выражений. Регулярные выражения должны быть помещены между "regex(" и ")" (без кавычек). Например: regex(WebSite.Watcher) "WebSite_Watcher", ... найдёт "WebSite-Watcher", "WebSite Watcher", Специальной функцией является regexcmp(...), которая позволяет Вам сравнить цены с указанным числом. С помощью встроенной системы плагинов Вы можете также определять сложные запросы ключевых слов с логическими операторами. Более подробную информацию можно найти в теме Wsw_CheckKeywords. Если были определены ключевые слова и плагин, затем обе задачи выполнены и WebSite-Watcher будет предупреждать об обновлении, если по крайней мере одна из этих двух функций найдёт ключевое слово. Смотрите также: Мониторинг страничек по специальным словам (ключевые слова) Регулярные выражения Автопроверка Включение автопроверки WebSite-Watcher поддерживает метод автоматической проверки (называемую Автопроверкой) для автоматического отслеживания закладок с предопределёнными конфигурациями времени. Вы можете включить этот режим нажатием кнопки Автопроверка в панели инструментов. Здесь Вы можете определить частоту проверки закладки, когда WebSite-Watcher работает в режиме Автопроверка. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 84 Автоматическая конфигурация времени "Автоматическая конфигурация времени" позволяет WebSite-Watcher автоматически использовать оптимизированные конфигурации времени на основании частоты предыдущих обновлений. Активные страницы будут проверяться более часто, чем страницы, бездействующие в течение нескольких месяцев, которые будут проверяться менее часто. Эта опция хороша для закладок, уведомление об обновлении которых не требуется как можно скорее. Смотрите также: Проверка страничек автоматически (с Автопроверкой) Автоматическая конфигурация времени Проверка Уведомление/Действия при С опцией "Уведомление/Действия при" Вы можете определить когда уведомлять об обновлении и какие действия должны быть выполнены (например, "Отправка e-mail"). Значением по умолчанию является "Уведомление-при-изменениях", которое означает, что вы получаете уведомления об обновлении только когда страница изменяется. Смотрите также "Уведомление при первой инициализации страницы" и обработка глобальных ошибок в конфигурации программы. Технология проверки web-страниц По умолчанию Это установленный по умолчанию стандартный метод проверки страниц. Вы должны стараться пробовать альтернативные методы, только если этот метод не сработал. Internet Explorer / Браузер Вы должны использовать этот метод только в случае, если WebSite-Watcher не может проверить страницу другими технологиями, например, когда web-страница может быть отображена только с Javascript. По умолчанию WebSite-Watcher фильтрует всё Javascript-содержимое страниц и работает только со статическим текстовым содержанием. Эта технология открывает страницу в скрытом окне Internet Explorer и преобразовывает "динамическое Javascript-содержание" в статическое, текстовое содержание, которое может использоваться и обрабатываться в WebSite-Watcher. Задержка после загрузки страницы (в секундах): Эта опция должна использоваться для страниц, на которых содержание динамически изменяется после загрузки страницы. Например, когда нужно подождать несколько секунд для того, чтобы было показано заключительное содержание. Следовать по перенаправлению Javascript: Если WebSite-Watcher не может автоматически следовать перенаправлениям Javascript, то вы можете включить эту опцию, чтобы выполнить эти виды переадресации продвинутым методом. Эта опция должна быть включена только если WebSite-Watcher не может автоматически следить за всеми перенаправлениями. Отключить оптимизацию: Эта опция отключает во время проверки различные оптимизации производительности и пропускной способности. Отключение оптимизации, скорее всего, увеличит время проверки. Включите эту опцию, только если проверка будет неправильно выполняться без неё. Прокрутка страниц вниз: Количество страниц, которые должны быть прокручены вниз во время проверки. Используйте эту опцию, если страница отображает информацию динамически, когда страница прокручивается вниз. © 2014 Aignesberger Software GmbH 85 WebSite-Watcher 2014 Снимок экрана Если страница содержит контент, который не может контролироваться при помощи других методов (например, содержание, которое выводится с Java), вы можете попробовать создать снимок экрана (скриншот) этой страницы и сравнивать его с прежним скриншотом, чтобы обнаружить изменения. Смотрите раздел «Проверка по снимку экрана (скриншоту)» для получения дополнительной информации. Смотрите также: Проверка страниц, требующих Javascript Страница не отображается Проверка по снимку экрана (скриншоту) Действия При обнаружении обновления, WebSite-Watcher может по выбору выполнить дополнительные задания. Звук Введите звуковой файл в формате WAV, который должен быть воспроизведён, при обнаружении обновления. Открыть Web-страницу В случае обновления страницы Вы можете автоматически открыть её во встроенном или внешнем браузере. Эта возможность полезна только для одной страницы (но не для всех страниц в списке). Отправить e-mail Функция "Отправить e-mail" дает вам возможность отправлять e-mail одному или нескольким получателям. WebSite-Watcher будет посылать отдельный e-mail для каждой изменённой закладки. Игнорировать определения CSS документа По-умолчанию, WebSite-Watcher отправляет e-mail в формате HTML со всеми определениями CSS, которые назначены для страницы. Этот параметр удаляет из документа все определения CSS. Используйте эту опцию, если Ваш почтовый клиент испытывает проблемы с отображением страниц с опредениями CSS. Отправить перед другими e-mail Опция "Отправить перед другими e-mail" будет вставлять этот e-mail в начало списка исходящих сообщений. Таким образом, эти e-mail будут иметь более высокий приоритет среди исходящих сообщений и будут отправлены ранбше e-mail, не имеющих такого флажка. Используйте эту опцию только для единичных (критичных) закладок, но не для большинства или всех закладок. Следует ли также включить "Пометить как прочитанное"? Если Вы читаете изменившиеся закладки только в своём почтовом клиенте без открытия их в WebSite-Watcher, то Вы должны также включить для закладки действие "Пометить как прочитанное". Иначе старая версия не будет заменена новой версией, и Вы всегда будете видеть все изменения между (не обновлённой) старой версией и новой веб-версией. Смотрите также: Отправка e-mail при обнаружении изменений Экспорт страницы Функция экспорта сохраняет обновленную страницу (новая версия без выделения изменений) в указанный файл. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 86 Переменные в имени файла: {id} ID закладки {datetime} Текущая дата/время в формате yyyy-mm-dd hh.mm.ss (ms) {infofield1} Информационное поле #1 {infofield2} Информационное поле #2 {infofield3} Информационное поле #3 <$date$, 'format'> Переменные даты, как они описаны в разделе «Переменные даты». Формат: Web-страница, только HTML WebSite-Watcher экспортирует страницу без CSS и файлов изображений. Web-страница, полностью WebSite-Watcher может автоматически экспортировать файлы, связанные с CSS и изображениями в подпапку с расширением ".files". Если файл экспорта называется "test.htm", то экспортируемые файлы CSS/изображений будут храниться в подпапке "test.files". WebSite-Watcher не может автоматически удалять старые файлы из этой папки, когда вы реэкспортируете закладки с теми же именами. Текст Дополнительно у Вас есть возможность удаления HTML-тэгов, и HTML-страница будет сохранена как текстовый файл. Запуск программы Используя эту функцию, Вы можете выполнить программу с заданными переменными как параметрами: {url_new} новая версия загруженной страницы {url_changes} версия с подсвеченными изменениями {url_old} старая версия загруженной страницы {url} URL закладки {postdata} Поле закладки PostData {infofield1} Информационное поле #1 {infofield2} Информационное поле #2 {infofield3} Информационное поле #3 Если требуется запуск более, чем одной программы, создайте файл DOS-пакета (.bat) и эти программы будут запущены через этот пакетный файл. Local Website Archive Это действие экспортирует страничку в программу Local Website Archive. Local Website Archive должен быть установлен отдельно и может сохранять в архив веб-страницы и документы для использования в будущем. Подробная информация о Local Website Archive доступна на страничке http://www.aignes.com/lwa.htm Смотрите также раздел «Использование Local Website Archive». Пометить как прочитанное Если у вас не открываются закладки в WebSite-Watcher (например, при чтении изменённых закладок только в вашем почтовом клиенте), то вы должны также включить действие Пометить-как-прочитанное. Иначе старая версия не будет заменена новой, и Вы всегда будете видеть изменения между старой (не обновлённой) и новой версией из Интернета. © 2014 Aignesberger Software GmbH 87 WebSite-Watcher 2014 Опции Переход к первому изменению / ключевому слову Переход к первому подсвеченному изменению Если эта опция включена, то WebSite-Watcher автоматически переходит к первому подсвеченному изменению открытой закладки. Переход к первому ключевому слову (с подсвеченными изменениями) Если у Вас определены ключевые слова, то Вы можете автоматически перейти к первому ключевому слову (с подсвеченными изменениями) при открытии страницы. Место перед первым изменением Когда WebSite-Watcher переходит к первому выделенному изменению, то оно отображается прямо на верхней границе внутреннего браузера. С этой опцией вы можете автоматически прокрутить назад заданное количество пикселов. Это может сделать чтение первого выбранного изменения немного более удобным, но может занять чуть больше времени, чтобы перейти к этой позиции. Значением по умолчанию является 0. Предотвращение горизонтальной прокрутки Если WebSite-Watcher переходит к первому изменению/ключевому слову и ширина страницы больше ширины окна браузера, то может быть выполнена горизонтальная прокрутка. Включение этой опции позволит предотвратить горизонтальную прокрутку. Это работает только для тех изменений, которые видимы полностью или частично. Если изменение находится полностью за пределами видимого окна браузера, то горизонтальная прокрутка всегда будет выполнена, чтобы были видны эти изменения. Показать элементы Показывать удалённые элементы внизу страницы Если эта опция включена, WebSite-Watcher пытается найти слова и фразы, уже недоступные в новой версии страницы, и в случае успеха отображает эти удалённые элементы внизу страницы. Показывать маркер последнего изменения Если эта опция включена, то WebSite-Watcher показывает метку после последнего изменения на странице. Шрифт и цвет этого маркера могут быть выбраны в конфигурации программы. Опции Отключить закладку (не проверять) С этой опцией вы можете отключить закладку и исключить её из проверки. Отключенные закладки могут быть проверены только с помощью функции Проверка выбранные закладок (расширенно). HotSites HotSites - это закладки с включенным определённым флажком. Все закладки HotSites перечисляются в виртуальной папке "HotSites", независимо от папок, в которых они в действительности хранятся. Это даёт Вам преимущество отображения Ваших избранных закладок в отдельной папке. Смотрите раздел «HotSites» для получения дополнительной информации. Open in tab (Открывать во вкладке) По умолчанию, закладки открываются во вкладке "Страница" встроенного браузера. С этой опцией закладки могут быть дополнительно открыты во вкладке "Текст" или во вкладке "Анализ". Настройки времени Проверка вручную / Произвольная настройка времени Вы можете использовать эти параметры для ввода некоторой временной конфигурации для ручной проверки закладки (горячая клавиша F9 или щелчок на кнопке © 2014 Aignesberger Software GmbH в панели инструментов). Справка по WebSite-Watcher 88 Если конфигурация не введена, закладки будут мониториться при каждом запуске проверки. Автоматическая конфигурация времени "Автоматическая конфигурация времени" позволяет WebSite-Watcher автоматически использовать оптимизированные конфигурации времени на основании частоты предыдущих обновлений. Активные страницы будут проверяться более часто, чем страницы, бездействующие в течение нескольких месяцев, которые будут проверяться менее часто. Эта опция хороша для закладок, уведомление об обновлении которых не требуется как можно скорее. Смотрите также: Автоматическая конфигурация времени Подсветка изменений Метод подсветки В зависимости от типа страницы, WebSite-Watcher поддерживает несколько методов подсветки изменений в тексте. Смотрите раздел «Методы подсветки» для получения дополнительной информации. Опции Подсветка изменённых изображений В зависимости от конфигурации изображений, WebSite-Watcher может показывать рамку вокруг изменённых изображений. Эта опция работает только, когда Вы загружаете изображения или используете абсолютные адреса изображений для их отображения. Пожалуйста, обратите внимание, что веб-страница будет помечена как обновлённая, только когда обнаружено изменение текста, и не будет помечена в случае обновления только изображения! Фильтр Отслеживаемые: Подсветка только соответствующих результатов Если Вы создаёте фильтр игнорирования, то WebSite-Watcher пытается вычеркнуть фильтруемый контент. Если Вы создаёте фильтр отслеживания, то ничто не вычёркивается по-умолчанию и WebSite-Watcher подсвечивает все изменения на странице. Когда включена эта опция, WebSite-Watcher подсвечивает только изменения, которые находятся в пределах фильтра отслеживания и вычёркивает всё остальное. В этом случае Вы получите такое же действие, как и в мастере фильтров. Смотрите раздел «Как обнаруживается изменение изображений?» для получения дополнительной информации. Цвета Здесь Вы можете определить цвет и стиль подсветки изменений Изображения Раздел Изображения позволяет Вам переназначить общие настройки для изображений. Смотрите раздел «Отображение изображений вместо серых участков» для получения дополнительной информации. Плагин Система плагинов предоставляет возможность изменить или расширить функциональность проверки закладок, написав небольшой сценарий на языке "Basic". WebSite-Watcher поддерживает частные плагины (которые создаются и сохраняются в закладках) и общие плагины (которые сохраняются в отдельных файлах и могут совместно использоваться © 2014 Aignesberger Software GmbH 89 WebSite-Watcher 2014 закладками). Специфические данные плагина Этот раздел содержит поля, которые может использовать плагин. Например, поле для ввода пароля для проверки защищенных паролем файлов Excel. Плагин может прочитать это поле с функцией Bookmark_GetProperty. Смотрите также: Система плагинов - Краткий обзор Общие/Частные плагины Функции событий Отслеживание ссылок По умолчанию, Вы должны создать отдельную закладку для каждой страницы, которую Вы хотите мониторить. Если должен мониториться весь сайт, а не отдельные страницы, вы можете использовать функцию Отслеживание ссылок. Эта функция позволяет автоматически вставлять все ссылки на странице в качестве новых закладок. Вы можете указать несколько параметров, сколько и какие ссылки должны быть вставлены в качестве новых закладок, например, глубина отслеживания ссылок. Отслеживание ссылок требует Мастер-закладку, которая является корнем для всех остальных автоматически вставляемых дочерних закладок. Мастер закладка отображает изображение перед именем закладки и обычно сортируется перед всеми другими закладками. Для всех дочерних закладок отключается конфигурация Отслеживание ссылок. Изменения в конфигурации Отслеживание ссылок могут быть сделаны только в Мастер-закладке. Рекомендуется помещать каждую главную закладку в отдельную папку! Опции Глубина ссылки Глубина ссылки определяет глубину, на которую WebSite-Watcher должен отслеживать ссылки. Глубина ссылки 1 означает, что WebSite-Watcher будет отслеживать только ссылки с текущей страницы. При глубине ссылки 2 WebSite-Watcher будет также отслеживать ссылки со страниц, связанных с текущей, и так далее... Копировать все свойства закладки при добавлении новых закладок По умолчанию (без включения этой опции) только наиболее важные свойства закладки копируются в автоматически добавляемую закладку. Если включить эту опцию, то почти все свойства закладки (из исходной закладки) будут использоваться при добавлении новых закладок. Автоматическое удаление утерянных страниц каждые Х дней Эта опция позволяет автоматически обнаруживать и удалять утерянные страницы из списка закладок. Так как эта операция занимает некоторое время, Вы можете настроить периодичность, с которой она должна выполняться. Если щелкнуть правой кнопкой на Мастер-закладке в списке закладок, то можно выполнить эту операцию вручную с помощью контекстного меню. Не отслеживать ссылки, содержащие одну из следующих строк С этой опцией новые закладки НЕ будут добавляться, если адрес ссылки содержит по крайней мере одну из введённых строк. Каждый элемент вводите в отдельной строке, все строки нечувствительны к регистру символов. Введённые строки являются "подстроками". Поддерживаются регулярные выражения (с функцией regex(...)) и переменные даты. Подстановочные знаки или другие функции регулярных выражений (StartToRegex, и так далее.) не поддерживаются. Примеры: .zip .exe © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 90 /adv/ regex(/example\d+/) Отслеживать только ссылки, содержащие одну из следующих строк С этой опцией новые закладки будут добавляться только если адрес содержит по крайней мере одну из введённых строк. Каждый элемент вводите в отдельной строке, все строки нечувствительны к регистру символов. Введённые строки являются "подстроками". Поддерживаются регулярные выражения (с функцией regex(...)) и переменные даты. Подстановочные знаки или другие функции регулярных выражений (StartToRegex, и так далее.) не поддерживаются. Примеры: techinfo forum_data regex(/article\d+/) Дополнительные опции Проверять, существует ли уже URL в WebSite-Watcher Если URL содержит изменяющийся идентификатор сессии (Session-ID), то он будет вставляться каждый раз, когда Вы проверяете страницу. Для предотвращения этого поведения, Вы можете определить регулярные выражения для исключения участков URL, когда WebSite-Watcher проверяет, существуют ли они уже. Вводить каждое регулярное выражение в отдельной строке. Примеры: ?.* фильтрует всё после вопросительного знака &s=.*?& фильтрует параметр &s=hasdqwe79a8sd798& &s= до следующего амперсанда, например &sid=[a-z|1-9]* фильтрует идентификатор сессии с символами a-z и цифрами Смотрите также: Мониторинг всего сайта (Отслеживание ссылок) Регулярные выражения Слияние страниц (Merge Pages) Если страница состоит из нескольких страниц (например, результаты поиска) и URL-адрес представляет собой параметр, который определяет номер страницы, то WebSite-Watcher может объединить нескольких этих страниц на одной странице. Типичные примеры для поддерживаемых URL-адресов: http://www.domain.com/search.php?s=text&page=3&id=792837492387 http://www.domain.com/topic.php?start=15&sort=asc Существует два способа объединения страниц Слияние страниц с постоянной стартовой страницей Используйте эту опцию, если вы хотите контролировать, например, первые пять страниц результатов поиска. Слияние последних страниц с новым содержанием Используйте эту опцию, если вы хотите контролировать, например, новые сообщения в ветке форума, которые добавляются с увеличением количества страниц. WebSite-Watcher будет автоматически следить за последними страницами, на которых появляются новые сообщения. Чтобы настроить эту функцию слияния, просто запустите Мастер и следуйте по его шагам. © 2014 Aignesberger Software GmbH 91 WebSite-Watcher 2014 Альтернативные решения через плагины Вы также можете написать плагин для автоматического слияния страниц, который будет работать также и для URL-адресов, где номер страницы является частью URL/имени_файла и не доступен в качестве параметра. Смотрите примеры «Слияние страниц результатов поиска» и «Слияние страниц в теме форума». Игнорирование обновлений Игнорирование обновлений через Чёрный/Белый списки Функция "Игнорирование обновлений" поддерживает два разных режима: 1. Режим чёрного списка Этот метод предотвращает уведомление об обновлении, когда страница содержит некоторый предопределенный текст. Эта функция может быть использована, если страница регулярно показывает определенное сообщение об ошибке, например, "Слишком большое количество пользователей в сети, пожалуйста, повторите попытку позже" или "Невозможно подключиться к базе данных". 2. Режим белого списка Этот метод разрешает уведомление об обновлении, только когда страница содержит некоторый предопределенный текст. Если этот предопределенный (белый список) текст не найден на странице, то WebSite-Watcher не будет предупреждать об обновлении. Смотрите также раздел «Игнорирование обновлений». Требуемое количество символов Если иногда сервер отправляет пустую страницу, то Вы можете использовать эту опцию для предотвращения ложных уведомлений об обновлении. Введите минимальное количество читаемых символов, которые должны быть доступны на странице. IFRAMES IFRAMES (inlineframes, встроенные страницы) часто используются для отображения рекламы на веб-странице. WebSite-Watcher не проверяет IFRAMES автоматически. Если страница содержит IFRAMES, внутренний браузер отображает информационную панель браузера, и вы можете включить проверку IFRAME или запретить признаки IFRAME. Логин (Login) Вход через аутентификацию сервера Аутентификация сервера - это специальный метод защиты страниц от публичного доступа. Вы можете идентифицировать тип входа в систему, и когда появится небольшое диалоговое окно, Вы должны ввести имя пользователя и пароль, например: © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 92 Когда Вы увидите такой диалог, Вы должны ввести имя пользователя и пароль. Вход через Web-форму Если поля имя пользователя и пароль размещены на веб-странице, то для входа через web-форму, Вы должны записать макрокоманду проверки. Смотрите дополнительно: Вход через аутентификацию сервера Базовая Web-авторизация / Макрокоманды проверки Защищённые паролем FTP-файлы Опции проверки (1) Опции Игнорировать коды ошибок, полученные от сервера Включите эту опцию, если неправильно настроенный сервер постоянно передает код ошибки для существующих страниц, например, "404 файл не найден". Разрешить перенаправление через команды HTML Если веб-страницы доступны только через перенаправления HTML, вы можете включить эту опцию. WebSite-Watcher загрузит первую страницу, просканирует исходный код для перенаправления HTML, и затем проверит целевую страницу. Не показывать предупреждения о перенаправлении Если Вы отслеживаете страницу, которая перенаправляет на другой адрес, WebSite-Watcher всегда показывает "redirection" ("перенаправление") в столбце состояния. С этой опцией вы можете подавить это статусное сообщение. Метод проверки и тип файла Метод проверки WebSite-Watcher поддерживает несколько методов проверки для мониторинга страницы. Методом по умолчанию является "автоматический", что позволяет WebSite-Watcher выбрать лучший метод автоматически, или, в зависимости от типа страниц, их комбинации. Только в особых случаях следует выбирать другой метод проверки вручную. автоматический В зависимости от типа страницы, этот метод автоматически решает, какие методы должны быть использованы для проверки страницы. Это также может быть комбинация из доступных методов. © 2014 Aignesberger Software GmbH 93 WebSite-Watcher 2014 по содержанию Этот метод загружает всю страницу и сравнивает отфильтрованный контент новой версии с отфильтрованным контентом старой версии страницы. Если отличия обнаруживаются, WebSite-Watcher предупреждает об обновлении. по дате файла Этот метод использует дату файла страницы для обнаружения обновлений. Сообщение сервера о дате зависит от типа страницы. Этот метод обычно используется для двоичных (бинарных) файлов. по размеру файла Этот метод работает так же, как и метод проверки по дате файла и использует размер файла, который возвращает сервер. Этот метод обычно используется для двоичных (бинарных) файлов. Тип файла Если WebSite-Watcher не может определить тип файла автоматически, Вы должны выбрать правильный тип файла вручную. Если WebSite-Watcher, например, не смог идентифицировать RSS-канал, вы должны выбрать тип файла "rss". Причиной такой ситуации может быть то, что сервер идентифицирует RSS-канал ложно, как двоичный файл. Кодировка По умолчанию, WebSite-Watcher определяет кодировку страницы автоматически. Если нигде нет информации о кодировке - ни в странице, ни в логе сервера - WebSite-Watcher не может отобразить страницу правильно, и вы должны выбрать кодировку вручную. Смотрите раздел «Web-страница содержит только непонятные символы» для получения дополнительной информации. Опции проверки (2) Cookies WebSite-Watcher поддерживает следующие методы для обработки cookies: Использование Internet Explorer Cookies Этот метод используется по умолчанию, WebSite-Watcher использует cookies от Internet Explorer. WebSite-Watcher только читает cookies из Internet Explorer, новые cookies не записываются в систему cookie Internet Explorer. Использование встроенной системы cookie В качестве альтернативы системе Cookie Internet Explorer, WebSite-Watcher может управлять cookies индивидуально для каждой закладки. Инструмент МиниБраузер поможет вам определить cookies для данного URL, такие cookies должны быть скопированы в поля cookie в этом разделе. Все cookies хранятся в свойствах закладки, а не совместно с другими закладками. Не использование cookies В заголовке говорится, WebSite-Watcher не использует cookies. Referrer В некоторых случаях веб-страница может быть открыта только при ее открытии с другой конкретной страницы. Если веб-странице необходимо конкретная предыдущая страница (referrer), вы можете ввести этот URL-адрес в этом поле. GET / POST POST функция доступна только для профессиональных пользователей и, как правило, выполняется немного быстрее, чем с помощью макрокоманд проверки. Как правило, вы должны записать Макрокоманды проверки для страниц, где участвуют POST-команды. По умолчанию WebSite-Watcher использует GET-команды для мониторинга веб-страниц. Если страница требует POST-команды (например, после заполнения формы), то вы можете использовать для этого инструмент МиниБраузер, чтобы определить POST URL и PostData. Поле PostData также © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 94 может содержать переменные даты. Смотрите также: Базовая Web-авторизация / Макрокоманды проверки МиниБраузер User Agent / Время ожидания истекло Использование произвольной идентификации браузера По умолчанию, WebSite-Watcher идентифицирует себя как Internet Explorer. Это определение может быть опционально изменено в закладке. Переопределение времени ожидания Здесь вы можете изменить значение по умолчанию времени ожидания для конфигурации программы. Форум Список топиков форумов можно проверить с предопределенными плагинами форумов или форум-шаблонами. Плагины форумов доступны для известных форумов (например, phpBB, SMF, vBulletin, и т.д.). Этого достаточно для назначения форуму плагина (если таковой имеется), в данном случае никаких дополнительных конфигураций не требуется. Если форум не поддерживается плагином форума, Вы можете создать форум-шаблон, выбрав заголовок форума, время последнего поста (в темах/топиках) и нижний колонтитул темы. WebSite-Watcher автоматически создаст все требуемые настройки, никаких других конфигураций не требуется. Смотри также раздел «Форумы, основанные на таблицах». RSS/Atom Этот раздел можно использовать для ввода некоторых основных конфигураций потоков RSS/Atom. Стиль RSS WebSite-Watcher поддерживает разные схемы для преобразования RSS в читаемую HTML-страницу. Игнорировать изменения в старых сообщениях По умолчанию WebSite-Watcher предупреждает об обновлении, если в RSS-канале находятся новые или измененные сообщения. Если вы заинтересованы только в новых постах, но не в обновленных статьях, то вы должны включить эту опцию. Хранить последние X статей По умолчанию WebSite-Watcher показывает только элементы RSS-канала, которые действительно сохранены в файле RSS-канала. Включение этой функции позволяет сохранить в ленте небольшой архив старых сообщений. Эта функция также может быть использована, когда RSS-канал динамически добавляет и удаляет старые статьи (если смотреть в редких случаях). Игнорировать статьи старше X дней По умолчанию WebSite-Watcher показывает все статьи, которые хранятся в RSS-канале. Если RSS-канал содержит тысячи старых статей, то результатом будет огромный HTML файл, который приведет к замедлению WebSite-Watcher. С этой функцией вы можете игнорировать статьи старше, чем заданное число дней хранения, делая RSS-каналы небольшими и быстрыми. Идентификация элемента RSS Определяет, какие поля следует использовать для обнаружения новых публикаций RSS-потока. По умолчанию, WebSite-Watcher использует автоматическую систему, которая может не сработать при определённых обстоятельствах, например, когда RSS-поток регулярно изменяет GUID (=Globally Unique Identifier) для последних публикаций. В этом случае Вы можете вручную выбрать поля, которые нужно будет использовать для обнаружения новых © 2014 Aignesberger Software GmbH 95 WebSite-Watcher 2014 элементов. Однако автоматическая система должна работать почти во всех случаях. Группы новостей Данный раздел предназначен для настройки конкретных вариантов групп новостей. Опции Загрузка текста сообщений Вам следует немедленно загрузить сообщения содержания группы новостей, только если хотите отслеживать тексты статей для введённых ключевых слов. Во всех других случаях это не имеет реального смысла, так как проверка займёт больше времени и будет загружено большее количество данных. Использование этой опции означает, что Вы также загружаете сообщения для ответов на интересующие Вас темы. Если Вы хотите отслеживать группы новостей только на наличие новых сообщений и ответов, то Вы не должны использовать опцию "загружать сообщения". Проверка будет выполняться быстрее, а текст сообщений может быть загружен автоматически, когда Вы откроете статью. Сервер Когда Вы создаёте новые закладки групп новостей, то конфигурация сервера вводится с помощью Мастера закладок и может быть изменена в этом разделе. Если требуются имя пользователя/пароль, Вы должны заполнить их в разделе Аутентификация сервера. Смотрите также: Добавление группы новостей Сервер Отчёт В этом разделе можно ввести дополнительные поля для функции Отчёт/Экспорт. Если поля "URL" и "Имя" введены, отчёт использует их вместо полей главные URL и имя. Смотрите дополнительно: Глава Отчёт раздел Краткий обзор / Шаблоны Поля данных для закладок Поля данных для папки Общие поля данных/опции Пример: Простой список URL в формате HTML Пример: Экспорт в формат CSV Пример: Экспорт в файл закладок Opera Поиск неисправностей Следующие опции могут использоваться в случае, если загруженная страница отображается неверно: Игнорировать определения CSS документа Если опция включена, то определение CSS в загружаемой web-странице игнорируется. Игнорировать цвета текста документа Если эта опция включена, то цвет текста загружаемых web-страниц игнорируется. Игнорировать цвет фона документа Если опция включена, то цвет фона загружаемых web-страниц игнорируется. Не игнорировать части NOSCRIPT По умолчанию WebSite-Watcher не поддерживает Javascript и связанные части NOSCRIPT. Зачастую есть ошибки в частях NOSCRIPT, поэтому они в основном никогда не проверяются. Если страница может быть отображена только с Javascript, Вы должны предпочитать проверку технологией "Internet Explorer/Браузер", которая позволит Вам отслеживать страницы с © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 96 Javascript. Не подготавливать страницы для оффлайн-просмотра Вы должны включить эту опцию только в случае, если WebSite-Watcher имеет проблемы с подготовкой страниц к автономному просмотру! В качестве альтернативы этим опциям Вы можете также попробовать использовать технологию проверки "Internet Explorer/Браузер" или функцию "Проверка по снимку экрана (скриншоту)". Смотрите также: Страница не отображается Разное Этот раздел содержит различные конфигурации, которые не вписываются в другие разделы. Префикс имени файла для менеджера загрузки Если вы загружаете файл с помощью менеджера загрузки (либо через вложения RSS-каналов, либо через плагин), вы можете ввести префикс, который должен иметь загруженный файл. Это поле не является обязательным, максимальная длина ограничена 10 символами. Поля Примечание / Инфо Для каждой закладки Вы можете ввести примечание и три дополнительных информационных поля. Эти поля могут отображаться как отдельные столбцы в списке закладок. Вы также можете быстро изменить эти поля после двойного клика на изображении заметки в списке закладок. Свойства папки Свойства папки Общие Имя папки и заданный пользователем значок. Опции Автоматическое удаление закладок Вы можете использовать эту возможность для отслеживания закладки только в течение заданного времени. Дополнительно Вы можете исключить закладки, помеченные флажками , для их автоматического удаления. Назначение свойств закладок В этом разделе Вы можете определить, в каких случаях должны быть назначены определённые свойства для закладок в выбранной папке. Виртуальная папка Свойства виртуальной папки Виртуальные папки содержат только закладки, которые отвечают определенным критериям, которые могут быть определены в диалоге виртуальной папки. © 2014 Aignesberger Software GmbH 97 WebSite-Watcher 2014 Обработка закладок в папках Для каждой виртуальной папки можно выбрать папки, которые будут обрабатываться. По умолчанию обрабатываются все папки, в качестве альтернативы вы можете выбрать только определенные папки. Правила Для перечисленных в виртуальной папке закладок должны быть соблюдены установленные правила. 1. Ключевые слова Для закладок, перечисленных в виртуальной папке, если обновления найдены, и по крайней мере одно из введенных ключевых слов доступно в новом/измененном содержании. Если ключевые слова будут найдены, то можно также выполнить дополнительные действия, например, отсылку по электронной почте или положить на постоянное хранение в архив страниц в Local Website Archive. Помимо поиска нового/измененного содержания, WebSite-Watcher также выполняет поиск ключевых слов в следующих элементах: имя закладки, URL закладки, в тегах TITLE страницы и в META-тегах ключевых слов и описаний. WebSite-Watcher ищет только слова/фразы. Шаблоны и регулярные выражения не поддерживаются. 2. Расширенные правила Для закладок, перечисленных в виртуальной папке, если соблюдены настроенные правила. Если настроены только расширенные правила (без определенных ключевых слов), то не возможно выполнить дополнительные действия из вкладки "Действия". 3. Комбинация: Ключевые слова И Расширенные правила Если введены ключевые слова И расширенные правила, то чтобы получить список закладок, должны быть соблюдены оба критерия. Если добавить или изменить расширенные правила, то изменения вступают в силу немедленно и виртуальные папки повторно заполняются соответствующими закладками. Изменения в конфигурации Ключевые слова не могут быть применены немедленно и обрабатываются только во время проверки закладок. Для немедленной обработки изменений в конфигурации Ключевые слова, щелкните правой кнопкой мыши виртуальной папке и запустите команду "Повтор обработки виртуальных папок". Действия Если введённые ключевые слова найдены в новом/изменённом содержании, Website-Watcher имеет возможность запускать дополнительные действия, аналогичные действиям доступным в свойствах закладок. Найти полное описание этих действий можно в разделе «Действия закладки». Язык сценариев Язык сценария (краткий обзор) Встроенный язык сценариев обеспечивает удобный метод автоматизации различных задач в WebSite-Watcher. Язык сценария - это ориентированная строка, что означает - Вы должны поместить каждую команду в отдельную строку. Смотрите также раздел «Синтаксис сценария». Правка сценариев WebSite-Watcher включает встроенный редактор сценариев, который можно запустить из меню "Сценарий". Для быстрого открытия сценария в редакторе просто удерживайте клавишу Shift при выборе сценария в меню "Сценарий". © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 98 Специальные сценарии Специальные сценарии выполняются автоматически в определенное время, например, сценарий "Автозагрузка", когда запущен WebSite-Watcher. Вы можете найти и редактировать эти специальные скрипты в меню "Edit special script" ("Редактировать специальный скрипт"). Все другие сценарии нужно запускать вручную через меню "Сценарий" или через командную строку. Автоматический старт сценария Этот скрипт выполняется во время запуска WebSite-Watcher. Сценарии для кнопок панели инструментов WebSite-Watcher дополнительно может отображать до трёх кнопок на главной панели инструментов, которые будут использоваться для запуска выполнения специальных сценариев. Дополнительно Вы можете назначить горячие клавиши для трёх сценариев. Сценарии, выполняющиеся после каждого запуска проверки WebSite-Watcher может дополнительно выполнять скрипт после каждого запуска проверки. Не все команды могут использоваться в этих сценариях, редактор сценариев уведомит Вас, если Вы будете использовать запрещенные команды. Команды Команды для проверки закладок: CheckFolder CheckBookmarks Общие команды: AbortScript BackupToZip CloseBrowser CreateReport ImportBookmarks MarkAsVisited MessageBox OpenBookmarkFile OpenWithInternalBrowser PlaySound и SystemBeep QuestionBox Quit RestartScript RunProgram SelectFolder SendBookmarks SendMail StartAutoWatch SyncBookmarkFiles WaitDelay / WaitUntilTime WindowToTray Переменные и дополнительные команды: Переменные Label и Goto Оператор IF Встроенные функции Глобальные настройки и флажки: Флажки отключения определённых свойств закладки Примеры Проверка закладок Эмуляция Автопроверки Создание и отправка отчёта Дополнительные примеры / Участки кода © 2014 Aignesberger Software GmbH 99 WebSite-Watcher 2014 Синтаксис сценария Строки кода Синтаксис языка сценариев - это определённая строка. Это означает, что каждая инструкция должна быть задана без пробелов в отдельной строке. Одну строку можно перенести с символом "(+)". Длина строки не ограничена. Разрешается: MessageBox "This is line number 1\nThis is line number 2" CreateReport /template="{programdir}examples\report_template_changes.htm" (+) /output="c:\report.htm" (+) /bookmarks=changed Запрещается: MessageBox "This is line number 1 This is line number 2" Комментарии Комментарии начинаются с двойной наклоненной вправо черты "//", остальная часть строки игнорируется. Комментарии должны размещаться в отдельной строке, не разрешается размещать комментарий и команду в одной строке. Разрешается: // Проверка всех Hotsites CheckBookmarks /hotsites Запрещается: CheckBookmarks /hotsites // Проверка всех Hotsites Команды сценария AbortScript AbortScript /IfUpdates /IfNoUpdates Прерывание выполнения сценария. Параметры: /IfUpdates ... Выполнение сценария прерывается только в случае, если в списке закладок есть изменившиеся закладки. /IfNoUpdates ... Выполнение сценария прерывается только в случае, если в списке закладок нет изменившихся закладок. Если параметр не задан, то эта команда всегда прерывает выполнение сценария. Пример: CheckBookmarks /all AbortScript /IfNoUpdates CreateReport /template="{bookmarkdir}changes.htm" (+) /output="e:\report.htm" (+) /bookmarks=changed © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 100 BackupToZip BackupToZip /bookmarks /config /addDate "..." Эта команда может использоваться для резервного копирования текущего открытого файла закладок и/или конфигурации программы в указанный zip-файл. Вы можете использовать переменные {programdir} и {bookmarkdir}. {programdir} - это каталог установленного WebSite-Watcher, {bookmarkdir} - это каталог текущего открытого файла закладок (*.wsw). Обе переменных содержат наклоненную влево черту (\). Смотрите также «Предопределённые переменные». Параметры: /bookmarks ... резервное копирование всех закладок вместе с загруженными кэш-файлами /config ... резервное копирование текущей конфигурации программы /addDate ... добавление текущей даты к указанному zip-файлу Пример: BackupToZip /bookmarks /addDate "e:\cd\bookmarks.zip" BackupToZip /config "e:\cd\wswconfig.zip" CheckBookmarks CheckBookmarks /all /autowatch /hotsites Проверка всех закладок в папке "Все Закладки", "Автопроверка" или "Hotsites". Вы можете использовать только один параметр для этой команды. Пример: CheckBookmarks /hotsites CheckFolder CheckFolder "foldername" /subfolder Эта команда проверяет все закладки в указанной папке. Подпапка может быть задана косой чертой между папкой и подпапкой, в таком виде "папка\подпапка". Параметр /subfolder проверяет также и все закладки в подпапках (вложенных папках). Пример: CheckFolder "Programming" /subfolder CheckFolder "Tools\Internet" CloseBrowser CloseBrowser Закрывает окно встроенного браузера. © 2014 Aignesberger Software GmbH 101 WebSite-Watcher 2014 CreateReport CreateReport /template="..." /output="..." /bookmarks=all|changed Создание отчёта с заданными параметрами. Параметры: /template="..." определяет шаблон отчёта (полный путь к файлу и его имя). /output="..." определяет конечный файл, в котором будет сохранён отчёт (полный путь и имя файла). В параметрах /template и /output Вы можете использовать переменные {programdir} и {bookmarkdir} , которые будут заменены соответствующими именами каталогов. {programdir} есть каталог установленной программы WebSite-Watcher, {bookmarkdir} есть каталог текущего открытого файла закладок (*.wsw). Обе переменные содержат в конце наклоненную влево черту. Смотрите также «Предопределённые переменные». /bookmarks=all|changed|unread all ... определяет, какие закладки должны быть добавлены в отчёт. changed ... все изменённые закладки с момента последнего запуска проверки unread ... все изменённые/непрочитанные закладки, отображенные красным цветом / полужирным шрифтом /folder="..." создает отчет в указанной папке. Папки и подпапки должны быть разделены обратной косой чертой. например, /folder="Software\WSW" /subfolder включает в себя все вложенные папки. Может использоваться только в сочетании с параметром /folder="..." Пример: CreateReport /template="{bookmarkdir}changes.htm" (+) /output="e:\report.htm" (+) /bookmarks=changed ImportBookmarks ImportBookmarks параметры Импорт всех/новых закладок из указанного исходного файла в указанную папку. Параметры: /IE ... Импорт Избранного из Internet Explorer /Opera ... Импорт закладок из Opera /Firefox ... Импорт закладок из Firefox /Chrome ... Импорт закладок из Chrome /Text1 ... Импорт URL из текстового файла (каждый URL в отдельной строке). Файл должен быть сохранен в формате Ansi или UTF8. /Text2 ... Импорт URL из текстового файла (формат каждой строки: Имя TAB Url). Файл должен быть сохранен в формате Ansi или UTF8. /TextIgnoreDuplicates ... Если закладки импортируются из текстового файла, то вы можете игнорировать проверку дубликатов (медленнее). Работает только в сочетании с /Text1 или /Text2. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 102 /WSW ... Импорт закладок из файла экспорта WebSite-Watcher /Excel ... Импорт закладок из файла Excel. Смотрите также раздел «Импорт из Excel / CSV» /CSV ... Импорт закладок из файла CSV. Смотрите также раздел «Import from Excel / CSV» /duplicates=insert ... Вставляет все дубликаты. Работает только в сочетании с /Excel или /CSV. /duplicates=ignore ... Не импортировать дубликаты. Работает только в сочетании с /Excel или /CSV. /duplicates=update ... Если закладка уже существует, то закладка не вставляется, но свойства будут обновлены. Работает только в сочетании с /Excel или /CSV. /file="..." ... определяет файл, из которого должен быть выполнен импорт закладок. Этот параметр работает только в комбинации с флажком /Text1, /Text2 и /WSW. Вы можете использовать переменные {programdir} и {bookmarkdir}. {programdir} есть каталог установленной программы WebSite-Watcher, {bookmarkdir} есть каталог текущего открытого файла закладок (*.wsw). Обе переменных содержат наклоненную влево черту. Смотрите также «Предопределённые переменные». /targetfolder="..." ... конечная папка в WebSite-Watcher, в которую будут сохранены импортируемые закладки. Наклоненная влево черта может использоваться для указания подпапок (например, "папка\подпапка"). Пример: // импорт из файла Excel ImportBookmarks /Excel /file="{programdir}import.xls" /targetfolder="xls" /duplicates=update // Импорт из файла CSV ImportBookmarks /CSV /file="{programdir}import.csv" /targetfolder="csv" /duplicates=ignore // Импорт из текстового файла ImportBookmarks /Text1 /file="{programdir}text1.txt" /targetfolder="Import\Text-1" ImportBookmarks /Text2 /file="{programdir}text2.txt" /targetfolder="Import\Text-2" // Импорт из Internet-Explorer и Opera ImportBookmarks /IE /targetfolder="Import\Internet Explorer" ImportBookmarks /Opera /targetfolder="Import\Opera" // Импорт из файла экспорта WebSite-Watcher ImportBookmarks /WSW /file="c:\123\exp.zip" /targetfolder="Import\WSW" MarkAsVisited MarkAsVisited "имя_папки" /subfolder /all Помечает закладки, как просмотренные. Вы можете задать имя папки или использовать параметр /all для всех закладок. Подпапки могут быть определены с помощью наклоненной влево черты между папкой и подпапкой, например "папка\подпапка". Если Вы определяете имя папки, то можете использовать параметр /subfolder для пометки также и закладок в подпапках как прочитанных. Параметр /all может использоваться только исключительно без других параметров. © 2014 Aignesberger Software GmbH 103 WebSite-Watcher 2014 Пример: MarkAsVisited "Tools" /subfolder MarkAsVisited /all MessageBox MessageBox "message" /beep Отображает окно сообщения с указанным текстом. Используйте \n для окончания строки в сообщении. Параметр /beep воспроизводит короткий звук. Пример: MessageBox "Script finished\nThis is a second line" /beep OpenBookmarkFile OpenBookmarkFile "..." Открывает файл закладок (полные путь + имя файла). Вы также можете использовать переменные {programdir} и {bookmarkdir}, которые будут заменены на соответствующие имена каталогов. {programdir} это каталог установки WebSite-Watcher, {bookmarkdir} это каталог открытого в данный момент файла закладок (*.wsw). Смотрите также раздел «Предопределённые переменные». Пример: OpenBookmarkFile "{bookmarkdir}tools.wsw" OpenWithInternalBrowser OpenWithInternalBrowser "..." Открывает указанный HTML-файл во встроенном в WebSite-Watcher браузере, Вы должны использовать полный путь к файлу и имя файла. В параметре файла Вы можете использовать переменные {programdir} и {bookmarkdir} , которые будут заменены соответствующими именами каталогов. {programdir} есть каталог установленной программы WebSite-Watcher, {bookmarkdir} есть каталог текущего открытого файла закладок (*.wsw). Смотрите также раздел «Предопределённые переменные». Пример: OpenWithInternalBrowser "{bookmarkdir}report.htm" PlaySound + SystemBeep PlaySound "wavfile" // или SystemBeep PlaySound воспроизводит заданный wav-файл (полный путь + имя файла). SystemBeep делает короткий звуковой сигнал. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 104 Пример: OpenWithInternalBrowser "{bookmarkdir}report.htm" QuestionBox QuestionBox "Message" /ContinueOnYes /ContinueOnNo /beep Отображает окно запроса с определённым текстом и кнопками "Да" и "Нет". Используйте \n для окончания строки в сообщении. Параметры /ContinueOnYes или /ContinueOnNo определяют - какая кнопка должна быть нажата для продолжения выполнения сценария, в противном случае выполнение сценария будет прервано. Если никакого параметра не задано, то выполнение сценария будет продолжено независимо от нажатой кнопки. Информация о нажатой кнопке доступна через функцию GetQuestionBoxResult (смотрите пример ниже). Параметр /beep воспроизводит короткий звук. Примеры: QuestionBox "Start this script?" /ContinueOnYes /beep QuestionBox "Question\nAbort this script?" /ContinueOnNo /beep QuestionBox "Click yes or no" if GetQuestionBoxResult="yes" then MessageBox "yes has been clicked" if GetQuestionBoxResult="no" then MessageBox "no has been clicked" Quit Quit /IfNoUpdates Прерывает сценарий и закрывает WebSite-Watcher. Если определён параметр /IfNoUpdates, эта команда выполняется только при отсутствии доступных обновлений. RasDial RasDial Устанавливает соединение с Интернетом, если у вас модемное соединение. Вы должны настроить конфигурацию "Dial-up" в конфигурации программы, иначе эта функция не будет работать. Вы можете использовать команду RasHangup для разрыва соединения. Встроенная функция RasIsConnected может использоваться для определения наличия уже существующего соединения с Интернет. Пример: RasDial // Вывод сообщения и прерывание выполнения сценария, если соединение недоступно if RasIsConnected="1" then goto check MessageBox "No connection!" AbortScript label check CheckFolder "Software" RasHangup © 2014 Aignesberger Software GmbH 105 WebSite-Watcher 2014 RasHangup RasHangup Разрыв существующего соединения с Интернет. Вы должны настроить конфигурацию "Dial-up" в конфигурации программы, иначе эта функция не будет работать. Вы можете использовать команду RasDial для запуска дозвона провайдеру Интернет. Встроенная функция RasIsConnected может использоваться для определения наличия уже существующего соединения с Интернет. Пример: RasDial // Вывод сообщения и прерывание выполнения сценария, если соединение недоступно if RasIsConnected="1" then goto check MessageBox "No connection!" AbortScript label check CheckFolder "Software" RasHangup RestartScript RestartScript Перезапуск сценария. Это означает циклическое выполнение сценария. Выполнение сценария может быть прервано кнопкой Стоп на панели инструментов. В качестве альтернативы Вы можете использовать команды AbortScript или QuestionBox для запроса клиента прервать выполнение сценария или продолжить его работу. RunProgram RunProgram "..." /parameter="..." /wait Запуск внешней программы с определёнными параметрами командной строки. Если задан параметр /wait, то выполнение сценария приостанавливается до завершения выполнения внешней программы. Переменные в параметрах {programdir} и {bookmarkdir} могут использоваться для определённой программы и параметра /parameter. {programdir} есть каталог установленной программы WebSite-Watcher, {bookmarkdir} есть каталог текущего открытого файла закладок (*.wsw). Смотрите также раздел «Предопределённые переменные». Пример: RunProgram "E:\Opera\Opera.exe" /parameter="{bookmarkdir}report.htm" SelectFolder SelectFolder "foldername" Эта команда выбирает указанную папку. Подпапки могут быть определены с обратной косой чертой между папкой и подпапкой, как "папка\подпапка". © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 106 Пример: SelectFolder "AutoWatch" SelectFolder "Tools\Internet" SendBookmarks SendBookmarks /bookmarks=changed|unread /textformat /attach=changes Отправка e-mails для указанных закладок (один e-mail для закладки). Эта команда использует те же конфигурации программы (отправитель, получатель, переменные и т.д.), которые используются для действия закладки Отправить e-mail. Параметры: /bookmarks=changed|unread определяет, какие закладки должны быть отправлены. changed ... все измененные закладки с момента выполнения последней проверки unread ... все измененные/непрочитанные закладки, которые отображаются красным цветом / полужирным шрифтом /textformat по умолчанию, эта команда отправляет сообщения электронной почты в формате HTML с проверенной страницей и отмеченными изменениями как содержание. Если указан этот параметр, электронная почта будет отправлена в текстовом формате. Для темы и тела сообщения будет использоваться конфигурация программы Отправить e-mail. /attach=changes Этот параметр работает только в сочетании с /textformat и прикладывает к e-mail версию с подсвеченными изменениями. Пример: // Отправить e-mail для всех непрочитанных закладок в текстовом формате SendBookmarks /bookmarks=unread /textformat SendMail SendMail /recipient="..." /subject="..." /body="..." /attachfile="..." Отправка сообщений электронной почты. Параметры: /recipient="..." определяет один или несколько адресов получателя электронной почты. При вводе нескольких адресов отделяйте их друг от друга пробелом или запятой. /subject="..." определяет тему почтового сообщения /body="..." определяет текст почтового сообщения, Вы можете использовать \n для окончания строк. /attachfile="..." добавляет вложение в e-mail с полным путём к файлу + именем файла. Вы можете использовать переменные {programdir} и {bookmarkdir}. {programdir} есть каталог установленной программы WebSite-Watcher, {bookmarkdir} является каталогом текущего открытого файла закладок (*.wsw). Смотрите также раздел «Предопределённые переменные». Пример: SendMail /recipient="support@domain.com, info@domain2.com" (+) /subject="WSW-Report" /body="Attached a WSW report" (+) /attachfile="{bookmarkdir}report.htm" © 2014 Aignesberger Software GmbH 107 WebSite-Watcher 2014 StartAutoWatch StartAutoWatch Закрывает работающий сценарий и запускает режим AutoWatch. SyncBookmarkFiles SyncBookmarkFiles /targetfile="..." параметры Синхронизация файла открытой закладки с указанным целевым файлом закладки. Параметры: /InsertOpened ... вставка отсутствующих закладок в открытый файл /UpdateOpened ... обновление новых закладок в открытом файле /DeleteOpened ... очистка от удалённых закладок в открытом файле /InsertTarget ... вставка отсутствующих закладок в конечный файл /UpdateTarget ... обновление новых закладок в конечном файле /DeleteTarget ... очистка от удалённых закладок в конечном файле /targetfile="..." ... определяет файл закладок (абсолютный путь + имя файла), который должен быть синхронизирован с открытым файлом закладок. Вы можете использовать переменные {programdir} и {bookmarkdir}. {programdir} есть каталог установленной программы WebSite-Watcher, {bookmarkdir} есть каталог текущего открытого файла закладок (*.wsw). Обе переменных содержат в конце наклоненную влево черту. Смотрите также «Предопределённые переменные». Пример: SyncBookmarkFiles /targetfile="{bookmarkdir}sync.wsw" (+) /InsertTarget /UpdateTarget /DeleteTarget WaitDelay + WaitUntilTime WaitDelay секунды Ожидает заданное количество секунд. В строке состояния отображается обратный отсчет, пока таймер не закончится. Пример: // Ожидает 10 секунд WaitDelay 10 WaitUntilTime ЧЧ:ММ Ожидает до указанного времени (часы (0-23) и минуты (0-59) в формате "ЧЧ:ММ"). В строке состояния отображается обратный отсчет, пока таймер не закончится. Пример: // Проверка в 9 часов WaitUntilTime 9:00 CheckBookmarks /all // Проверка в 16 часов WaitUntilTime 16:00 © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 108 CheckBookmarks /all RestartScript WindowToTray WindowToTray Минимизирует главное окно WebSite-Watcher в панель трея. Переменные и дополнительные команды Переменные Переменные начинаются с отдельного знака доллара ($), сопровождаемого именем переменной. Имя может содержать символы (a-z), цифры (0-9) и символ подчёркивания (_). Длина имени переменной не ограничена. Имена переменных нечувствительны к регистру ($abc то же самое, что и $ABC). Вы можете назначить цифры и строки в переменной, строки должны быть заключены в двойные кавычки ("..."). Явное представление не требуется. Вы можете назначить следующие значения переменной: Цифра Строка - заключена в двойные кавычки ("...") Другая переменная Результат из встроенной функции Примеры: $i = 1 $string = "This is a string" $s = $string $result = GetQuestionBoxResult Числовые операции Для числовых вычислений Вы можете использовать следующие операции: переменная = переменная = переменная = переменная = Operand1 и Operand2 функций. Operand1 + Operand2 Operand1 - Operand2 Operand1 * Operand2 Operand1 / Operand2 могут быть цифрами, другими переменными или результатами из встроенных Строковые операции Для строк Вы можете использовать следующую операцию: переменная = Operand1 + Operand2 Operand1 и Operand2 могут быть строками, другими переменными или результатами из встроенных функций. Примеры: $i = 1 $i2 = $i + 10 $s = "Text1" $s2 = "Text2" $s3 = $s1 + $s2 Обратите внимание, что в строке возможна максимум одна операция. © 2014 Aignesberger Software GmbH 109 WebSite-Watcher 2014 Переменные MessageBox и другие команды Переменные могут также использоваться в команде MessageBox и параметрах других команд. Используйте имя переменной между { и }, тогда они будут автоматически заменены значениями переменной. Примеры: $i = 1 $s = "Text1" MessageBox "Value of i is {$i} and value of s is {$s}" $dynamic_filename = GetUniqueID + ".htm" CreateReport /template="{bookmarkdir}changes.htm" (+) /output="e:\{$dynamic_filename}" (+) /bookmarks=changed Предопределённые переменные В параметрах вы можете использовать указанные ниже предопределенные переменные. Все переменные содержат обратную косую черту (\). {programdir} каталог, в который инсталлирован WebSite-Watcher {bookmarkdir} каталог открытого в данный момент файла закладок (*.wsw) {appdatadir} каталог данных приложения {mydocumentsdir} каталог "Мои документы" ("My Documents") Label и Goto Label <идентификатор> // и Goto <идентификатор> "Label" маркирует позицию в сценарии указанным идентификатором. Используется как цель для оператора "goto". "Goto" переходит к указанной метке и продолжает выполнения сценария с этого места. Пример: Label restartLabel CheckBookmarks /all WaitDelay 10 Goto restartLabel Оператор IF if <выражение> then <команда> Если указанное выражение возвращает TRUE, то выполняется команда, стоящая после "then", в противном случае сценарий продолжает выполнение следующей строки. <выражение> может иметь следующий формат: Operand1 <= Operand2 Operand1 < Operand2 Operand1 <> Operand2 © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 110 Operand1 = Operand2 Operand1 > Operand2 Operand1 >= Operand2 Operand1 и Operand2 могут быть числами, строками, переменными или результатами из встроенных функций. Пример 1: Переход к метке "noUpdate", если не обнаружено обновление закладок. $updated = GetUpdatedBookmarkCount if $updated=0 then goto noUpdate Пример 2: Отображение запроса на выполнение разных действий, в зависимости от кнопки, которая будет нажата. QuestionBox "Click yes or no" if GetQuestionBoxResult="yes" then goto yes_has_been_clicked if GetQuestionBoxResult="no" then goto no_has_been_clicked label yes_has_been_clicked // вставьте команды здесь goto continue label no_has_been_clicked // вставьте команды здесь label continue Пример 3: Цикл с 10 итерациями. $i=1 Label BeginLoop1 if $i > 10 then goto EndLoop1 // команды, например Messagebox которая отображает номер итерации MessageBox "Iteration #: {$i}" $i = $i + 1 goto BeginLoop1 Label EndLoop1 Встроенные функции Следующие функции могут использоваться с переменными и IF-операторами. GetSelectedFolder возвращает имя выбранной папки. Пример: $selected = GetSelectedFolder MessageBox "The selected folder {$selected} will now be checked..." CheckFolder "{$selected}" GetUpdatedBookmarkCount Возвращает количество обновлённых закладок. GetLastCheckUpdatedBookmarkCount Возвращает количество обновлённых закладок с момента последнего запуска проверки. GetFolderBookmarkCount(...) Возвращает количество закладок в указанной папке. Папки и подпапки должны быть разделены обратной косой чертой, например, GetFolderBookmarkCount("Software\WSW") GetFolderUpdatedBookmarkCount(...) Возвращает количество обновленных закладок в указанной папке. Папки и подпапки должны © 2014 Aignesberger Software GmbH 111 WebSite-Watcher 2014 быть разделены обратной GetFolderUpdatedBookmarkCount("Software\WSW") косой чертой, например, GetUniqueID Возвращает уникальный строковый идентификатор, например 20041212120023123. Это значение может использоваться в случае, если требуются уникальные имена файлов. Например, для генерации отчёта в новый, уникальный файл. GetDateTime(...) Возвращает текущие дату/время. Как параметр Вы можете определить формат даты. Формат: yy - текущий год, содержащий в своём составе 2 цифры yyyy - текущий год, содержащий в своём составе 4 цифры m - текущий месяц, содержащий в своём составе 1 или 2 цифры, без начального нуля (1-12) mm - текущий месяц, содержащий в своём составе 2 цифры, с начальным нулём (01-12) mmm - название текущего месяца, содержащее в своём составе 3 символа (jan, feb...) mmmm - полное название текущего месяца d - текущий день, содержащий в своём составе 1 или 2 цифры, без начального нуля (1-31) dd - текущий день, содержащий в своём составе 2 цифры, с начальным нулём (01-31) ddd - название текущего дня, содержащее в своём составе 2 символа dddd - название текущего дня hh - часы nn - минуты ss - секунды Пример: $date1 = GetDateTime("yyyy-mm-dd") $format = "dd-mm-yyyy" $date2 = GetDateTime($format) GetDayOfTheWeek возвращает цифру дня недели. 1 для понедельника, 2 для вторника, 3 для среды, и так далее. GetQuestionBoxResult Возвращает команду нажатия кнопки QuestionBox (окно запроса). Результатом является "да" или "нет". Uppercase Преобразует строку в верхний регистр. Lowercase Преобразует строку в нижний регистр. FileExists("...") Проверяет, существует ли файл. Результатом является "1" или "0". Пример: if FileExists("c:\test\export.htm") = "1" then MessageBox "File export.htm exists" GetBookmarkFileName Возвращает имя текущего открытого файла закладок (полные путь + имя файла), вроде "c:\wsw\bm.wsw". Пример: // Сохранение абсолютного пути + имени файла текущего открытого файла закладок в переменной $s $s = "{bookmarkdir}" + GetBookmarkFilename // Открывает файл закладки "c:\wsw\bm.wsw" если этот файл сейчас не открыт $s1 = "{bookmarkdir}" + GetBookmarkFilename $s1 = Lowercase($s1) if $s1 <> "c:\wsw\bm.wsw" then OpenBookmarkFile "c:\wsw\bm.wsw" RasIsConnected Возвращает 1, если модемное (dialup) соединение существует и 0 в противном случае. Вы должны настроить конфигурацию "Dial-up" в общей конфигурации программы, иначе эта © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 112 функция всегда будет возвращать 0. Смотрите также RasDial и RasHangup. TestConnection(...) Тестирует указанный URL, если подключение к Интернету существует. Если указанный URL может быть доступен, эта функция возвращает 1. Если указанный URL сообщает об ошибке, то эта функция возвращает 0. Пример: if TestConnection("http://www.domain.com") = 0 then AbortScript Глобальные настройки/флажки Флажки отключения определённых свойств закладки Следующие команды могут использоваться для временного отключения определённых свойств закладок на время выполнения сценария: Настройки времени: SetBookmarkUseTimeSettings /off Действия закладок: SetBookmarkActionSendMail /off SetBookmarkActionOpenWebsite /off SetBookmarkActionRunPrg /off SetBookmarkActionExport /off SetBookmarkActionLWA /off Пример: SetBookmarkActionSendMail /off SetBookmarkActionLWA /off CheckBookmarks /all В этом примере все закладки проверяются без отправки сообщения по электронной почте и изменённые страницы не экспортируются в Local Website Archive. Пример 1: Проверка закладок Следующий пример проверяет все закладки трёх указанных папок. Все заданные действия закладок временно заблокированы, на время проверки закладок. Вначале WebSite-Watcher запрашивает, хотите ли Вы выполнить скрипт. // интересуемся, нужно ли выполнять скрипт QuestionBox "Run the script ?" /ContinueOnYes /beep // отключаем действия закладок SetBookmarkActionSendMail /off SetBookmarkActionOpenWebsite /off SetBookmarkActionRunPrg /off SetBookmarkActionLWA /off SetBookmarkActionExport /off // проверяем нижеуказанные папки CheckFolder "Tools\Internet" CheckFolder "Blogs" /subfolder CheckFolder "Magazines" Пример 2: Эмуляция Автопроверки Следующий пример эмулирует возможность Автопроверки для всех Hotsites из двух разных файлов © 2014 Aignesberger Software GmbH 113 WebSite-Watcher 2014 закладок. Задержка между проверками - одна минута. Сценарий использует параметры настройки времени, которые были заданы для ручной проверки в свойствах закладки. Выполнение сценария может быть прервано кнопкой "Прервать" на главной панели инструментов. Заданные действия закладки будут выполнены (например, "Отправить e-mail"), так как они не заблокированы в этом сценарии. // Проверка всех закладок папки Hotsites из файла tools.wsw OpenBookmarkFile "f:\wswatch\tools.wsw" CheckBookmarks /hotsites // Проверка всех закладок папки Hotsites из файла magazines.wsw OpenBookmarkFile "{bookmarkdir}magazines.wsw" CheckBookmarks /hotsites // Ожидание 60 секунд, затем перезапуск скрипта WaitDelay 60 RestartScript Пример 3: Создание и отправка отчёта Следующий пример проверяет все закладки. По окончании проверки создаёт отчёт и открывает его во встроенном браузере. Опционально Вы можете отправить отчёт по двум разным адресам электронной почты, сценарий выдаст запрос перед отправкой сообщения электронной почты. // Запрос на выполнение сценария QuestionBox "Run the script ?" /ContinueOnYes /beep // Проверка всех закладок CheckBookmarks /all // Создание отчёта и открытие его во встроенном браузере CreateReport /template="{programdir}examples\report_template_changes.htm" (+) /output="c:\report.htm" (+) /bookmarks=changed OpenWithInternalBrowser "c:\report.htm" // Запрос перед отправкой e-mail // Если пользователь не прервал выполнение сценария, то отправляется e-mail QuestionBox "Send the report by e-mail?" /ContinueOnYes /beep SendMail /recipient="support@domain.com,info@domain2.com" (+) /subject="WSW-Report" (+) /body="Attached a WSW report" (+) /attachfile="c:\report.htm" MessageBox "Done." /beep Дополнительные примеры / Участки кода 1. Проверка всех закладок и отображение окна сообщения с количеством обновлённых закладок CheckBookmarks /all $Updated = GetUpdatedBookmarkCount MessageBox "Bookmarks changed: {$Updated}" /beep 2. Проверка всех закладок. Если обновления доступны, то будет создан и отправлен по электронной почте отчёт с динамически сгенерированным уникальным именем файла CheckBookmarks /all if GetUpdatedBookmarkCount=0 then goto NoUpdates $filename = GetUniqueID + ".htm" CreateReport /template="{programdir}examples\report_template_changes.htm" /output="c:\{$filename }" /bookmarks=changed SendMail /recipient="support@domain.com,info@domain2.com" /subject="WSW-Report" /body="Attached a WSW report" /attachfile="c:\{$filename}" Label NoUpdates © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 114 3. Отображение окна запроса на выполнение действия (QuestionBox) и выполнение разных связанных действий при нажатии определённой кнопки QuestionBox "Click yes or no" if GetQuestionBoxResult="yes" then goto yes_has_been_clicked if GetQuestionBoxResult="no" then goto no_has_been_clicked label yes_has_been_clicked // вставьте команды здесь goto continue label no_has_been_clicked // вставьте команды здесь label continue 4. Цикл с 10-ю итерациями $i=1 Label BeginLoop1 if $i > 10 then goto EndLoop1 // команды, например, вывод окна сообщений (Messagebox), которое отображает номер итерации MessageBox "Iteration #: {$i}" $i = $i + 1 goto BeginLoop1 Label EndLoop1 5. Открытие файла закладки, если открыт не он // Открыть файл закладки "c:\wsw\bm.wsw", если он не является открытым файлом закладки $s1 = "{bookmarkdir}" + GetBookmarkFilename $s1 = Lowercase($s1) if $s1 <> "c:\wsw\bm.wsw" then OpenBookmarkFile "c:\wsw\bm.wsw" Система плагинов Краткий обзор Система плагинов предоставляет возможность изменить или расширить функциональность проверки закладок, написав небольшой сценарий на языке "Basic". WebSite-Watcher содержит мощную интегрированную среду разработки (IDE) для написания, отладки и тестирования этих плагинов. Сценарий плагина должен включать в себя как минимум одну функцию события. Во время проверки закладки, WebSite-Watcher вызывает эти функции событий (при наличии) в соответствующее время. Это позволяет, например, извлекать определенную цену с веб-страницы, сравнивать ее с ценой из предыдущей версии, и предупредить только если новая цена будет ниже 100 долларов США и ниже предыдущей цены. WebSite-Watcher поддерживает частные плагины (которые создаются и сохраняются в закладках) и общие плагины (которые сохраняются в отдельных файлах и могут совместно использоваться закладками). Общие/частные плагины Типы плагинов WebSite-Watcher поддерживает плагины двух типов: Частные плагины Частные плагины создаются и хранятся в закладке, и не могут совместно использоваться закладками. © 2014 Aignesberger Software GmbH 115 WebSite-Watcher 2014 Общие плагины Общие плагины хранятся в отдельных файлах и могут совместно использоваться несколькими закладками. Оба типа плагинов используют один и тот же язык программирования и имеют тот же набор функций, но хранятся по-разному. Идентификация общих плагинов В то время как частные плагины хранятся в закладке, общие плагины требуют идентификации механизма проверки, если они совместимы с конкретной закладкой. Для каждого общего плагина должна быть введена точная и уникальная идентификация строк HTML-источника, чтобы сделать их совместимыми с конкретной страницей. Эти идентификаторы могут быть введены во вкладке "Идентификация" среды разработки плагинов (IDE). Автоматическое предложение общих плагинов Во время проверки закладки WebSite-Watcher проверяет (на основе идентификации строк) совместимость общего плагина со страницей. Если обнаруживается совместимость плагинов, то при открытии страницы во внутреннем браузере, информация об этом отображается в информационной панели браузера. Нажатие на эту информационную панель позволяет открыть список плагинов для выбора совместимого плагина. Функции событий Основной сценарий плагина должен содержать одно или несколько событий функции, которые вызываются из WebSite-Watcher в соответствующее время. Все функции событий начинаются с "Wsw_" Wsw_SelectPlugin Эта функция вызывается, когда пользователь выбирает плагин. Эта функция позволяет проверить все необходимые условия (например, существование внешнего конвертера) и отменить выбор, если требуется. Wsw_BeforeCheck Эта функция вызывается до того, как началась проверка закладки. Вы можете использовать эту функцию, чтобы изменить некоторые свойства закладки до начала проверки. Wsw_MergePages Эта функция вызывается во время проверки закладки и даёт возможность объединения различных страниц в одной странице. Wsw_PreProcessPage Эта функция вызывается сразу после загрузки страницы, и запускается перед любым другим процессом. Эта функция может быть использована для изменения исходного кода страницы или даже для преобразования его в другой формат. Wsw_CompareVersions Эта функция вызывается для сравнения веб-версии страницы с локально сохраненной версией. Вы можете фильтровать контент и решать, когда следует сообщить об обновлении закладки, например, когда определенная цена в интернет-версии станет меньше, чем в локально сохраненной версии. Wsw_CheckKeywords Эта функция вызывается, когда WebSite-Watcher ищет ключевые слова. Она может быть использована для дополнительной обработки ключевых слов с логическими операторами. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 116 Wsw_ActionsOnUpdate Эта функция вызывается для выполнения действий после обновления, инициализации или ошибки. Wsw_AfterCheck Эта функция вызывается по окончании проверки закладки. Список встроенных функций WebSite-Watcher имеет множество встроенных функций (в частности, строковые функции), которые могут быть вызваны из сценариев, написанных на языке Basic. В следующих декларациях и примерах, строковые переменные часто начинаются с "s", целочисленные переменные часто начинаются с "i" или "n". Поиск строк function InStr(Source As String, SearchStr As String) As Integer function LastPos(sFind, sSource) As String function FindString(sSource, sFindStr, ByRef iStartPos, ByRef iLength) As Boolean function FindWildcard(sSource, sFindWildcard, ByRef iStartPos, ByRef iLength) As Boolean function GetFirstWildcardMatch(sSource, sFindWildcard) As String function GetAllWildcardMatches(sSource, sFindWildcard) As String function DeleteAllWildcardMatches(sSource As String, sWildcard As String) As String function FindRegex(sSource, sRegex, ByRef iStartPos, ByRef iLength) As Boolean function GetFirstRegexMatch(sSource, sRegex) As String function GetAllWildcardMatches(sSource, sRegex) As String Строковые извлечения function Left(sSource As String, iLength As Integer) As String function Right(sSource As String, iLength As Integer) As String function Mid(sSource As String, iStartPos As Integer, iLength As Integer) As String sub Delete(ByRef sSource As String, iStartPos As Integer, iLength As Integer) function CopyAndDelete(ByRef sSource, iStart, iLength) As String function ExtractDigits(sSource) As String function ExtractChars(sSource, sValidChars) As String Строковые функции для HTML-процессов function FindHtmlTag(sPageSource, sTagName, sParamName, ByRef iStartPos, ByRef iLength) As Boolean function DeleteHtmlTags(sPageSource) As String function OptimizeHtml(sPageSource) As String function HtmlGetParam(sTagSource, sParamName) As String function HtmlExtract(sHtmlSource, sCheckUrl As String, iOption As Integer) As String function DownloadPageToString(Handle, sUrl As String, sReferer As String, ByRef sMem) As Integer Строковые манипуляции/преобразования function LCase(s As String) As String function UCase(s As String) As String function AnsiLowercase(s As String) As String function AnsiUppercase(s As String) As String function Trim(s As String) As String function LTrim(s As String) As String function RTrim(s As String) As String © 2014 Aignesberger Software GmbH 117 WebSite-Watcher 2014 function Len(s As String) As Integer function Replace(sSource As String, sSearchStr As String, sReplaceStr As String) As String function ReplaceText(sSource As String, sSearchStr As String, sReplaceStr As String) As String function ReplaceWildcard(sSource As String String, sSearchWildcard As String, sReplaceStr As String) As function ReplaceRegex(sSource As String, sSearchRegexStr As String, sReplaceStr As String) As String sub Insert(sValue As String, ByRef sSource As String, iPosition As Integer) function Chr(iCharCode As Integer) As Char function Asc(s As Char) As Integer function DeleteDoubleBlanks(s As String) As String function Crc32(s As String) As String function GetUniqueID As String sub SortStringLines(ByRef s) Строковые списки sub StringList_AddItem(ByRef sList As String, sItem As String) sub StringList_InsertItem(ByRef sList As String, index As Integer, sItem As String) sub StringList_ChangeItem(ByRef sList As String, index As Integer, sItem As String) sub StringList_DeleteItem(ByRef sList As String, index As Integer) function StringList_GetItem(sList As String, index As Integer) As String function StringList_GetItemIndex(sList As String, sItem As String) As Integer function StringList_ItemCount(sList As String) As Integer sub StringList_Sort(ByRef sList As String) function StringList_LoadFromFile(sFilename As String, ByRef sList As String) As Boolean Функции, связанные с файлами sub DownloadFile(Handle, sUrl As String, sReferer As String, bAllowDuplicates As Boolean) function FileExists(sFileName As String) As Boolean function FileToString(sFileName As String, ByRef s As String) As Boolean function StringToFile(sFileName As String, s As String) As Boolean function AddStringToFile(sFileName As String, s As String) As Boolean function DeleteFile(sFileName As String) As Boolean function MakeUniqueFilename(sFileName As String) As String function ExtractFileName(sFileName As String) As String function ExtractFileExt(sFileName As String) As String function ExtractFilePath(sFileName As String) As String function ChangeFileExt(sFileName As String, sDotNewFileExt As String) As String function AddBackslash(sDirectory) As String Выполнение программ sub Execute(sProgram, sParam) function ExecuteAndWait(sProgram, sParam, bHidden) As Integer Преобразования строк/чисел/дат function CBool(expression) As Boolean function CByte(expression) As Integer function CDate(expression) As Float function CDbl(expression) As Double function CInt(expression) As Integer © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 118 function CLng(expression) As Integer function CSng(expression) As Float function CStr(expression) As String Функции, связанные с числами function Abs(Value As Double) As Double function Round(Value As Double) As Integer function Trunc(Value As Double) As Integer function Rnd() As Single Функции, связанные с датой/временем function Now() As DateTime function Date() As DateTime function FormatDateTime(sFormat As String, dDateTime As DateTime) As String sub DecodeDate(DateValue As DateTime, ByRef Year As Integer, ByRef Month As Integer, ByRef Day As Integer) sub DecodeTime(TimeValue As DateTime, ByRef Hour As Integer, ByRef MSec As Integer) Integer, ByRef Min As Integer, ByRef Sec As function EncodeDate(Year As Integer, Month As Integer, Day As Integer) As DateTime function EncodeTime(Hour As Integer, Min As Integer, Sec As Integer, MSec As Integer) As DateTime function Day(DateValue As DateTime) As Integer function DayOfWeek(DateValue As DateTime) As Integer function IncMonth(Value As DateTime, IncValue As Integer) As DateTime function IsLeapYear(Year As Integer) As Boolean Смешанные функции sub Sleep(iMilliseconds As Number) sub GetComparisonInfo(sMemWeb, sMemLocal, iComparisonMode, ByRef iQtyNew, ByRef iQtyChanged, ByRef iQtyDeleted) Взаимодействие с пользователем sub WswMessageBox(sMsg) function WswInputBox(sMsg) As String Функции закладок function Bookmark_GetProperty(Handle, sProperty) As String sub Bookmark_SetProperty(Handle, sProperty, sValue) function Bookmark_ApplyFilter(Handle, sMem) As String sub Bookmark_AddLog(Handle, sMsg As String) function Bookmark_LoadCacheFile(Handle, iVersion As Integer) As String sub Bookmark_SaveWebDocBinary(Handle, sFilename As String) function GetWswConfiguration(sConfiguration) As String Система плагинов WebSite-Watcher поддерживает дополнительные недокументированные функции, которые, скорее всего, Вам никогда не понадобятся. Вы можете найти список ссылок на них в разделе "Недокументированные функции". Константы Следующие константы могут быть использованы в сценариях плагина: © 2014 Aignesberger Software GmbH 119 WebSite-Watcher 2014 WSW_CONFIG_DIR Строковое выражение. Абсолютный путь к папке конфигурации WebSite-Watcher. WSW_SETUP_DIR Строковое выражение. Абсолютный путь к папке инсталляции WebSite-Watcher. WSW_TEMP_DIR Строковое выражение. Абсолютный путь к папке TEMP WebSite-Watcher. MaxInt Целое число. Максимальное целое число, которое может использоваться. Пример: s = Mid(s, 3, MaxInt) CRLF Строковое выражение. Возврат каретки перевод строки (chr(13)+chr(10)) Пример: s = s + CRLF + "new line" Базовый язык сценариев Краткий обзор Плагины пишутся на языке программирования "Basic". В этой главе дается краткое введение в поддерживаемые функции языка. Плагины должны содержать предопределенные функции событий, которые вызываются из WebSite-Watcher. Плагины не содержат тела сценария, который выполняется автоматически. Идентификаторы Идентификатор должен начинаться с символа (a..z или A..Z) или '_', затем могут следовать алфавитно-цифровые символы или символ "_".Идентификатор не может содержать никаких других символов и пробелов. Действительные идентификаторы: sTag i _export1 Недействительные идентификаторы: 2day tag param tag-parameter Комментарии Комментарии начинаются с одного символа кавычки (') и заканчиваются в конце строки. Чтобы прокомментировать или раскомментировать несколько строк за один шаг, просто выберите их и нажмите комбинацию клавиш Ctrl+Shift+#. Пример: ' Это комментарий i = 1 Типы данных Система плагинов поддерживает многие типы данных, ниже приводится список наиболее важных © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 120 типов для написания плагинов: Строковые Целочисленные Логические (Булевы) С плавающей запятой Двойной точности Даты и времени Типы данных переменных не нужно объявлять явно, тип данных определяется автоматически, как только Вы присвоите переменной значение. Назначаемые операторы Назначение оператора строится с использованием знака "=". Значениям или выражениям могут быть присвоены переменные или имена функций (возвращаемых значений оператора FUNCTION). Примеры: i = 0 sTag = "2" sMsg = "The tag is " + sTag Переменные Каждая переменная должна быть объявлена с директивы DIM, это не требуется для определения типов данных. Тип данных определяется автоматически, когда вы присваиваете значение переменной в первый раз. Использование типов данных в декларации не назначает переменной тип данных, это происходит с первым заданием. Переменные могут быть по умолчанию инициализированы со следующим синтаксисом: Dim x = значение Примеры: Dim i, j Dim s Dim n = 4 Dim s2 = "some text" Dim s3 As String = "another text" i = 13 j = i * i s = "This is a string" Строки Строки встраиваются в двойные кавычки ("). Если вы хотите использовать двойные кавычки внутри строки, вы должны дублировать этот символ. Строки могут быть проиндексированы с помощью символов "[" и "]". Строки имеют основание 1, это означает, что первый символ будет иметь индекс 1. Оператор Str[1] возвращает первый символ, Str[2] возвращает второй символ, и так далее. Примеры: sText = "This is a text" sText2 = "Embed strings in ""double quote"" characters" © 2014 Aignesberger Software GmbH 121 WebSite-Watcher 2014 ch = s[2] s[1] = "A" Массивы Массивы создаются с использованием символов "[" и "]". Массивы базируются на нулевой нумерации, начальный индекс начинается с 0. Поддерживается мульти-индекс массивов, см. примеры ниже. Примеры: NumArray = [2, 4, 6, 8] i = NewArray[1] ' возвращает i = 4 MultiArray = [["green", "red", "blue"], ["apple", "orange", "lemon"]] s = MultiArray[0,2] ' возвращает s = "blue" MultiArray[1,1] = "black" Оператор IF If условие Then [ операторы ] [ ElseIf иначе_если_условие Then иначе_если_операторы ] [ Else иначе_операторы ] End If ' -илиIf условие Then оператор [ Else иначе_оператор ] Выполняет группу операторов, в зависимости от значения выражения. Пример: If Trim(sMemWeb) = "" Then iStatusCode = 2 sStatusMessage = "Error processing Plugin" ElseIf sMemWeb <> sMemLocal Then iStatusCode = 1 sStatusMessage = "Plugin processed" Else sStatusMessage = "Plugin processed" End If Оператор WHILE While условие [ операторы ] [ Exit Do ] [ операторы ] End While ' -или- © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 122 Do While условие [ операторы ] [ Exit Do ] [ операторы ] Loop Выполняет последовательность операторов тех пор, пока данное условие истинно (TRUE). Пример: i = 0 s = "" While i < 10 If s <> "" Then s = s + "," End If s = s + CStr(i) i = i + 1 End While Оператор DO...LOOP Do { While | Until } условие [ операторы ] [ Exit Do ] [ операторы ] Loop ' -илиDo [ операторы ] [ Exit Do ] [ операторы ] Loop { While | Until } условие Повторяет блок операторов ПОКА (WHILE) логическое условие равно True или пока условие не СТАНЕТ (UNTIL) равно True. Если условие стоит до операторов, то оно будет проверяться до приращения (итерации). В противном случае, оно будет проверено после итерации. Пример: i = 0 s = "" Do While True If i >= 10 Then Exit Do End If s = s + CStr(i) i = i + 1 Loop © 2014 Aignesberger Software GmbH 123 WebSite-Watcher 2014 Оператор FOR For счётчик = начальное_значение To конечное_значение [ Step приращение ] [ операторы ] [ Exit For ] [ операторы ] Next Повторяет группу операторов заданное количество раз. Пример: s = "" For i = 0 To 10 Step 2 If s <> "" Then s = s + "," End If s = s + CStr(i) Next Оператор SELECT CASE Select Case текстовое_выражение [ Case значение_1 операторы_1 ] ... [ Case значение_n операторы_n ] [ Case Else иначе_операторы ] End Select Выполняет одну из нескольких групп операторов в зависимости от значения выражения. Пример: Select Case i Case 1 j = "1" s = "one" Case 6 j = "6" s = "six" Case Else j = "-1" s = "invalid" End Select © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 124 Оператор FUNCTION Sub Function [ (список_параметров) ] [ As возвращаемый_тип ] [ операторы ] [ Exit Function ] [ Return значение ] [ операторы ] End Sub Объявляет имя, параметры и код, которые определяют процедуру Function. Список параметров содержит одну или несколько разделенных запятыми переменных, тип данных объявлять не нужно. Возвращаемые параметры должны быть объявлены с помощью директивы BYREF. Для возврата значения из функции, нужно присвоить значение имени функции. Вы можете также использовать оператор возврата с результирующим значением для выхода из функции, например, "return i" Используйте оператор FUNCTION, если Вам нужно вернуть значение вызывающему коду. Используйте оператор SUB, если Вам не нужно возвращать значение. Пример: Function UseMax(a, b) As Integer If a > b Then UseMax = a Else UseMax = b End If End Function ' ********** Function UseMax2(a, b) As Integer If a > b Then return a Else return b End If End Function Оператор SUB Sub name [ (список_параметров) ] [ операторы ] [ Exit Sub ] [ Return ] [ операторы ] End Sub Объявляет имя, параметры и код, которые определяют процедуру Sub. Список параметров содержит одну или несколько разделенных запятыми переменных, тип данных объявлять не нужно. Возвращаемые параметры должны быть объявлены с помощью директивы BYREF. Вы можете использовать операторы "Return" или "Exit Sub" для выхода из процедуры. Используйте оператор FUNCTION, если Вам нужно вернуть значение вызывающему коду. Используйте процедуру SUB, если Вам не нужно возвращать значение. © 2014 Aignesberger Software GmbH 125 WebSite-Watcher 2014 Пример: Sub ComputeTotalPixels(length, width, ByRef total) ' -1 уведомляет об ошибке total = -1 ' выходим немедленно, если длина или ширина равны нулю If (length = 0) Or (width = 0) Then Exit Sub End If total = length * width End Sub Функции событий Wsw_SelectPlugin Sub Wsw_SelectPlugin(Handle, ByRef bCancelSelect) Эта функция вызывается, когда пользователь выбирает плагин. Эта функция позволяет проверить все условия (например, существование внешнего конвертера) и при необходимости отменить выбор. Параметры: Handle ... Наименование закладки. bCancelSelect ... Двоичное. По умолчанию значение False. Установите его в True, если выбор плагина должен быть отменён. Пример: Sub Wsw_SelectPlugin(Handle, ByRef bCancelSelect) If Not FileExists("c:\converter\doc2txt.exe") Then WswMessageBox("The file ""doc2txt.exe"" was Not found!") bCancelSelect = True End If End Sub Wsw_BeforeCheck Sub Wsw_BeforeCheck(Handle) Эта функция вызывается до начала проверки закладки. Вы можете использовать эту функцию, чтобы изменить некоторые свойства закладки до начала проверки. Свойства закладки меняются не навсегда, а только на время текущей проверки. Вы не увидите этих изменений в свойствах закладки. Параметры: Handle ... Название закладки. Пример: Sub Wsw_BeforeCheck(Handle) ' Добавим запись в журнал проверки закладки Bookmark_AddLog(Handle, "Wsw_BeforeCheck> Adjust pagetype and checkmethod") ' Изменим свойства закладки © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 126 Bookmark_SetProperty(Handle, "pagetype", "html") Bookmark_SetProperty(Handle, "checkmethod", "automatic") End Sub Wsw_MergePages Sub Wsw_MergePages(Handle, sMemWeb, nPageNumber, sUrl, ByRef sNewUrl, ByRef sNewPostData, ByRef bChangeBookmarkUrl, ByRef sStatusMessage, ByRef iStatusCode) Эта функция вызывается во время проверки закладки и даёт возможность слияния разных страниц в одну страницу. Параметры: Handle ... Наименование закладки. sMemWeb ... Строковое выражение. Исходный HTML-код последней проверенной страницы. Все ссылки доступны как абсолютные URL-адреса. nPageNumber ... Целочисленное значение. Количество проверяемых страниц, значение начинается с 1. Помогает ограничить количество объединяемых страниц. WebSite-Watcher может объединять максимум 10 страниц. sUrl ... Строковое выражение. URL последней проверенной страницы. sNewUrl ... Строковое выражение. Возвращает значение, содержащее новый URL, который должен быть проверен и объединён с ранее проверенной страницей. Начальным значением является пустая строка. Если возвращается пустая строка, то операции слияния будет завершена. sNewPostData ... Строковое выражение. Возвращает значение, содержащее данные POST-запроса (PostData), если страница должна быть проверена через POST-команду. Если этот параметр пуст, то страница должна быть проверена с помощью GET-команды. Значением по-умолчанию является пустая строка. bChangeBookmarkUrl ... Булево значение. Возвращает значение, значением по-умолчанию является FALSE. Установите эту переменную в TRUE, если URL закладки должен заменить возвращаемый параметр sNewUrl. Это полезно только, если Вы мониторите тему форума и хотите всегда читать последние посты/страницы, тогда URL закладки будет всегда обновляться до последней проверенной страницы. Если Вы мониторите результаты поиска, то просто не присваивайте значение этому параметру. sStatusMessage ... Строковое выражение. Сообщение о состоянии, которое будет отображаться в колонке состояния. Значением по-умолчанию является пустая строка. iStatusCode ... Целочисленное значение. Возвращает состояние успешного завершения этой функции. Допустимые значения для iStatusCode: 0 ... OK, функция события может быть успешно обработана. Значение по-умолчанию, не должно назначаться вручную. 1 ... Ошибка. Должно быть возвращено, если будут обнаружены ошибки, проверка закладки будет остановлена. Пример: Sub Wsw_MergePages(Handle, sMemWeb, nPageNumber, sUrl, ByRef sNewUrl, ByRef sNewPostData, ByRef bC hangeBookmarkUrl, ByRef sStatusMessage, ByRef iStatusCode) Dim nPageParamNumber, sPageParam, sNewPageParam ' Ограничение количества объединяемых страниц © 2014 Aignesberger Software GmbH 127 WebSite-Watcher 2014 If nPageNumber > 3 Then Return End If ' Извлечение номера страницы sPageParam = GetFirstRegexMatch(sUrl, "\&start=\d+") If sPageParam = "" Then ' первая страница, продолжение со страницей 2 (решение со start=10) sNewPageParam = "&start=10" sUrl = sUrl + sNewPageParam Else ' увеличение номера страницы nPageParamNumber = CInt(ExtractDigits(sPageParam)) + 10 sNewPageParam = "&start=" + CStr(nPageParamNumber) sUrl = ReplaceText(sUrl, sPageParam, sNewPageParam) End If ' проверка (только) через Параметры_Страницы, если следующая страница уже есть в исходном коде страницы If Pos(sNewPageParam, sMemWeb) > 0 Then ' следующая страница существует sNewUrl = sUrl sStatusMessage = "Merge pages via FOLLOW-Plugin" End If End Sub Смотрите также примеры «Слияние страниц результатов поиска» и «Слияние страниц в теме форума». Wsw_PreProcessPage Sub Wsw_PreProcessPage(Handle, ByRef sMemWeb, ByRef sStatusMessage, ByRef iStatusCode) Эта функция вызывается сразу после загрузки страницы и перед началом любого другого процесса. Эта функция может использоваться для изменения исходного кода страницы или даже преобразования его в другой формат. Параметры: Handle ... Название закладки. sMemWeb ... Строковое выражение. Строка памяти исходного кода страницы. sStatusMessage ... Строковое выражение. Присвоенный текст будет отображаться в столбце состояния закладки. iStatusCode ... Целочисленное значение. Возвращает статус успешного выполнения этой функции. Допустимые значения для iStatusCode: 0 ... ОК. Значение по умолчанию, не должно назначаться вручную. 2 ... Ошибка. Если возвращено 2, то проверка этой закладки будет прервана и текст, присвоенный sStatusMessage, будет отображен в столбце состояния. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 128 Пример: Sub Wsw_PreProcessPage(Handle, ByRef sMemWeb, ByRef sStatusMessage, ByRef iStatusCode) Dim nStart, nLen ' Выход, если идентификатор сессии не доступен (небольшое улучшение производительности) If InStr("sid=", sMemWeb) = 0 Then Exit Sub End If ' Удалить все идентификаторы сессии, найденные в коде страницы Do While FindRegex(sMemWeb, "&(amp;)*sid=[a-z,0-9]*", nStart, nLen) Delete(sMemWeb, nStart, nLen) Loop End Sub Wsw_CompareVersions Sub Wsw_CompareVersions(Handle, ByRef sMemWeb, ByRef sMemLocal, ByRef sStatusMessage, ByRef iStatu sCode) Эта функция вызывается для сравнения веб-версии страницы с локально сохраненной версией. Вы можете фильтровать контент и решить, когда закладка должна сообщить об обновлении, например, при определенной цене в интернет-версии меньшей, чем в локально сохраненной версии. Параметр iStatusCode является числовым значением, и указывает, что страница была изменена или что произошла ошибка. Параметры: Handle ... Название закладки. sMemWeb ... Строковое выражение. Исходный код web-версии страницы. sMemLocal ... Строковое выражение. Исходный код локальной версии страницы. sStatusMessage ... Строковое выражение. Сообщение о состоянии, которое отображаться в столбце состояния. Значение по умолчанию - пустая строка. iStatusCode ... Целочисленное значение. Указывает, что страница была изменена или что произошла ошибка. Значение по умолчанию 0. будет Допустимые значения для iStatusCode: 0 ... OK, страница не изменилась. Значение по умолчанию, не должно назначаться вручную. 1 ... OK, страница изменилась. Закладка была отмечена, как обновлённая. 2 ... Ошибка. Если возвращено 2, то проверка этой закладки будет прервана с ошибкой. Примеры: Простой пример, показывающий, как был изменён отфильтрованный контент страницы. Sub Wsw_CompareVersions(Handle, ByRef sMemWeb, ByRef sMemLocal, ByRef sStatusMessage, ByRef iStatu sCode) ' Применение определённых установок фильтров sMemWeb = Bookmark_ApplyFilter(Handle, sMemWeb) sMemLocal = Bookmark_ApplyFilter(Handle, sMemLocal) ' Проверка изменения страницы, путём сравнения фильтрованного контента If sMemWeb <> sMemLocal Then iStatusCode = 1 ' обнаружены обновления © 2014 Aignesberger Software GmbH 129 WebSite-Watcher 2014 Else iStatusCode = 0 ' нет доступных обновлений End If End Sub Более сложный пример для обнаружения изменения цены и предупреждения, если цена будет ниже заданного значения. Такое извлечение цены зависит от страницы, и Вы можете использовать следующий код в качестве отправной точки. Sub ExtractPrice(sMem, ByRef nPrice) Dim p, nLen nPrice = -1 sMem = DeleteHtmlTags(sMem) ' Извлечение цены без десятичных знаков If FindRegex(sMem, "Price:\s*EUR\s*\d+,", p, nLen) Then sMem = ExtractDigits(Copy(sMem, p, nLen)) nPrice = StrToIntDef(sMem, -1) End If End Sub '******************************************************************************* Sub Wsw_CompareVersions(Handle, ByRef sMemWeb, ByRef sMemLocal, ByRef sStatusMessage, ByRef iStatu sCode) Dim nPriceNew , nPriceOld, nPriceRef ' Определение базовой цены (100 EUR) nPriceRef = 100 ' Извлечение цены из новой/локальной версии ExtractPrice(sMemWeb, nPriceNew) ExtractPrice(sMemLocal, nPriceOld) ' необходимо только для ускорения некоторых процедур WSW ' Возврат только цены - ускорение нескольких подпрограмм WSW, например, диалог "Тест фильтра" и ли функциональность "Анализа" sMemWeb = IntToStr(nPriceNew) sMemLocal = IntToStr(nPriceOld) If nPriceNew = -1 Then iStatusCode = 2 sStatusMessage = "Error extracting price" ElseIf (nPriceNew <> nPriceOld) And (nPriceNew <= nPriceRef) Then iStatusCode = 1 sStatusMessage = "Price changed and lower than EUR " + IntToStr(nPriceNew) ElseIf (nPriceNew <> nPriceOld) And (nPriceNew > nPriceRef) Then iStatusCode = 0 sStatusMessage = "Price too high" Else iStatusCode = 0 sStatusMessage = "Price unchanged" End If End Sub © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 130 Wsw_CheckKeywords Sub Wsw_CheckKeywords(Handle, sMemChanges, ByRef sStatusMessage, ByRef iKeywordFound) Эта функция вызывается, когда WebSite-Watcher ищет ключевые слова. Она может быть использована для дополнительной обработки ключевых слов с логическими операторами. Параметр sMemChanges содержит новый и изменённый текст без HTML-тегов, возвратов каретки переводов строки и двойных пробелов. iKeywordFound это числовое значение, которое указывает, что ключевые слова были найдены. Если ключевые слова также вводятся в свойствах закладки (Отслеживание обновления по ключевым словам), то эта функция не вызывается, если одно из введённых ключевых слов уже было найдено. Если же ключевые слова не вводились или ни одно из введённых ключевых слов не было найдено (Отслеживание обновления по ключевым словам), то WebSite-Watcher вызовет эту функцию. Параметры: Handle ... Название закладки. sMemChanges ... Строковое выражение. Новый/изменённый текст web-страницы (без HTML-тегов, без CRLF, без двойных пробелов). sStatusMessage ... Строковое выражение. Сообщение о состоянии, которое будет показываться в столбце состояния. Значением по умолчанию является пустая строка. iKeywordFound ... Целочисленное значение. Указывает, что ключевые слова были найдены. Значением по умолчанию является 0. Допустимые значения для iKeywordFound: 0 ... Ключевые слова не найдены. Значение по умолчанию, не должно назначаться вручную. 1 ... Ключевые слова были найдены. Пример: Sub Wsw_CheckKeywords(Handle, sMemChanges, ByRef sStatusMessage, ByRef iKeywordFound) Dim s = LCase(sMemChanges) ' Наблюдать с WebSite-Watcher, но снять нагрузку с наблюдателя If (InStr(s, "website") > 0) And (InStr(s, "watcher") > 0) And (InStr(s, "weight") = 0) Then iKeywordFound = 1 Return End If If (InStr(s, "aignesberger") > 0) And (InStr(s, "watcher") > 0) Then iKeywordFound = 1 sStatusMessage = "Keyword 'aignesberger + watcher' found" Return End If End Sub Wsw_ActionsOnUpdate Sub Wsw_ActionsOnUpdate(Handle, iUpdateStatus, ByRef sStatusMessage, ByRef iStatusCode) Эта функция вызывается для выполнения действий после обновления, инициализации или ошибки. Эта функция вызывается только когда в свойствах закладки установлены "Уведомление/Действия при Инициализации/Обновлении/Ошибке". конфигурации Эта функция события вызывается после того, как будут выполнены все другие действий закладки (которые определены в свойствах закладки). © 2014 Aignesberger Software GmbH 131 WebSite-Watcher 2014 Параметры: Handle ... Название закладки. iUpdateStatus ... Целое число. Указывает на инициализацию, обновление или ошибку. sStatusMessage ... Строковое выражение. Сообщение о состоянии, которое отображаться в столбце состояния. Значением по умолчанию является пустая строка. iStatusCode ... Целое число. Указывает, что действия могут быть выполнены или что произошла ошибка. По умолчанию: 0. будет Допустимые значения для iUpdateStatus: 1 ... Закладка была инициализирована 2 ... Закладка была обновлена 3 ... При проверке закладки произошла ошибка Допустимые значения для iStatusCode: 0 ... ОК, можно выполнить действия. Значение по умолчанию, не должно назначаться вручную. 1 ... Ошибка. Значение возвращается, если действия не могут быть выполнены, в то же время проверка закладки не будет прервана. В настоящее время код состояния записывается только в лог-файл закладки и не влияет на проверку закладки. Пример: Sub Wsw_ActionsOnUpdate(Handle, iUpdateStatus, ByRef sStatusMessage, ByRef iStatusCode) Dim sMem If iUpdateStatus = 2 Then sMem = Bookmark_LoadCacheFile(Handle, 1) StringToFile("c:\data\changed.htm", sMem) End If End Sub Wsw_AfterCheck Sub Wsw_AfterCheck(Handle, ByRef sStatusMessage) Эта функция вызывается по окончании проверки закладки. Например, Вы можете использовать эту функцию, если захотите записать продолжительность проверки закладки во внешний лог-файл. Параметры Handle ... Наименование закладки. sStatusMessage ... Строковое выражение. Сообщение о состоянии, которое будет отображаться в столбце состояния. Значением по-умолчанию является пустая строка. Пример: Dim dStart Sub Wsw_BeforeCheck(Handle, ByRef sStatusMessage) Bookmark_SetProperty(Handle, "checkmethod", "content") dStart = Now End Sub '******************************************************************************* © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 132 Sub Wsw_AfterCheck(Handle) AddStringToFile("c:\wswlogs\log23.txt", "Seconds: " + CStr((Now - dStart) * 24 * 60 * 60)) End Sub Встроенные функции InStr function InStr(Source As String, SearchStr As String) As Integer ' -илиfunction Pos(SearchStr As String, Source As String) As Integer Возвращает целое число, указывающее начальную позицию первого вхождения одной строки в другую. Оператор InStr зависим от регистра. Первый символ в выражении Source имеет позицию 1. Если выражение SearchStr не найдено, InStr возвращает ноль. Параметры: SearchStr ... Строковое выражение, в котором выполняется поиск. Source ... Искомое строковое выражение. Пример: Dim s, i s = "This is a text" i = InStr(s, "is") ' возвращает i = 6 LastPos function LastPos(SearchStr As String, Source As String) As Integer Возвращает целое число, указывающее начальную позицию последнего вхождения одной строки в другую. Оператор LastPos чувствителен к регистру. Первый символ в Source имеет позицию 1. Если выражение SearchStr не найдено, LastPos возвращает ноль. Параметры: SearchStr ... Строковое выражение, которое будем искать. Source ... Строковое выражение, в котором ведётся поиск. Пример: Dim s, i s = "a number or a text" i = LastPos("a", s) ' возвращает i = 13 © 2014 Aignesberger Software GmbH 133 WebSite-Watcher 2014 FindString function FindString(sSource, sFindStr, ByRef iStartPos, ByRef iLength) As Boolean Ищет в выражении sSource выражение sFindStr до первого вхождения. Команда FindString чувствительна к регистру. Первый символ выражения sSource имеет позицию 1. Если sFindStr найдено, FindString возвращает TRUE. Параметры: sSource ... Строковое выражение, в котором производится поиск. sFindStr ... Искомое строковое выражение. iStartPos ... Индекс первого вхождения. iLength ... Длина найденной строки. Пример: Dim s, iStart, iLen s = "a number or a text" If FindString(s, "or", iStart, iLen) then ' возвращает iStart = 10, iLen = 2 End If FindWildcard function FindWildcard(sSource, sFindWildcard, ByRef iStartPos, ByRef iLength) As Boolean Ищет в выражении sSource до первого вхождения в sFindWildcard. sFindWildcard является шаблоном с началом текста, звездочкой и концом текста с синтаксисом: НачалоТекста*КонецТекста FindWildcard чувствительна к регистру. Первый символ в sSource имеет позицию 1. Если sFindWildcard найдено, FindWildcard возвращает TRUE. Параметры: sSource ... Строковое выражение, в котором будет выполняться поиск. sFindWildcard ... Искомый шаблон (в формате: НачалоТекста*КонецТекста). iStartPos ... Индекс первого вхождения. iLength ... Длина найденной строки. Пример: Dim s, iStart, iLen s = "a number or a text" If FindWildcard(s, "or*xt", iStart, iLen) then ' возвращает iStart = 10, iLen = 9 End If GetFirstWildcardMatch function GetFirstWildcardMatch(sSource, sFindWildcard) As String Ищет в выражении sSource до первого вхождения в sFindWildcard. sFindWildcard является шаблоном с началом текста, звездочкой и концом текста с синтаксисом: © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 134 НачалоТекста*КонецТекста GetFirstWildcardMatch учитывает регистр. Если sFindWildcard не найдено, GetFirstWildcardMatch возвращает пустую строку. Параметры: sSource ... Строковое выражение, в котором выполняется поиск. sFindWildcard ... Искомый шаблон (в формате: НачалоТекста*КонецТекста). Пример: Dim s, s2 s = "a number or a text" s2 = GetFirstWildcardMatch(s, "or*xt") ' возвращает s2 = "or a text" GetAllWildcardMatches function GetAllWildcardMatches(sSource, sFindWildcard) As String Ищет в выражении sSource все вхождения в sFindWildcard. sFindWildcard является шаблоном с началом текста, звездочкой и концом текста с синтаксисом: НачалоТекста*КонецТекста GetAllWildcardMatches чувствительна к регистру. Каждое соответствие указывается с новой строки, разделенное символами возврат-каретки/перевод-строки. Если sFindWildcard не найдено, GetAllWildcardMatches возвращает пустую строку. Параметры: sSource ... Строковое выражение, в котором выполняется поиск. sFindWildcard ... Искомый шаблон (в формате: НачалоТекста*КонецТекста). Пример: Dim s, s2 s = "a number or a text or a date" s2 = GetAllWildcardMatches(s, "or*t") ' возвращает s2 = "or a t"#13#10"or a dat" Извлеченные строки могут быть отсортированы с помощью функции SortStringLines. DeleteAllWildcardMatches function DeleteAllWildcardMatches(sSource as string, sWildcard As String) as string Удаляет все соответствия шаблону из строки sSource. Результат возвращается в виде строки. sWildcard является шаблоном, с началом текста, звёздочкой и концом текста с синтаксисом: НачалоТекста*КонецТекста DeleteAllWildcardMatches чувствителен к регистру. Параметры: sSource ... Строковое выражение, из которого будут удалены все соответствующие группы символов. sWildcard ... Искомый шаблон (в формате: НачалоТекста*КонецТекста). © 2014 Aignesberger Software GmbH 135 WebSite-Watcher 2014 Пример: ' Удаление всех опциональных тегов HTML-кода sMem = DeleteAllWildcardMatches(sMem, "<option*</option>") FindRegex function FindRegex(sSource, sRegex, ByRef iStartPos, ByRef iLength) As Boolean Ищет в выражении sSource до первого вхождения в sRegex. sRegex является Perl-совместимым регулярным выражением. FindRegex не учитывает регистр. Первый символ выражения sSource имеет позицию 1. Если sRegex найдено, FindRegex возвращает TRUE. Параметры: sSource ... Строковое выражение, в котором выполняется поиск. sRegex ... Регулярное выражение, которое нужно найти. iStartPos ... Индекс первого вхождения. iLength ... Длина найденной строки. Пример: Dim s, iStart, iLen s = "this is number 13 or a text" If FindRegex(s, "number \d+", iStart, iLen) Then ' возвращает iStart = 9, iLen = 9 End If GetFirstRegexMatch function GetFirstRegexMatch(sSource, sRegex) As String Ищет в sSource до первого вхождения в sRegex. sRegex является Perl-совместимым регулярным выражением. GetFirstRegexMatch не зависит от регистра. Если подстрока sRegex не найдена, GetFirstRegexMatch возвращает пустую строку. Параметры: sSource ... Строковое выражение, в котором выполняется поиск. sRegex ... Регулярное выражение, которое требуется найти. Пример: Dim s, s2 s = "this is number 13 or a text" s2 = GetFirstRegexMatch(s, "number \d+") ' возвращает s2 = "number 13" GetAllRegexMatches function GetAllRegexMatches(sSource, sRegex) As String Ищет в sSource все вхождения в sRegex. sRegex является Perl-совместимым регулярным выражением. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 136 GetAllRegexMatches не зависит от регистра. Каждое соответствие указывается с новой строки, разделенное символами возврат-каретки/перевод-строки. Если подстрока sRegex не найдена, GetAllRegexMatches возвращает пустую строку. Параметры: sSource ... Строковое выражение, в котором выполняется поиск. sRegex ... Регулярное выражение, которое требуется найти. Пример: Dim s, s2 s = "this number 12 or number 1003 or a date" s2 = GetAllRegexMatches(s, "number \d+") ' возвращает s2 = "number 12"#13#10"number 1003" Извлеченные строки могут быть отсортированы с помощью функции SortStringLines Регулярные выражения Ниже вы можете найти список полезных знаков регулярных выражений. Подробное описание и ещё больше знаков можно найти во многих местах Интернета. \ Обратный слеш (наклоненная влево черта) подразумевает любой символ, и поэтому может использоваться для замены символов со значением как литер, так и специальных символов. Например, '\[' соответствует '[', а '\\' соответствует '\'. . Точка соответствует любому символу. Например, 'go.d' соответствует 'gold' и 'good'. { } {n} ... Соответствие точно n времени {n,} ... Соответствие по крайней мере n времени {n,m} ... Соответствие по крайней мере n времени, но не более, чем m времени [ ] Строка, заключённая в квадратные скобки, соответствует любому символу в этой строке, но не в других строках. Например, '[xyz]' соответствует только 'x', 'y', или 'z', диапазон символов может быть определён двумя символами, разделёнными знаком '-'. Обратите внимание, что '[a-z]' соответствует символам строго по алфавиту, в то время как '[z-a]' этому никогда не соответствует. [-] Дефис, заключённый в квадратные скобки, показывает диапазон изменения символов. Например [b-o] соответствует любому символу от b до o. | Вертикальная черта соответствует любому выражению, расположенному с обеих сторон от неё. Например, bar|car соответствует bar или car. * Звёздочка в конце строки соответствует любому числу появлений этой строки, сопровождающихся любыми символами, включая и нулевое количество символов. Например, bo* соответствует: bo, boo и booo, но не b. + Знак плюс в конце строки соответствует любому числу появлений этой строки, сопровождающихся любыми символами, кроме нулевого количества символов. Например, bo+ соответствует: boo и booo, но не bo или be. \d+ соответствует всем числам с одним или большим количеством цифр \d* соответствует всем числам с нулевым или большим количеством цифр \w+ соответствует всем словам с одним или более количеством символов a-z, A-Z и 0-9. \w+ найдёт title, border, width и прочее. Обратите внимание, что \w соответствует только числам и символам (a-z, A-Z, 0-9) ниже порядкового номера 128. \s соответствует разделителям (пробел, символы табуляции и возврата каретки/конца строки) © 2014 Aignesberger Software GmbH 137 WebSite-Watcher 2014 поиск нескольких символов, сколько возможно. a.*?b означает: "найти "a", потом столько символов, сколько возможно, потом "b" .*? [a-zA-Z\xA1-\xFF]+ соответствует всем словам с одним или более количеством символов, содержащим a-z, A-Z и символы выше порядкового номера 161 (например ä или Ü). Если Вы хотите находить слова с числами, то добавьте 0-9 к выражению: [0-9a-zA-Z\xA1-\xFF]+ По умолчанию, все регулярные выражения нечувствительны к регистру. Если вы добавляете (?-i) перед регулярным выражением, то он становится чувствительным к регистру. Например, regex((?-i)\d+ Comments) (?-i) Типовые примеры regex(bo*) будут найдены "b", "bo", "boo", "booooo" regex(bx+) будут найдены "bxxxxxxxx", "bxx", "bx" но не "b" regex(\d+) будут найдены все числа regex(\d+ visitors) будут найдены "3 visitors" или "243234 visitors" или "2763816 visitors" regex(\d+ of \d+ messages) будут найдены "2 of 1200 messages" или "1 of 10 messages" RegexToEnd(\d+ of \d+ messages) будет отфильтровано всё, начиная от последнего вхождения "2 of 1200 messages" или "1 of 10 messages" и до конца страницы regex(MyText.{0,20}) будут найдены "MyText" и следующие 20 символов после "MyText" regex(\d\d.\d\d.\d\d\d\d) будут найдены строки с датами формата 99.99.9999 или 99-99-9999 (точка в регулярных выражениях соответствует любому символу) regex(\d\d\.\d\d\.\d\d\d\d) будут найдены строки с датами формата 99.99.9999 regex(([_a-zA-Z\d\-\.]+@[_a-zA-Z\d\-]+(\.[_a-zA-Z\d\-]+)+)) будут найдены все адреса e-mail Left function Left(sSource As String, iLength As Integer) As String Возвращает строку, содержащую указанное число символов (iLength) с левой стороны строки sSource. Если iLength равен 0, то возвращается пустая строка. Если iLength указывает больше символов, чем имеется в sSource, то возвращается вся строка. Параметры: sSource ... Строковое выражение, из которого возвращаются знаки слева. iLength ... Целочисленное выражение, указывающее, на сколько знаков нужно вернуться. Пример: Dim s, s2 s = "This is a text" s2 = Left(s, 7) © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 138 ' возвращает s2 = "This is" Right function Right(sSource As String, iLength As Integer) As String Возвращает строку, содержащую указанное число символов (iLength) с правой стороны строки sSource. Если iLength равен 0, то возвращается пустая строка. Если iLength указывает больше символов, чем имеется в sSource, то возвращается вся строка. Параметры: sSource ... Строковое выражение, из которого возвращаются знаки справа. iLength ... Целочисленное выражение, указывающее, на сколько знаков нужно вернуться. Пример: Dim s, s2 s = "This is a text" s2 = Right(s, 6) ' возвращает s2 = "a text" Mid function Mid(sSource As String, iStartPos As Integer, iLength As Integer) As String ' -илиfunction Copy(sSource As String, iStartPos As Integer, iLength As Integer) As String Mid возвращает подстроку, содержащую iLength символов начиная с позиции iStartPos. Первый символ sSource имеет индекс 1. Если iStartPos больше, чем длина sSource, Mid возвращает пустую строку. Если iLength указывает больше символов, чем доступно, возвращаются только символы, начиная с позиции iStartPos до конца sSource. Параметры: sSource ... Строковое выражение, из которого возвращаются знаки. iStartPos ... Целочисленное выражение. Стартовая позиция, начиная с которой должны быть возвращены символы. iStartPos начинается с 1. iLength ... Целочисленное выражение. Количество символов, которые должны быть возвращены. Пример: Dim s, s2 s = "This is a text" s2 = Mid(s, 6, 2) ' возвращает s2 = "is" © 2014 Aignesberger Software GmbH 139 WebSite-Watcher 2014 Delete sub Delete(ByRef sSource As String, iStartPos As Integer, iLength As Integer) Удаляет подстроку из iLength символов из строки sSource начиная с позиции iStartPos. Первый символ sSource имеет индекс 1. Если iStartPos больше, чем длина строки, или меньше 1, то никакие символы не удаляются. Если iLength указывает больше символов, чем остается, начиная с iStartPos, то Delete удаляет остальные строки. Если iLength меньше или равно 0, то никакие символы не будут удалены. Параметры: sSource ... Строковое выражение, из которого удаляется подстрока. iStartPos ... Целочисленное выражение. Стартовая позиция для удаления символов. iStartPos начинается с 1. iLength ... Целочисленное выражение. Количество удаляемых символов. Пример: Dim s s = "This is a text" Delete(s, 6, 5) ' возвращает s = "This text" CopyAndDelete function CopyAndDelete(ByRef sSource, iStart, iLength) As String CopyAndDelete является комбинацией Mid и Delete. CopyAndDelete возвращает подстроку, содержащую iLength символов начиная с позиции iStartPos в то время как возвращаемая строка будет удалена из sSource. Первый символ sSource имеет индекс 1. Если iStartPos больше, чем длина sSource, то возвращается пустая строка, и ничего не удаляется из sSource. Если iLength указывает больше символов, чем доступно, то возвращаются и удаляются только символы, начиная с позиции iStartPos до конца sSource. Параметры: sSource ... Строковое выражение, из которого возвращаются и удаляются символы. iStartPos ... Целочисленное выражение. Стартовая позиция, с которой будут возвращены и удалены символы. iStartPos начинается с 1. iLength ... Целочисленное выражение. Количество символов, которые будут возвращены и удалены. Пример: Dim s, s2 s = "This is a text" s2 = CopyAndDelete(s, 6, 5) ' возвращает s = "This text" and s2 = "is a " © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 140 ExtractDigits function ExtractDigits(sSource) As String Извлекает все цифры из строки sSource. Параметры: sSource ... Строковое выражение, из которого будут возвращены цифры. Пример: Dim s, s2 s = "This is number 22.3" s2 = ExtractDigits(s) ' возвращает s2 = "223" ExtractChars function ExtractChars(sSource, sValidChars) As String Извлекает указанные символы (sValidChars) из строки sSource. Параметры: sSource ... Строковое выражение, из которой возвращаются указанные символы. sValidChars ... Строковое выражение. Допустимые символы, которые могут быть извлечены. Пример: Dim s, s2 s = "This is number 22.3" s2 = ExtractChars(s, "0123456789,.") ' возвращает s2 = "22.3" FindHtmlTag function FindHtmlTag(sPageSource, sTagName, sParamName, ByRef iStartPos, ByRef iLength) As Boolean Ищет в sPageSource до первого вхождения HTML-тега sTagName, который содержит параметр sParamName. FindHtmlTag не чувствителен к регистру. Первый символ sPageSource имеет позицию 1. Если sTagName и sParamName найдены, FindHtmlTag возвращает TRUE. Параметры: sPageSource ... Строковое выражение, в котором будет выполняться поиск. sTagName, sParamName ... Строковое выражение. HTML-тег с параметром, который нужно найти. iStartPos ... Индекс начала тега. iLength ... Длина найденного тега. Пример: Dim s, iStart, iLen s = "Click <a href=info.htm>here</a> for more information" © 2014 Aignesberger Software GmbH 141 WebSite-Watcher 2014 If FindHtmlTag(s, "a", "HREF", iStart, iLen) Then ' возвращает iStart = 7, iLen = 17 s = Mid(s, iStart, iLen) ' возвращает s = "<a href=info.htm>" End If DeleteHtmlTags function DeleteHtmlTags(sPageSource) As String DeleteHtmlTags удаляет все HTML-теги из sPageSource и возвращает текст HTML страницы. На первом этапе все HTML-теги будут заменены пробелами, на втором этапе все повторяющиеся пробелы заменяются на один пробел. Параметры: sPageSource ... Строковое выражение. Исходный код веб-страницы. Пример: Dim s s = "This is <b>bold</b> and<br>a new line" s = DeleteHtmlTags(s) ' возвращает s = "This is bold and a new line" OptimizeHtml function OptimizeHtml(sPageSource) As String OptimizeHtml оптимизирует исходный код страницы в следующем виде: Замена пробелами знаков табуляций и возвратов каретки переводов строки Вставка пробелов до "<" и после ">" Замена последовательности пробелов одним пробелом Эта функция может быть вызвана перед извлечением конкретной информации из исходного кода страницы. В основном проще извлечь информацию из оптимизированного кода. Параметры: sPageSource ... Строковое выражение. Исходный код web-страницы. Пример: Dim s s = "The price is<b> 123,50 </b>EUR" s = OptimizeHtml(s) ' возвращает s = "The price is <b> 123,50 </b> EUR" HtmlGetParam function HtmlGetParam(sTagSource, sParamName) As String Ищет в выражении sTagSource первое вхождение параметра sParamName и возвращает значение параметра. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 142 Если параметр sParamName не найден, возвращается пустая строка. Параметры: sTagSource ... Строковое выражение, в котором выполняется поиск. sParamName ... Строковое выражение. Название искомого параметра. Пример: Dim sTagSource, sValue sTagSource = "Click <a href=info.htm>here</a> for more information" sValue = HtmlGetParam(sTagSource, "href") ' возвращает sValue = "info.htm" HtmlExtract function HtmlExtract(sHtmlSource, sCheckUrl As String, iOption As Integer) As String Извлекает указанную информацию из исходного HTML-кода sHtmlSource. Параметр sCheckUrl является адресом на соответствующей странице и требуется для получения абсолютного адреса ссылки. Параметры: sHtmlSource ... Исходный HTML-код проверенной страницы. sCheckUrl ... URL-адрес проверенной страницы. Обязательный для получения абсолютного адреса ссылки. iOption ... Целочисленное значение. Определяет информацию, которая должна быть извлечена. Допустимые значения для iOption: Значение (числовое) Описание 0 Извлекает все адреса ссылок (один URL в строке). Результат сортируется и не содержит дубликатов. URL-адреса разделены возвратами каретки / переводами строки. 1 Извлекает все адреса изображений (один URL в строке). Результат сортируется и не содержит дубликатов. URL-адреса разделены возвратами каретки / переводами строки. Пример: Dim sUrlList sUrlList = HtmlExtract(sMem, Bookmark_GetProperty(Handle, "check_url"), 0) LCase function LCase(s As String) As String ' -илиfunction Lowercase(s As String) As String Возвращает строку, преобразованную в нижний регистр. Преобразование затрагивает только 7-битные ASCII символы между 'A' и 'Z'. Для преобразования международных символов, используйте AnsiLowercase. © 2014 Aignesberger Software GmbH 143 WebSite-Watcher 2014 Параметры s ... Строковое выражение. Пример: Dim s s = "A Text" s = LCase(s) ' возвращает s = "a text" UCase function UCase(s As String) As String ' -илиfunction Uppercase(s As String) As String Возвращает строку, преобразованную в верхний регистр. Преобразование затрагивает только 7-битные ASCII символы между 'A' и 'Z'. Для преобразования международных символов, используйте AnsiUppercase. Параметры: s ... Строковое выражение. Пример: Dim s s = "a text" s = UCase(s) ' возвращает s = "A TEXT" AnsiLowercase function AnsiLowercase(s As String) As String Возвращает строку, преобразованную в нижний регистр. Параметры: s ... Строковое выражение. Пример: Dim s s = "A Text" s = AnsiLowercase(s) ' возвращает s = "a text" AnsiUppercase function AnsiUppercase(s As String) As String Возвращает строку, преобразованную в верхний регистр. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 144 Параметры s ... Строковое выражение. Пример: Dim s s = "a text" s = AnsiUppercase(s) ' возвращает s = "A TEXT" Trim function LTrim(s As String) As String function RTrim(s As String) As String function Trim(s As String) As String ' -илиfunction TrimLeft(s As String) As String function TrimRight(s As String) As String Возвращает строку, содержащую копию указанной строки без начальных пробелов (LTrim), замыкающих пробелов (RTrim), или без начальных и конечных пробелов (Trim). Параметры: s ... Строковое выражение. Пример: Dim s s = Trim(" a text ") ' возвращает s = "a text" Len function Len(s As String) As Integer ' -илиfunction Length(s As String) As Integer Возвращает целое число, содержащее количество символов в строке. Параметры s ... Строковое выражение. Пример: Dim i i = Len("a text") ' возвращает i = 6 Replace function Replace(sSource As String, sSearchStr As String, sReplaceStr As String) As String Возвращает строку, в которой указанная подстрока была заменена другой подстрокой. © 2014 Aignesberger Software GmbH 145 WebSite-Watcher 2014 Оператор Replace чувствителен к регистру. Параметры: sSource ... Строковое выражение, содержащее подстроку для замены. sSearchStr ... Искомая подстрока. sReplaceStr ... Подстрока замены. Пример: Dim s s = "This is a text" s = Replace(s, "text", "number") ' возвращает s = "This is a number" ReplaceText function ReplaceText(sSource As String, sSearchStr As String, sReplaceStr As String) As String Возвращает строку, в которой указанная подстрока была заменена другой подстрокой. Оператор ReplaceText не чувствителен к регистру. Параметры: sSource ... Строковое выражение, содержащее подстроку замены. sSearchStr ... Подстрока, которую будем искать. sReplaceStr ... Подстрока замены. Пример: Dim s s = "This is a TEXT" s = ReplaceText(s, "text", "number") ' возвращает s = "This is a number" ReplaceWildcard function ReplaceWildcard(sSource As String, sSearchWildcard As String, sReplaceStr As String) As S tring Возвращает строку, в которой указанная подстрока (определяется с помощью шаблонов) была заменена другой подстрокой. Эта функция заменяет все найденные соответствия. sSearchWildcard является шаблоном, с началом текста, звёздочкой и концом текста с синтаксисом: НачалоТекста*КонецТекста ReplaceWildcard чувствительна к регистру. Параметры: sSource ... Строковое выражение, содержащее подстроку замены. sSearchWildcard ... Искомое шаблонное выражение. sReplaceStr ... Подстрока замены. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 146 Пример: Dim s s = "<table><tr><td>354</td></tr></table>" s = ReplaceWildcard(s, "</td>*</td>", "</td>-</td>") ' возвращает s = "<table><tr><td>-</td></tr></table>" ReplaceRegex function ReplaceRegex(sSource As String, sSearchRegexStr As String, sReplaceStr As String) As Stri ng Возвращает строку, в которой указанная подстрока (определяется с помощью регулярных выражений), которая была заменена другой подстрокой. Эта функция заменяет все найденные соответствия. ReplaceRegex не учитывает регистр. Параметры: sSource ... Строковое выражение, содержащее подстроку замены. sSearchRegexStr ... Искомое регулярное выражение. sReplaceStr ... Подстрока замены. Пример: Dim s s = "<table><tr><td>354</td></tr></table>" s = ReplaceRegex(s, "</td>\d+</td>", "</td>-</td>") ' возвращает s = "<table><tr><td>-</td></tr></table>" Insert sub Insert(sValue As String, ByRef sSource As String, iPosition As Integer) Вставляет выражение sValue в выражение sSource в положении iPosition. Первый символ выражения sSource имеет индекс 1. Это похоже на: sSource = Left(sSource, iPosition-1) + sValue + Mid(sSource, iPosition, MaxInt) Параметры: sValue ... Строковое выражение, которое должно быть вставлено. sSource ... Строковое выражение, в которое должно быть вставлено sValue. iPosition ... Устанавливает, где должно быть вставлено sValue. iPosition начинается с 1. Пример: Dim s s = "This text" Insert("is a ", s, 6) ' возвращает s = "This is a text" © 2014 Aignesberger Software GmbH 147 WebSite-Watcher 2014 Chr function Chr(iCharCode As Integer) As Char Возвращает знак, связанный с указанным кодом символа. Параметры iCharCode ... Целочисленное выражение, представляющее код для символа. Пример: Dim s s = Chr(65) ' возвращает s = "A" s = Chr(13)+Chr(10) ' возвращает возврат каретки перевод строки Asc function Asc(s As Char) As Integer ' -илиfunction Ord(s As Char) As Integer Возвращает целое число, представляющее код, соответствующий символу. Параметры s ... Любое допустимое символьное или строковое выражение. Если s является строковым выражением, то для ввода будет использоваться только первый символ строки. Пример: Dim i i = Asc("A") ' возвращает i = 65 i = Asc("ABC") ' возвращает i = 65 DeleteDoubleBlanks function DeleteDoubleBlanks(s As String) As String Заменяет все повторяющиеся пробелы одним пробелом. Параметры s ... Строковое выражение. Пример: Dim s s = DeleteDoubleBlanks("ABC ' возвращает s = "ABC DEF" © 2014 Aignesberger Software GmbH DEF") Справка по WebSite-Watcher 148 Crc32 function Crc32(s As String) As String Вычисляется значение CRC32 для указанной строки s. Параметры s ... Строковое выражение. Пример: Dim sChecksum sChecksum = Crc32("This is a text") GetUniqueID function GetUniqueID As String Возвращает уникальный ID строки. Пример: Dim sID sID = GetUniqueID SortStringLines sub SortStringLines(ByRef s) Сортирует все строки, заданные в строковом выражении s. Строки должны быть разделены символами возврат каретки перевод строки (chr(13)+chr(10), или CRLF). Параметры s ... Строковое выражение. Пример: Dim s s = "Lucas" + Chr(13) + Chr(10) + "Simon" + Chr(13) + Chr(10) + "Ann" SortStringLines(s) ' возвращает s = "Ann"#13#10"Lucas"#13#10"Simon" Функции строковых списков ' добавление и вставка элементов sub StringList_AddItem(ByRef sList As String, sItem As String) sub StringList_InsertItem(ByRef sList As String, index As Integer, sItem As String) ' изменение элемента с указанным индексом sub StringList_ChangeItem(ByRef sList As String, index As Integer, sItem As String) ' удаление элемента с указанным индексом sub StringList_DeleteItem(ByRef sList As String, index As Integer) ' получение элемента с указанным индексом function StringList_GetItem(sList As String, index As Integer) As String © 2014 Aignesberger Software GmbH 149 WebSite-Watcher 2014 ' получение индекса элемента (или тест на существование элемента) function StringList_GetItemIndex(sList As String, sItem As String) As Integer ' получение количества элементов function StringList_ItemCount(sList As String) As Integer ' сортировка всех строк в списке sub StringList_Sort(ByRef sList As String) ' загрузка текстового файла и сохранение каждой строки как элемента в списке строк function StringList_LoadFromFile(sFilename As String, ByRef sList As String) As Boolean ' сохранение списка строк в файл function StringList_SaveToFile(sFilename As String, ByRef sList As String) As Boolean Строковой список представляет собой простую строку, в которой каждый элемент списка хранится в отдельной строке. Строки разделяются символами возврат каретки перевод строки(chr(13)+chr(10), или CRLF). Функции строковых списков могут быть легко использованы для поддержания такого списка, например, для вставки или удаления строковых элементов. Вы также можете добавлять в строковые списки строки из пробелов, все переводы строк возвраты каретки кодируются автоматически в строке списка. Строковые списки имеют нулевую базу, это означает, что первый элемент будет иметь индекс 0, второй элемент будет иметь индекс 1, и так далее. Количество элементов может быть определено с помощью функции "StringList_ItemCount". Функция "StringList_GetItemIndex" может быть использована для получения индекса конкретного элемента. Если элемент не найден, функция возвращает -1. Пример: Dim sl, s, i, sItem, nCount ' очистка строкового списка sl = "" ' добавление элемента в строковой список StringList_AddItem(sl, "WebSite") StringList_AddItem(sl, "Watcher") StringList_AddItem(sl, "cool") ' новыми элементами будут: WebSite, Watcher, cool ' вставка элемента после "Watcher" StringList_InsertItem(sl, 2, "is") ' новыми элементами будут: WebSite, Watcher, is, cool ' проверка существования элемента i = StringList_GetItemIndex(sl, "power") ' возвращает i = -1 i = StringList_GetItemIndex(sl, "is") ' возвращает i = 2 ' изменение последнего элемента StringList_ChangeItem(sl, 3, "very cool") ' новыми элементами будут: WebSite, Watcher, is, very cool ' перебор всех элементов s = "" nCount = StringList_ItemCount(sl) For i = 0 To nCount - 1 s = Trim(s + " " + StringList_GetItem(sl, i)) © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 150 Next ' s стало: WebSite-Watcher is very cool ' сортировка строкового списка StringList_Sort(sl) ' новыми элементами будут: is, very cool, Watcher, WebSite ' удаление элемента с индексом 2 StringList_DeleteItem(sl, 2) ' новыми элементами будут: is, very cool, WebSite ' удаление элемента "WebSite" StringList_DeleteItem(sl, StringList_GetItemIndex(sl, "WebSite")) ' новыми элементами будут: is, very cool ' сохранение строкового списка в файл StringList_SaveToFile("c:\files\stringlist.txt", sl) DownloadFile sub DownloadFile(Handle, sUrl As String, sReferer As String, bAllowDuplicates As Boolean) Добавляет интернет-адрес sUrl в Менеджер загрузки. Параметры: Handle ... Название закладки, которое передаётся в функцию событий (опционально). sUrl ... Адрес файла, который должен быть загружен. sReferer ... URL-адрес, с которого файл, как правило, загружен (например, адрес загруженной страницы). В большинстве случаев этот параметр может быть пустым, за исключением требования этого поля сервером. bAllowDuplicates ... Булево значение: TRUE = Если загруженные адреса (sURL) уже существуют в Менеджере загрузок, то загрузка стартует вновь и загрузит файл с новым уникальным именем. FALSE = Если загруженные адреса (sURL) уже существуют в Менеджере загрузок, то загрузки не будут добавлены в менеджер загрузок. Пример: DownloadFile(Handle, "http://www.domain.com/download/setup.exe", "", TRUE) DownloadFile(0, "http://www.domain.com/download/setup.exe", "http://www.domain.com/downloads/", TR UE) DownloadPageToString function DownloadPageToString(Handle, sUrl As String, sReferer As String, ByRef sMem) As Integer Загружает исходный код HTML-страницы указанного URL-адреса в строку sMem. Параметры: Handle ... Название закладки, которое передаётся в функцию событий. sUrl ... Адрес страницы, которая должна быть загружена. sReferer ... URL-адрес, с которого доступна страница. В большинстве случаев этот параметр пуст, кроме ситуации, когда сервер требует это поле. sMem ... Строка. Исходный код загруженной страницы. © 2014 Aignesberger Software GmbH 151 WebSite-Watcher 2014 Возвращаемое значение Эта функция возвращает код состояния, который посылается сервером. Если никаких ошибок не происходит, то значение этого кода обычно 200. Вот список типичных возвращаемых значений: 200 OK (Хорошо) 201 Created (Создано) 202 Accepted (Принято) 203 Non-Authoritative Information (Информация не авторитетна) 204 No Content (Нет содержимого) 205 Reset Content (Сбросить содержимое) 206 Partial Content (Частичное содержимое) 300 Multiple Choices (Множество выборов) 301 Moved Permanently (Перемещено навсегда) 302 Moved Temporarily (Перемещено временно) 303 See Other (Смотреть другое) 304 Not Modified (Не изменялось) 305 Use Proxy (Использовать прокси) 400 Bad Request (Плохой, неверный запрос) 401 Unauthorized / Authentication failure (Неавторизован) 402 Payment Required (Необходима оплата) 403 Forbidden (Запрещено) 404 Page Not Found (Страница не найдена) 405 Method Not Allowed (Метод не поддерживается) 406 Not Acceptable (Не приемлемо) 407 Proxy Authentication Required (Необходима аутентификация прокси) 408 Request Time-out (Истекло время ожидания) 409 Conflict (Конфликт) 410 Gone (Удалён) 411 Length Required (Необходима длина) 412 Precondition Failed (Условие ложно) 413 Request Entity Too Large (Размер запроса слишком велик) 414 Request-URI Too Large (Запрашиваемый URI слишком длинный) 415 Unsupported Media Type (Неподдерживаемый тип данных) 500 Internal Server Error (Внутренняя ошибка сервера) 501 Not Implemented (Не реализовано) 502 Bad Gateway (Плохой, ошибочный шлюз) 503 Service Unavailable (Сервис недоступен) 504 Gateway Time-out (Шлюз не отвечает) 505 HTTP Version not supported (Версия HTTP не поддерживается) Пример: Dim sMem if DownloadPageToString(Handle, "http://www.domain.com", "", sMem) = 200 then if sMem <> "" then ' дальнейшие действия, sMem содержит исходный код страницы End If End If FileExists function FileExists(sFileName As String) As Boolean FileExists возвращает TRUE, если файл, указанный sFileName, существует. Если файл не существует, FileExists возвращает FALSE. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 152 Параметры: sFileName ... Строковое выражение. Абсолютные путь и имя файла. Пример: If FileExists("e:\exp\template.rss") Then ' действия... End If FileToString function FileToString(sFileName As String, ByRef s As String) As Boolean Читает содержимое файла sFileName в строку s. Если файл не существует или содержимое не может быть прочитано, FileToString возвращает FALSE. Параметры: sFileName ... Строковое выражение. Абсолютные путь и имя файла. s ... Строковое выражение. Пример: Dim sFilename, sMem sFilename = "c:\mydocs\template.txt" If FileToString(sFilename, sMem) Then ' sMem содержит контент файла End If StringToFile function StringToFile(sFileName As String, s As String) As Boolean Записывает строку s в файл. Если файл не может быть сохранен, StringToFile возвращает FALSE. Параметры: sFileName ... Строковое выражение. Абсолютные путь и имя файла. s ... Строковое выражение. Пример: Dim s s = "feature executed successfully" StringToFile("c:\mydocs\log.txt", s) AddStringToFile function AddStringToFile(sFileName As String, s As String) As Boolean Добавляет строку s (включающую возврат каретки / перевод строки) в файл sFilename. Если строка не может быть добавлена, AddStringToFile возвращает FALSE. © 2014 Aignesberger Software GmbH 153 WebSite-Watcher 2014 Параметры: sFileName ... Строковое выражение. Абсолютные путь и имя файла. s ... Строковое выражение. Пример: Dim s s = "feature executed successfully" AddStringToFile("c:\mydocs\log.txt", s) DeleteFile function DeleteFile(sFileName As String) As Boolean Удаляет существующий файл. Если файл не существует или не может быть удален, DeleteFile возвращает FALSE. Параметры: sFileName ... Строковое выражение. Абсолютные путь и имя файла. Пример: DeleteFile("e:\exp\temp.$") MakeUniqueFilename function MakeUniqueFilename(sFileName As String) As String Возвращает уникальное имя файла путем добавления номера к имени файла, указанного в sFileName. Возвращаемое имя файла не существует в указанном каталоге. Параметры: sFileName ... Строковое выражение. Абсолютные путь и имя файла. Пример: Dim sFilename sFilename = "e:\exp\main.txt" ' предположим, что e:\exp\main.txt не существует sFilename = MakeUniqueFilename(sFilename) ' возвращает sFilename = "e:\exp\main.txt" StringToFile(sFilename, "dummy") sFilename = MakeUniqueFilename(sFilename) ' возвращает sFilename = "e:\exp\main(1).txt" ExtractFileName function ExtractFileName(sFileName As String) As String Возвращает извлеченные имя файла из полного пути + имени файла, указанных в sFileName. Результирующая строка равна sFileName, если sFileName не содержит частей диска и каталога. Параметры: © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 154 sFileName ... Строковое выражение. Имя файла с указанием или без указания диска/папки. Пример: Dim s s = ExtractFileName("e:\exp\template.txt") ' возвращает s = "template.text" ExtractFileExt function ExtractFileExt(sFileName As String) As String Возвращает извлеченное расширение файла (с находящейся перед ним "."), указанного в sFileName. Параметры: sFileName ... Строковое выражение. Имя файла с указанием или без указания диска/папки. Пример: Dim s s = ExtractFileExt("e:\exp\template.txt") ' возвращает s = ".text" ExtractFilePath function ExtractFilePath(sFileName As String) As String Возвращает путь к файлу, извлеченный из файла, указанного в sFileName. ExtractFilePath возвращает пустую строку, если sFileName не содержит частей диска и каталога. Параметры: sFileName ... Строковое выражение. Пример: Dim s s = ExtractFilePath("e:\exp\template.txt") ' возвращает s = "e:\exp" ChangeFileExt function ChangeFileExt(sFileName As String, sDotNewFileExt As String) As String ChangeFileExt принимает имя файла, указанное в sFileName и меняет его расширение на новое расширение, указанное sDotNewFileExt. sDotNewFileExt задает новое расширение, включающее начальный символ точки. ChangeFileExt не переименовывает сам файл, он просто создает новую строку с именем файла. Параметры: sFileName ... Строковое выражение. sDotNewFileExt ... Новое расширение файла, включающее символ точки. © 2014 Aignesberger Software GmbH 155 WebSite-Watcher 2014 Пример: Dim s s = ChangeFileExt("e:\exp\rules.htm", ".txt") ' возвращает s = "e:\exp\rules.txt" AddBackslash function AddBackslash(sDirectory) As String Добавляет символ обратной косой черты (\), если её нет в конце каталога. Параметры: sDirectory ... Строковое выражение с или без косой черты. Пример: Dim s s = AddBackslash("e:\exp") ' возвращает s = "e:\exp\" s = AddBackslash("e:\exp\") ' возвращает s = "e:\exp\" Execute sub Execute(sProgram, sParam) Выполняет приложение sProgram. sParam содержит параметры, передаваемые в приложение, указанное в sProgram. Параметры: sProgram ... Строковое выражение. Абсолютные путь и имя выполняемой программы. sParam ... Строковое выражение. Параметры командной строки. Пример: Execute("c:\test\alert.exe", "") ExecuteAndWait function ExecuteAndWait(sProgram, sParam, bHidden) As Integer Запускает на выполнение приложение sProgram и ожидает, пока оно закончит работу. sParam содержит параметры, передаваемые в приложение, указанное в sProgram. Если программа должна быть выполнена без отображения пользовательского интерфейса, bHidden должен быть установлен в значение TRUE. Если функция завершается ошибкой, то возвращаемое значение является номером ошибки, который будет меньше или равен 32. Если функция завершается успешно, возвращаемое значение будет обработанным экземпляром выполненного приложения. Параметры: sProgram ... Строковое выражение. Абсолютные путь и имя файла выполняемой программы. sParam ... Строковое выражение. Параметры командной строки. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 156 bHidden ... TRUE|FALSE. Сокрытие окна sProgram. Пример: ExecuteAndWait("e:\exp\conv-rss.exe", "/f=e:\exp\temp.rss", TRUE) Sleep sub Sleep(iMilliseconds As Number) Приостанавливает выполнение программы/плагина на указанное значение миллисекунд. Параметры: iMilliseconds ... Количество миллисекунд ожидания. Пример: ' Приостановить выполнение программы на 1 секунду Sleep(1000) GetComparisonInfo sub GetComparisonInfo(sMemWeb, sMemLocal, iComparisonMode, ByRef iQtyNew, ByRef iQtyChanged, ByRef iQtyDeleted) Вычисляет количество новых, измененных и удаленных элементов. Эта процедура может использоваться, например, для просмотра только удалённого содержимого. Параметры: sMemWeb ... Строковое выражение. Исходный код web-версии страницы. sMemLocal ... Строковое выражение. Исходный код локально сохранённой версии страницы. iComparisonMode ... Метод сравнения для сравнения web/локальной версий. iQtyNew ... Количество новых пунктов. iQtyChanges ... Количество изменённых пунктов. iQtyDeleted ... Количество удалённых пунктов. Значения для iComparisonMode: 1 ... Основано на предложениях. Сравнение документов по предложениям. 2 ... Основано на параграфах. Сравнение документов по параграфам. Функции преобразования типов function CBool(выражение) As Boolean function CByte(выражение) As Integer function CDate(выражение) As Float function CDbl(выражение) As Double function CInt(выражение) As Integer function CLng(выражение) As Integer function CSng(выражение) As Float function CStr(выражение) As String Преобразует выражение в указанный тип данных. © 2014 Aignesberger Software GmbH 157 WebSite-Watcher 2014 При преобразовании строк в числовые значения, вы должны убедиться, что строка содержит корректный номер. Пример: Dim i, s i = CInt("123.44") ' возвращает i = 123 i = CInt("1.123,99") ' возвращает 1123 i = CInt("1.aa123,99") ' возвращает 1 i = CInt(ExtractDigits("1.aa123,99")) ' возвращает 112399 s = CStr(1123) ' возвращает s = "1123" Abs function Abs(Value) As Value Возвращает абсолютное значение указанного числа. Параметры: Value ... Любой числовой тип данных Пример: Dim i i = Abs(-1000) ' возвращает i = 1000 Round function Round(Value As Double) As Integer Эта функция округляет значение реального типа в целочисленное значение. Параметры: Value ... Значение реального типа Пример: Dim i i = Round(1233,75) ' возвращает i = 1234 Trunc function Trunc(Value As Double) As Integer Эта функция обрезает значение реального типа в целочисленное значение. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 158 Параметры: Value ... Значение реального типа Пример: Dim i i = Trunc(1233,75) ' возвращает i = 1233 Rnd function Rnd() As Single Возвращает случайное число меньше 1, но больше либо равное нулю. Для получения случайных чисел в заданном диапазоне, используйте следующую формулу: случайное_значение = Trunc((верхняя_граница - нижняя_граница + 1) * Rnd() + нижняя_граница) Пример: Dim v v = Rnd ' возвращает, например, v = 0,262725505512208 v = CInt(Rnd * 1000) ' возвращает, например, v = 673 Now function Now() As DateTime Возвращает текущие дату и время. Пример: Dim s s = CStr(Now) ' возвращает, к примеру, s = "19.11.2008 14:09:29" Date function Date() As DateTime Возвращает текущую дату. Значение времени устанавливается в 0 (полночь). Пример: Dim s s = CStr(Date) ' возвращает, к примеру, s = "19.11.2008" FormatDateTime function FormatDateTime(sFormat As String, dDateTime As DateTime) As String Форматирует значение dDateTime в строку, используя формат из sFormat. © 2014 Aignesberger Software GmbH 159 WebSite-Watcher 2014 Параметры: sFormat ... Строковое выражение. Смотри таблицу ниже. dDateTime ... Значение формата дата-время, которое должно быть преобразовано. Формат строк В приведенной ниже таблице, спецификаторы приведены в нижнем регистре. Регистр не учитывается в форматах, кроме спецификаторов "am/pm" и "a/p". Спецификатор Отображение c Отображает дату затем указывает время, используя длинный формат даты/времени. Время не отображается, если дата-время указывает ровно полночь. d Отображение дня в виде числа без начального нуля (1-31). dd Отображение дня в виде числа с начальным нулём (1-31). ddd Отображает день, как аббревиатуру (Sun-Sat). dddd Отображает день, как полное наименование (Sunday-Saturday). ddddd Отображает дату, используя краткий формат даты. dddddd Отображает дату, используя длинный формат даты. m Отображает месяц в виде числа без начального нуля (1-12). Если спецификатор m следует сразу после спецификатора h или hh, то минуты отображаются раньше, чем месяц. mm Отображает месяц в виде числа с начальным нулём (1-12). Если спецификатор mm следует сразу после спецификатора h или hh, то минуты отображаются раньше, чем месяц. mmm Отображает месяц в виде аббревиатуры (Jan-Dec). mmmm Отображает месяц в виде полного наименования (January-December). yy Отображает год в виде двузначного числа (00-99). yyyy Отображает год в виде черёхзначного числа (0000-9999). h Отображает час без начального нуля (0-23). hh Отображает час с начальным нулём (00-23). n Отображает минуты без начального нуля (0-59). nn Отображает минуты с начальным нулём (00-59). s Отображает секунды без начального нуля (0-59). ss Отображает секунды с начальным нулём (00-59). z Отображает миллисекунды без начального нуля (0-999). zzz Отображает миллисекунды с начальным нулём (000-999). t Отображает время, используя короткий формат времени. tt Отображает время, используя длинный формат времени. am/pm Использует 12-часовой формат для спецификатора h или hh, и показывает 'am' для любого часа до полудня, и 'pm' для любого часа после полудня. Спецификатор am/pm может использовать нижний, верхний или смешанный регистр, и результат отображается соответственно. a/p Использует 12-часовой формат для спецификатора h или hh, и показывает 'a' для любого часа до полудня, и 'p' для любого часа после полудня. Спецификатор a/p может использовать нижний, верхний или смешанный регистр, и результат отображается соответственно. 'xx'/"xx" Символы, заключенные в одинарные или двойные кавычки отображаются как есть, и не влияют на форматирование. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 160 Пример: Dim s s = FormatDateTime("yyyy-mm-dd hh:nn:ss", Now()) ' возвращает, например, s = "2008-12-24 13:12:57" DecodeDate sub DecodeDate(dDateValue As DateTime, ByRef Year As Integer, ByRef Month As Integer, ByRef Day As Integer) Возвращает значения года, месяца и дня как значение даты-времени. Параметры: dDateValue ... Выражение даты-времени. Year ... Целое число. Год в параметре dDateValue. Month ... Целое число. Месяц в параметре dDateValue. Day ... Целое число. День в параметре dDateValue. Пример: Dim iYear, iMonth, iDay DecodeDate(Now, iYear, iMonth, iDay) ' возвращает, например, iYear = 2008, iMonth = 12, iDay = 11 DecodeTime sub DecodeTime(dTimeValue As DateTime, ByRef Hour As Integer, ByRef Min As Integer, ByRef Sec As I nteger, ByRef MSec As Integer) Разбирает значение даты-времени на чаты, минуты, секунды и миллисекунды. Параметры: dTimeValue ... Выражение типа даты-времени. Hour ... Целое число. Часы, указанные в параметре dTimeValue. Min ... Целое число. Минуты, указанные в параметре dTimeValue. Sec ... Целое число. Секунды, указанные в параметре dTimeValue. Msec ... Целое число. Миллисекунды, указанные в параметре dTimeValue. Пример: Dim iHH, iMM, iSS, iMS DecodeTime(Now, iHH, iMM, iSS, iMS) ' возвращает, например, iHH = 6, iMM = 12, iSS = 13, iMS = 55 EncodeDate function EncodeDate(Year As Integer, Month As Integer, Day As Integer) As DateTime Возвращает значение даты-времени, представляющее указанный год, месяц и день. Параметры: Year ... Целое число. © 2014 Aignesberger Software GmbH 161 WebSite-Watcher 2014 Month ... Целое число. Day ... Целое число. Пример: Dim d ' Кодирует дату d = EncodeDate(2008, 12, 24) ' Кодирует дату, включая время d = EncodeDate(2008, 12, 24) + EncodeTime(12, 0, 30, 0) EncodeTime function EncodeTime(Hour As Integer, Min As Integer, Sec As Integer, MSec As Integer) As DateTime Возвращает значение в формате даты-времени для указанных часа, минуты, секунды и миллисекунды. Параметры: Hour ... Целое число. Часы, допустимые значения от 0 до 23. Min ... Целое число. Минуты, допустимое значение от 0 до 59. Sec ... Целое число. Секунды, допустимое значение от 0 до 59. Msec ... Целое число. Миллисекунды, допустимое значение от 0 до 999. Пример: Dim d ' Кодируем время d = EncodeTime(12, 0, 30, 0) ' Кодируем дату, включая время d = EncodeDate(2008, 12, 24) + EncodeTime(12, 0, 30, 0) Day function Day(DateValue As DateTime) As Integer Возвращает целое число от 1 до 31, представляющее день месяца. Параметры: DateValue ... Выражение типа дата. Пример: Dim i i = Day(Now) ' возвращает, например, i = 23 DayOfWeek function DayOfWeek(DateValue As DateTime) As Integer Возвращает день недели указанной даты как целое число от 1 до 7, где воскресенье считается первым днем недели, а суббота является седьмым. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 162 DayOfWeek не соответствует стандарту ISO 8601, который определяет понедельник первым днём недели. Параметры: DateValue ... Выражение формата даты. Пример: Dim i i = Day(Now) ' возвращает, например, i = 4 (=среда) IncMonth function IncMonth(Value As DateTime, IncValue As Integer) As DateTime Возвращает дату, сдвинутую на заданное число месяцев. IncValue может быть отрицательным, чтобы перевести дату на N предшествующих месяцев. Если введённый день месяца больше, чем число дней в месяце результата, то день будет установлен на последний день месяца-результата. Время суток, определенное параметром Даты, будет скопировано в результат. Для увеличения/уменьшения даты на указанное количество дней, Вы можете использовать операцию +/-: d = d + 3 ' увеличение d на 3 дня d = d - 1 ' уменьшение d на 1 день Параметры: Value ... Выражение типа дата. IncValue ... Целое число. Номер месяца. Пример: Dim d d = Now Inc(d, 2) ' увеличение d на 2 месяца d = d + 3 ' увеличение d на 3 дня IsLeapYear function IsLeapYear(Year As Integer) As Boolean Показывает, является ли указанный год високосным. Параметры: Year ... Целочисленное значение. Пример: Dim iYear iYear = 2009 If IsLeapYear(iYear) Then ' действия End If © 2014 Aignesberger Software GmbH 163 WebSite-Watcher 2014 WswMessageBox sub WswMessageBox(sMsg) Отображает сообщение в диалоговом окне и ждет, пока пользователь нажмёт на кнопку. Окно сообщения отображается только во время отладки функций событий WebSite-Watcher, а не во время проверки закладки. Исключением является функция событий Wsw_SelectPlugin, которая выполняется только при выборе плагина. sMsg поддерживает следующие HTML-теги: <b></b>, <i></i> и <u></u>. Параметры: sMsg ... Строковое выражение. Сообщение, которое будет отображено. Пример: WswMessageBox("This Plugin is not compatible with that page") WswInputBox function WswInputBox(sMsg) As String Отображает приглашение в диалоговом окне, ожидает от пользователя ввода текста, а затем возвращает строку, содержащую содержимое текстового поля. Диалоговое окно отображается только во время отладки функций событий WebSite-Watcher, а не во время проверки закладки. Исключением является функция событий Wsw_SelectPlugin, которая выполняется только при выборе плагина. sMsg поддерживает следующие HTML-теги: <b></b>, <i></i> и <u></u>. Параметры: sMsg ... Строковое выражение. Сообщение, которое будет отображено. Пример: Dim s s = WswInputBox("Please enter the directory of the conversion program.") Bookmark_GetProperty function Bookmark_GetProperty(Handle, sProperty) As String Читает настройки конфигурации закладки. Параметры: Handle ... Название закладки, которое передаётся функции событий. sProperty ... Строковое значение. Свойства закладки, которые будут прочитаны. Допустимые значения для sProperty: Значение Описание id Читает уникальный id закладки. name Читает уникальное имя закладки. check_url Читает проверяемый URL. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 164 note Читает примечание закладки. infofield1 Читает дополнительное информационное поле #1. infofield2 Читает дополнительное информационное поле #2. infofield3 Читает дополнительное информационное поле #3. folder_name Читает имя папки, в которой хранится закладка. folder_path Читает путь + имя папки, в которой хранится закладка. last_check_date Дата последней проверки. Результатом будет строка формата: yyyymmddhhmmss last_change_date Дата последнего изменения. Результатом будет строка формата: yyyymmddhhmmss check_log Лог-файл текущей проверки. plugin_password Поле пароля, которое может быть введено в разделе плагинов. crc_original_doc_web Контрольная сумма документа для загруженной web-версии. crc_original_doc_new Контрольная сумма документа для сохранённой локальной версии. database_filename Абсолютные путь + имя файла базы данных закладки. cache_folder Кэш-папка закладки (включая обратный слэш). Пример: Sub Wsw_PreProcessPage(Handle, ByRef sMemWeb, ByRef sStatusMessage, ByRef iStatusCode) Dim id ' Читаем уникальный id закладки id = Bookmark_GetProperty(Handle, "id") End Sub Bookmark_SetProperty sub Bookmark_SetProperty(Handle, sProperty, sValue) Изменение конфигурации закладки. Параметры: Handle ... Название закладки, которое передаётся функции событий. sProperty ... Строковое значение. Свойства закладки, которые будут изменены. sValue ... Строковое значение. Значение, которое должно быть назначено. Допустимые значения для sProperty: Значение Описание check_url Определяет URL, который должен быть проверен. Информация: Свойства закладки меняются не на постоянно, а только временно на время проверки закладки. Вы не увидите эти изменения в свойствах закладки. Эта функция обычно используется в функции событий Wsw_BeforeCheck. main_url Заменяет главный URL в свойствах закладки. Информация: Это навсегда заменяет URL в свойствах закладки. pagetype Переопределяет тип страниц, которые должны использоваться для проверки. Допустимые значения для типов страниц: autodetect, html, text, rss, atom, binary © 2014 Aignesberger Software GmbH 165 WebSite-Watcher 2014 Информация: Свойства закладки меняются не на постоянно, а только временно на время проверки закладки. Вы не увидите эти изменения в свойствах закладки. Эта функция обычно используется в функции событий Wsw_BeforeCheck. checkmethod Переопределяет метод проверки, который должен использоваться для проверки. Допустимые значения для метода проверки: automatic, content, date, size Информация: Свойства закладки меняются не на постоянно, а только временно на время проверки закладки. Вы не увидите эти изменения в свойствах закладки. Эта функция обычно используется в функции событий Wsw_BeforeCheck. name Записывает имя закладки. note Записывает примечание закладки. infofield1 Записывает дополнительное информационное поле #1. infofield2 Записывает дополнительное информационное поле #2. infofield3 Записывает дополнительное информационное поле #3. MarkAsRead Маркирует изменившиеся закладки красным цветом. Допустимое значение: "1" Пример: Bookmark_SetProperty(Handle, "MarkAsRead", "1") dont_check_minutes Временно отключает проверку закладки на указанное количество минут (должно быть указано в кавычках). Пример: Bookmark_SetProperty(Handle, "dont_check_minutes", "10") ignore_filter Определяет фильтры игнорирования, которые используются временно для проверки. Другие фильтры должны быть разделены символами возврат каретки / перевод строки (CRLF). Пример: Bookmark_SetProperty(Handle, "ignore_filter", "filter1" + CRLF + "filter2") Информация: Свойства закладки изменяются не навсегда, а только на время текущей проверки. Вы не увидите эти изменения в свойствах закладки. Эта функция обычно используется в функции событий Wsw_BeforeCheck. watch_filter Определяет фильтры отслеживания, которые используются временно для проверки. Другие фильтры должны быть разделены символами возврат каретки / перевод строки (CRLF). Пример: Bookmark_SetProperty(Handle, "watch_filter", "filter1" + CRLF + "filter2") Информация: Свойства закладки изменяются не навсегда, а только на время текущей проверки. Вы не увидите эти изменения в свойствах закладки. Эта функция обычно используется в функции событий Wsw_BeforeCheck. filter_ignore_removed_content Включает специальный фильтр "Игнорировать удаленные элементы". Допустимыми значениями являются: "0" и "1" Пример: Bookmark_SetProperty(Handle, "filter_ignore_removed_content", "1") Информация: Свойства закладки изменяются не навсегда, а только на время текущей проверки. Вы не увидите эти изменения в свойствах закладки. Эта функция обычно используется в функции событий Wsw_BeforeCheck. Пример: Sub Wsw_BeforeCheck(Handle) ' Изменение типа текста закладки на "text" Bookmark_SetProperty(Handle, "pagetype", "text") End Sub © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 166 Bookmark_ApplyFilter function Bookmark_ApplyFilter(Handle, sMem) As String Применение определенных фильтров конфигурации (свойств закладки) к строке sMem. Параметры: Handle ... Наименование закладки, которое будет передано в функцию события. sMem ... Строковое значение. Исходный код веб-страницы. Пример: Sub Wsw_CompareVersions(Handle, ByRef sMemWeb, ByRef sMemLocal, ByRef sStatusMessage, ByRef iStatu sCode) sMemWeb = Bookmark_ApplyFilter(Handle, sMemWeb) sMemLocal = Bookmark_ApplyFilter(Handle, sMemLocal) ' Дальнейшая обработка End Sub Bookmark_AddLog sub Bookmark_AddLog(Handle, sMsg As String) Добавляет строку в файл журнала закладки во время проверки закладки. Эта функция может быть вызвана в функции события WebSite-Watcher для добавления информации в журнал закладки. Параметры: Handle ... Наименование закладки, которое передаётся в функцию события. sMsg ... Строковое выражение. Текст, который следует добавить в журнал закладки. Пример: Bookmark_AddLog(Handle, "Plugin processed successfully") Bookmark_LoadCacheFile function Bookmark_LoadCacheFile(Handle, iVersion As Integer) As String Загружает локально сохраненную страницу в строку. Параметр iVersion указывает, какая версия должна быть загружена: новая/старая/изменённая. Параметры Handle ... Наименование закладки, которое должно быть передано в функцию события. iVersion ... Целое число. новая/старая/изменённая. Отображает, какая версия должна быть загружена: Допустимые значения для параметра iVersion: 1 ... страница с подсвеченными изменениями 2 ... новая версия 3 ... старая версия © 2014 Aignesberger Software GmbH 167 WebSite-Watcher 2014 Пример: sMemChanged = Bookmark_LoadCacheFile(Handle, 1) Bookmark_SaveWebDocBinary sub Bookmark_SaveWebDocBinary(Handle, sFilename As String) Сохраняет загруженный документ в его оригинальном формате двоичного файла. Вы должны использовать эту функцию, если вы хотите конвертировать скачанный бинарный файл в файл HTML (например, PDF в HTML) через внешний инструмент преобразования. Параметры: Handle ... Наименование закладки, которое будет передано в функцию события. sFilename ... Строковое выражение. Абсолютные путь и имя файла для целевого файла. Пример: Bookmark_SaveWebDocBinary(Handle, "c:\temp\myfile.pdf") GetWswConfiguration function GetWswConfiguration(sConfiguration) As String Читает свойства конфигурации программы WebSite-Watcher. Параметры: sConfiguration ... Строковое значение. Программная конфигурация, которая будет читаться. Допустимые значения для параметра sConfiguration: Значение Описание pdftotext.exe Читает путь+имя_файла для сконфигурированного "pdftotext.exe". Пример: Sub Wsw_PreProcessPage(Handle, ByRef sMemWeb, ByRef sStatusMessage, ByRef iStatusCode) Dim sConvertExe sConvertExe = GetWswConfiguration("pdftotext.exe") ' Код для преобразования PDF-файла в текстовый или HTML файл End Sub Недокументированные функции Ниже вы можете найти список (недокументированных) функций, которые поддерживаются системой плагинов WebSite-Watcher. Вам, скорее всего, не понадобятся эти функции, или найдутся подобные функции, доступные в списке встроенных функций. Если Вы нуждаетесь в них, пожалуйста, воспользуйтесь поисковой системой для поиска описаний в интернете. function function function function function StrComp(Str1 As String, Str2 As String) As Integer AnsiCompareText(Str1 As String, Str2 As String) As Integer CompareStr(Str1 As String, Str2 As String) As Integer AnsiCompareStr(Str1 As String, Str2 As String) As Integer Format(Format As String, Args As Array) As String © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 168 function function function function function FormatCurrency(Value As Double, NumDigitsAfterDecimal As Integer) As String Space(Number As Integer) As String String(Value As Integer, Value As String) As String CCur(expression) As Double Int(Value As Double) As Integer function function function function function function function StrToFloat(Value As String) As Double StrToInt(S As String) As Integer StrToIntDef(S As String, DefaultValue As Integer) As Integer IntToHex(Value As Integer, Digits As Integer) As String IntToStr(Value As Integer) As String FloatToStr(Value As Double) As String Hex(Number As Integer) As String function function function function function function function function function function function function function function function ArcTan(Value As Double) As Double Atn(Value As Double) As Double Cos(Value As Double) As Double Exp(Value As Double) As Double Fix(Number) As Integer FormatFloat(Format As String, Value As Double) As String FormatNumber(Value As DateTime, NumDigitsAfterDecimal As Integer) As String Frac(Value As Double) As Double Ln(Value As Double) As Double Log(Value As Double) As Double Sgn(Value As Double) As Integer Sin(Value As Double) As Double Sqr(Value As Double) As Double Sqrt(Value As Double) As Double Odd(Value As Integer) As Boolean function function function function function function function function function function function function function function function function function function function function function function function function DatePart(Interval As DateInterval, DateValue As DateTime) As Integer DateSerial(Year As Integer, Month As Integer, Day As Integer) As DateTime EncodeDate(Year As Integer, Month As Integer, Day As Integer) As DateTime EncodeTime(Hour As Integer, Min As Integer, Sec As Integer, MSec As Integer) As DateTime Hour(TimeValue As DateTime) As Integer Minute(TimeValue As DateTime) As Integer Month(DateValue As DateTime) As Integer MonthName(Month As Integer, Abbreviate As Boolean) As String Year(DateValue As DateTime) As Integer DateTimeToStr(DateValue as DateTime) As String DateToStr(DateValue As Date) As String DateValue(StringDate As String) As DateTime StrToDate(DateStr As String) As DateTime StrToDateTime(DateTimeStr As String) As DateTime IsDate(Expression As Object) As Boolean Second(TimeValue As DateTime) As Integer StrToTime(TimeStr As String) As DateTime Time() As DateTime Timer() As Integer TimeSerial(Hour As Integer, Minute As Integer, Second As Integer) As DateTime TimeToStr(Time As DateTime) As String TimeValue(StringTime As String) As DateTime Weekday(DateValue As DateTime) As Integer WeekdayName(Weekday As Integer, Abbreviate As Boolean) As String sub AssignFile(FileClass, Filename As String) sub Append(FileClass) function EOF(FileClass) As Variant function FilePos(FileClass) As Integer function ReadLn(FileClass) As Variant sub Reset(FileClass) sub Rewrite(FileClass) sub Write(FileClass, Value) sub WriteLn(FileClass, Value) sub CloseFile(FileClass) function function function function Low(Array) As Integer High(Array) As Integer LBound(array, Rank As Integer) As Integer UBound(Array, Rank As Integer) As Integer function Assigned(expression) As Integer function IsEmpty(VarName As Object) As Boolean function VarIsNull(V As Variant) As Boolean function VarToStr(V As Variant) As String function IsNull(Expression As Object) As Boolean function IsNumeric(Expression As Object) As Boolean function IsValidIdent(Ident As String) As Boolean function IsArray(VarName As Object) As Boolean sub Beep() sub Inc(ByRef Value As Integer) © 2014 Aignesberger Software GmbH 169 WebSite-Watcher 2014 sub Dec(ByRef Value As Integer) sub Chdir(Path As String) Как... Создать частный плагин Частные плагины создаются и хранятся в закладке и не могут совместно использоваться закладками. 1. Откройте свойства закладки 2. Выберите вкладку "Дополнительно" 3. Выберите "Плагин" с левой стороны 4. Нажмите кнопку "Создать частный плагин" Это откроет IDE (среду разработки) плагинов, и вы должны выполнить функцию события. Вы можете использовать меню "Вставка" для вставки структуры в функцию события в редакторе сценариев. Создать общий плагин Общие плагины хранятся в отдельных файлах и могут совместно использоваться несколькими закладками. 1. Откройте свойства закладки 2. Выберите вкладку "Дополнительно" 3. Выберите "Plugin" ("Плагин") с левой стороны 4. Нажмите кнопку "Создать общий плагин" Откроется Редактор плагинов, где вы должны ввести/выполнить следующие части: Название и описание плагина Базовые настройки плагина (например, когда плагин должен быть предложен) Строки идентификации плагина Скрипт плагина (функции событий) Примеры Проверка наличия определённой цены Следующий пример извлекает определенную цену на определённой странице, и предупреждает об обновлении, только если цена ниже заранее определённой цены. Такое извлечение цены зависит от страницы, и Вы можете использовать следующий код в качестве отправной точки. Альтернативой этому плагину может быть функция regexcmp, которую можно использовать в Фильтрах игнорирования, Фильтрах отслеживания и в функциональности "Ключевые слова". Sub ExtractPrice(sMem, ByRef nPrice) Dim p, nLen nPrice = -1 sMem = DeleteHtmlTags(sMem) ' Извлечение цены без десятичных знаков If FindRegex(sMem, "Price:\s*EUR\s*\d+,", p, nLen) Then sMem = ExtractDigits(Copy(sMem, p, nLen)) nPrice = StrToIntDef(sMem, -1) © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 170 End If End Sub '******************************************************************************* Sub Wsw_CompareVersions(Handle, ByRef sMemWeb, ByRef sMemLocal, ByRef sStatusMessage, ByRef iStatu sCode) Dim nPriceNew , nPriceOld, nPriceRef ' Установление базовой цены (100 EUR) nPriceRef = 100 ' Извлечение цены из новой/локальной версии ExtractPrice(sMemWeb, nPriceNew) ExtractPrice(sMemLocal, nPriceOld) ' необходимо только чтобы ускорить несколько процедур WSW ' Возвращение только цены - ускорение только некоторых процедур WSW, например, ' диалога "Тест фильтра" или функциональности "Анализ" sMemWeb = IntToStr(nPriceNew) sMemLocal = IntToStr(nPriceOld) If nPriceNew = -1 Then iStatusCode = 2 sStatusMessage = "Error extracting price" ElseIf (nPriceNew <> nPriceOld) And (nPriceNew <= nPriceRef) Then iStatusCode = 1 sStatusMessage = "Price changed and lower than EUR " + IntToStr(nPriceNew) ElseIf (nPriceNew <> nPriceOld) And (nPriceNew > nPriceRef) Then iStatusCode = 0 sStatusMessage = "Price too high" Else iStatusCode = 0 sStatusMessage = "Price unchanged" End If End Sub Предупреждение, если нет обновлений Приведенный ниже пример предупреждает об обновлении, только если не было никаких изменений. Sub Wsw_BeforeCheck(Handle) ' отключить оптимизацию и всегда выполнять загрузку со сравнением контента Bookmark_SetProperty(Handle, "checkmethod", "content") End Sub '******************************************************************************* Sub Wsw_CompareVersions(Handle, ByRef sMemWeb, ByRef sMemLocal, ByRef sStatusMessage, ByRef iStatu sCode) ' Применить оговорённые определения фильтров sMemWeb = Bookmark_ApplyFilter(Handle, sMemWeb) sMemLocal = Bookmark_ApplyFilter(Handle, sMemLocal) ' Сравнить фильтрованный контент If sMemWeb <> sMemLocal Then ' Страница обновлена -> не маркировать как изменённое iStatusCode = 0 ElseIf sMemWeb = sMemLocal Then © 2014 Aignesberger Software GmbH 171 WebSite-Watcher 2014 ' Страница не была обновлена -> маркировать как изменённое iStatusCode = 1 End If End Sub Поиск ключевых слов В приведенном ниже примере, появляется предупреждение об обновлении, если определенные ключевые слова находятся в новом или измененном содержании. Sub Wsw_CheckKeywords(Handle, sMemChanges, ByRef sStatusMessage, ByRef iKeywordFound) Dim s = LCase(sMemChanges) ' Наблюдаем с WebSite-Watcher, но снимаем нагрузку с наблюдателя If (InStr(s, "website") > 0) And (InStr(s, "watcher") > 0) And (InStr(s, "weight") = 0) Then iKeywordFound = 1 Return End If If (InStr(s, "aignesberger") > 0) And (InStr(s, "watcher") > 0) Then iKeywordFound = 1 sStatusMessage = "Keyword 'aignesberger + watcher' found" Return End If End Sub Пожалуйста, посмотрите тему "Wsw_CheckKeywords", чтобы узнать, в каких случаях вызывается эта функция, а в каких нет. Предупреждение, если ключевые слова НЕ найдены Возможность Обновления-По-Ключевым-словам в свойствах закладки предупреждает об обновлении, только если одно из введённых ключевых слов найдено в пределах нового или изменённого содержания. Если Вы хотите получать уведомление об обновлении, когда ключевые слова НЕ найдены в новом/изменившемся содержании, Вы можете использовать следующий плагин. Sub Wsw_CheckKeywords(Handle, sMemChanges, ByRef sStatusMessage, ByRef iKeywordFound) Dim s = LCase(sMemChanges) If InStr(s, "your keyword") > 0 Then ' ключевое слово найдено iKeywordFound = 0 sStatusMessage = "No alert because keyword found" Return Else ' ключевое слово НЕ найдено iKeywordFound = 1 sStatusMessage = "Alert because keyword NOT found" End If © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 172 End Sub Для поиска нежелательных ключевых слов Вы не должны использовать никаких слов из секции "Обновление-По-Ключевым-словам". Пожалуйста, посмотрите тему "Wsw_CheckKeywords", чтобы узнать, в каких случаях вызывается эта функция, а в каких нет. Слияние страниц результатов поиска Этот пример показывает, как объединить страницы с результатами поиска. В этом примере, URL-адреса страниц содержат параметр &start=, но первая страница не имеет такого параметра, а следующие страницы идут с шагом 10 (&start=10, &start=20, и т.д.) Sub Wsw_MergePages(Handle, sMemWeb, nPageNumber, sUrl, ByRef sNewUrl, ByRef sNewPostData, ByRef bC hangeBookmarkUrl, ByRef sStatusMessage, ByRef iStatusCode) Dim nPageParamNumber, sPageParam, sNewPageParam ' Ограничение количества объединяемых страниц If nPageNumber > 3 Then Return End If ' Извлекаем номер страницы sPageParam = GetFirstRegexMatch(sUrl, "\&start=\d+") If sPageParam = "" Then ' первая страница, продолжение со страницей 2 (решение с start=10) sNewPageParam = "&start=10" sUrl = sUrl + sNewPageParam Else ' увеличение номера страницы nPageParamNumber = CInt(ExtractDigits(sPageParam)) + 10 sNewPageParam = "&start=" + CStr(nPageParamNumber) sUrl = ReplaceText(sUrl, sPageParam, sNewPageParam) End If ' проверка (только) через Параметр_Страницы, если следующая страница уже есть в исходном коде с траницы If Pos(sNewPageParam, sMemWeb) > 0 Then ' следующая страница существует sNewUrl = sUrl sStatusMessage = "Merge pages via FOLLOW-Plugin" End If End Sub Слияние страниц в теме форума Этот пример показывает, как в теме форума проследовать на следующую страницу, когда она появится. Ссылки на предыдущую и следующую страницы, как правило, отображаются в виде: © 2014 Aignesberger Software GmbH 173 WebSite-Watcher 2014 Назад ... 13, 14, 15 ... Вперёд Если мы, например, находимся на странице 14, и на этой странице есть также ссылка на страницу 15, то этот плагин вернёт новый URL, с тем чтобы WebSite-Watcher мог объединить новую страничку с текущей страничкой. Ссылки на страницы имеют следующий формат: http://domain.com/forum/topic123x-14.html где 14 - это номер страницы. URL начальной страницы не включает номера первой страницы, только topic123x.html Каждый пост в этой ветке форума является номером поста, который отображается как # 12 для поста номер 12. Мы можем указать фильтр отслеживания для мониторинга только номеров постов, но тогда мы не сможем получить ложные срабатывания при измении другого контента, например, статистики форума, даты изменения, рекламы, и т.д. Sub Wsw_BeforeCheck(Handle) ' Установка фильтра отслеживания для мониторинга только номеров постов ' таким образом, мы получим уведомление об обновлении, только если появится номер нового поста Bookmark_SetProperty(Handle, "watch_filter", "regex(#\s*\d+)") Bookmark_SetProperty(Handle, "filter_ignore_removed_content", "1") End Sub '******************************************************************************* Sub Wsw_MergePages(Handle, sMemWeb, nPageNumber, sUrl, ByRef sNewUrl, ByRef sNewPostData, ByRef bC hangeBookmarkUrl, ByRef sStatusMessage, ByRef iStatusCode) Dim nPageParamNumber, sFilename ' Ограничение количества объединяемых страниц If nPageNumber > 3 Then Return End If ' Извлечение номера страницы sFilename = GetFirstRegexMatch(sUrl, "index\d+\.html") If sFilename = "" Then nPageParamNumber = 2 Else sUrl = ReplaceText(sUrl, sFilename, "") nPageParamNumber = CInt(ExtractDigits(sFilename)) + 1 End If sFilename = "index" + CStr(nPageParamNumber) + ".html" ' Создание возможной следующей страницы If Right(sUrl, 1) <> "/" Then sUrl = sUrl + "/" End If sUrl = sUrl + sFilename ' Проверка, если следующая страница уже есть в исходном коде текущей страницы If Pos(sUrl, sMemWeb) > 0 Then ' следующая страница уже существует © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 174 sStatusMessage = "New page via Merge-Plugin" sNewUrl = sUrl 'возврат нового URL bChangeBookmarkUrl = True 'изменение URL в свойствах закладки End If End Sub Если ветка форума отображает номер страницы через параметр в URL (например, &page=13), то отправной точкой может стать следующий код: Sub Wsw_BeforeCheck(Handle) ' опциональный фильтр отслеживания, если каждый пост имеет номер поста, например, #14 Bookmark_SetProperty(Handle, "watch_filter", "regex(#\s*\d+)") Bookmark_SetProperty(Handle, "filter_ignore_removed_content", "1") End Sub '******************************************************************************* Sub Wsw_MergePages(Handle, sMemWeb, nPageNumber, sUrl, ByRef sNewUrl, ByRef sNewPostData, ByRef bC hangeBookmarkUrl, ByRef sStatusMessage, ByRef iStatusCode) Dim nPageParamNumber, sPageParam ' Ограничение количества объединяемых страниц If nPageNumber > 5 Then Return End If ' Извлечение номера страницы sPageParam = GetFirstRegexMatch(sUrl, "\&page=\d+") If sPageParam = "" Then ' первая страница, продолжение со страницы 2 sUrl = sUrl + "&page=2" Else ' увеличение номера страницы nPageParamNumber = CInt(ExtractDigits(sPageParam)) + 1 sUrl = ReplaceText(sUrl, sPageParam, "&page=" + CStr(nPageParamNumber)) End If ' Проверка, если следующая страница уже есть в исходном коде текущей страницы If Pos(sUrl, sMemWeb) > 0 Then ' следующая страница уже существует sNewUrl = sUrl bChangeBookmarkUrl = True ' изменение URL закладки на последний URL объединения sStatusMessage = "New page via FOLLOW-Plugin" End If End Sub © 2014 Aignesberger Software GmbH 175 WebSite-Watcher 2014 Регистрация в лог-файле продолжительности проверки закладки Этот пример вычисляет продолжительность проверки и записывает число секунд в лог-файл формата csv (c:\wswlogs\log23.txt). Количество секунд также записывается в дополнительное информационое поле #1, которое может отображаться как столбец в списке закладок. Dim sLogfile = "c:\wswlogs\log23.txt" Dim dStart Sub Wsw_BeforeCheck(Handle) Bookmark_SetProperty(Handle, "checkmethod", "content") dStart = Now End Sub '******************************************************************************* Sub Wsw_AfterCheck(Handle, ByRef sStatusMessage) Dim sSeconds = CStr(Trunc((Now - dStart) * 24 * 60 * 60)) ' Запись секунд в дополнительное информационное поле/столбец Bookmark_SetProperty(Handle, "infofield1", sSeconds + " sec") ' Запись URL и секунд в лог-файл If sLogfile <> "" Then AddStringToFile(sLogfile, """" + Bookmark_GetProperty(Handle, "check_url") + """;""" + sSeco nds + """" + CRLF) End If End Sub Предупреждение, только если имеется более 1 изменения По умолчанию, WebSite-Watcher предупреждает об обновлении, как только будет обнаружено изменение. Если Вы хотите получать уведомление об обновлении, только если произошло, например, более одного изменения, Вы можете использовать плагин, приведённый ниже. Вы также можете изменить занчение 1, например, чтобы получить уведомление об обновлении, только если на странице произошло более 3 изменений. Sub Wsw_CompareVersions(Handle, ByRef sMemWeb, ByRef sMemLocal, ByRef sStatusMessage, ByRef iStatu sCode) Dim nNew, nChg, nDel ' Применение вписанных определений фильтра sMemWeb = Bookmark_ApplyFilter(Handle, sMemWeb) sMemLocal = Bookmark_ApplyFilter(Handle, sMemLocal) ' Вычисление количества нового/изменённого/удалённого контента GetComparisonInfo(sMemWeb, sMemLocal, 1, nNew, nChg, nDel) ' Предупреждение, только если имеется более 1 изменения If (nNew + nChg > 1) Then iStatusCode = 1 End If End Sub © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 176 О программе... Установка на переносной диск / USB-брелок Запустите установочный пакет WebSite-Watcher и выберите "Install as portable application onto your USB-Stick" в ходе выполнения Мастера установки. Вы сможете пользоваться WebSite-Watcher на любом компьютере без установки программы на этот компьютер. Все конфигурации и закладки будут сохраняться в установочном каталоге и WebSite-Watcher не оставит никаких следов на используемом компьютере. Что Вы должны знать о переносной версии: 1. Лицензионный ключ Если вы используете переносную версию WebSite-Watcher на USB-брелке, то Вам недоступен испытательный срок и потребуется действующий лицензионный ключ. Если вы установили переносную версию на жесткий диск, то вы также сможете запустить ее в тестовом режиме. 2. Cookies Переносная версия использует Internet Explorer Cookies на рабочем компьютере. Если Вы не хотите использовать cookies рабочего компьютера, Вы должны установить опции: Отключите "Internet Explorer Cookies" в свойствах закладки Не используйте технологию проверки "Internet Explorer/Браузер" Не записывайте и не выполняйте "Макрокоманды Internet Explorer" Не открывайте онлайн web-страницы во встроенном браузере (однако Вы можете открывать проверенные и хранящиеся локально страницы) 3. Встроенный браузер При открытии онлайн web-страниц во встроенном браузере на используемом компьютере могут записываться и оставаться cookies. В общей конфигурации программы Вы можете отключить встроенный браузер, тогда закладки будут открываться в стандартном браузере системы. В качестве альтернативы в общей конфигурации программы Вы можете задать пользовательский браузер, например, переносной Firefox. 4. Ваши действия во встроенном браузере Во встроенном в WebSite-Watcher браузере выполняйте только действия, которые Вы выполняли бы в Internet Explorer на рабочем PC. Всегда имейте ввиду, что встроенный браузер есть внедрённый Internet Explorer используемого компьютера. 5. Интеграция с браузером Невозможно добавить интеграцию браузера с web-браузером. Однако во время выполнения WebSite-Watcher в строке заголовка браузера будет работать "глаз" WebSite-Watcher. Купить WebSite-Watcher онлайн Программа WebSite-Watcher предлагается для испытания перед покупкой. Это означает, что Вы можете свободно оценивать WebSite-Watcher в течение 30 дней. Если Вы желаете использовать WebSite-Watcher и после испытательного срока, Вы должны приобрести её. Перейдите на наш web-сайт http://www.aignes.com/shop.htm для получения дополнительной информации! Распечатываемое руководство пользователя Распечатываемое руководство пользователя можно найти в нашем разделе техподдержки. © 2014 Aignesberger Software GmbH 177 WebSite-Watcher 2014 Поддержка онлайн Страница поддержки: http://www.aignes.com/support.htm Форум поддержки: http://www.aignes.com/forum/ Поддержка по E-Mail: http://www.aignes.com/email.htm Лицензионное соглашение Terms of License for the software product WebSite-Watcher (in the following called "SOFTWARE PRODUCT") This End-User License Agreement ("EULA") is a legal agreement between you (either an individual or a single entity) and Aignesberger Software GmbH. Please pay attention to the following notes before you start using this software. If you do not agree with the following, do not use the SOFTWARE PRODUCT and remove it from your system. The SOFTWARE PRODUCT is licensed, not sold. There is a Basic Edition and a Personal Edition for personal use only, and a Business Edition for all other cases. 1. License Agreement The SOFTWARE PRODUCT is a try-before-you-buy software. You are allowed to test this software intensively for a period of 30 days. To use the software after this period legally you need to register. The price for the registered version can be obtained in the actually valid price list, which is available at the website mentioned above. By using the software beyond the test period you infringe international copyright terms! The licensed version of the SOFTWARE PRODUCT (single user license) can be installed by the licensee on as many computers as he wants, as long as the SOFTWARE PRODUCT is only used by one single person. The use of the software by different users needs additional licenses. 2. Reproduction and Distribution The SOFTWARE PRODUCT unregistered version may be freely distributed, provided the distribution package is not modified. The SOFTWARE PRODUCT and the attached documentation can not be distributed together with commercial software. For this you need to be authorized by the manufacturer. No person or company may charge a fee for the distribution of the SOFTWARE PRODUCT without written permission of the author. The SOFTWARE PRODUCT may not be sold or be included in a product or package. 3. Other Rights and Limitations Limitations on Reverse Engineering, Decompilation, and Disassembly: You may not reverse engineer, decompile, or disassemble the SOFTWARE PRODUCT, except and only to the extent that such activity is expressly permitted by applicable law notwithstanding this limitation. Separation of Components: The SOFTWARE PRODUCT is licensed as a single product. Its component parts may not be separated for use on more than one computer. Software Transfer: You may not permanently transfer all of your rights under this End-User License Agreement. Termination: Without prejudice to any other rights, the Author of this Software may terminate this End-User License Agreement if you fail to comply with the terms and conditions of this End-User License Agreement. In such event, you must destroy all copies of the SOFTWARE PRODUCT and all of its component parts. 4. Copyright The SOFTWARE PRODUCT is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. 5. No Warranties The Author of the SOFTWARE PRODUCT expressly disclaims any warranty for the SOFTWARE PRODUCT. The SOFTWARE PRODUCT and any related documentation is provided "AS IS" without warranty of any kind, either express or implied, including, without limitation, the implied warranties or merchantability, fitness for a particular purpose, or noninfringement. The entire risk arising out of use or performance of the SOFTWARE PRODUCT remains with you. No Liability for Damages: In no event shall the author of this Software be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or any other pecuniary loss) arising out of the use of or inability to use this product, even if the Author of the SOFTWARE PRODUCT has been advised of the possibility of such damages. Because some states/jurisdictions do not allow the exclusion or limitation of liability for consequential or incidental damages, the above limitation may not apply to you. 6. Other Provisions The license agreement for this software may be modified if necessary. Therefore the license agreement under which the software has been delivered will be applied. Should one or more provisions of this agreement be or become invalid, all other license agreements and provisions remain valid. Invalid provisions have to be replaced by others which are equal for the economical contents. The latest revision of this document can be found at www.aignes.com. All mentioned trademarks and copyrights are property of the relative owner. Court of jurisdiction is Landesgericht Wels, Austria. © 2014 Aignesberger Software GmbH Справка по WebSite-Watcher 178 Благодарности Благодарим всех, кто помог разрабатывать WebSite-Watcher, сообщая об ошибках и поддерживая конструктивную обратную связь. Отдельная благодарность всем честным пользователям, поддержавшим разработку WebSite-Watcher регистрацией копии программы! Благодарим национальных переводчиков WebSite-Watcher. © 2014 Aignesberger Software GmbH
© Copyright 2024