Для добавления нового модуля создайте новую директорию (с указанной выше структурой) в директории modules/. Файлы и директории, которые выделены на схеме красным цветом, являются обязательными. Остальные файлы и директории используются для расширения функционала модуля.
Программирование действий модуля
Писать код действий модулей можно используя языки программирования:
Вы можете использовать для этого любой текстовый редактор, например: Notepad ++. Если у вашего редактора есть функция подсветки синтаксиса кода, то рекомендуется выбрать подсветку синтаксиса языка JavaScript. Сохранять файлы модулей нужно в кодировке UTF-8 без BOM.
Функция load() позволяет загружать и исполнять код из указанных файлов. Используйте эту функцию, чтобы не повторять один и тот же код при создании новых модулей.
Формат записи:
load(String filePath)
Параметр filePath - относительный путь к файлу.
Примеры:
// загрузить и выполнить код установки случайного значения заголовка User-Agent load("modules/Common Files/Set random useragent.txt");
Кроме стандартных функций языков JavaScript и Java, вы можете использовать встроенные методы программы. Встроенные методы программы помогут вам быстро и просто описать такие процессы как:
Для доступа к встроенным методам пограммы следует использовать префикс T.
Примеры:
T.log("Начало работы"); resp = T.makeRequest("GET", T.get("url")); body = T.encode(resp.body, resp.charset); T.log("Конец работы");
Список методов:
T.stop() T.done() T.undone() T.lock() T.unlock() T.sleep(long milliseconds) T.enable(String flagName) T.disable(String flagName) byte[] T.decode(String string) byte[] T.decode(String string, String charset) String T.encode(byte[] bytes) String T.encode(byte[] bytes, String charset) String T.getId() int T.getRowIndex() T.clearGlobalObject() Object T.getGlobal(...) Object T.getGlobalObject(String key) T.setGlobal(...) T.setGlobalObject(String key, Object object) String T.get(...) String T.getRowValue(String key) T.set(...) T.setRowValue(String key, String value) T.err(...) T.makeError(String error) T.log(...) T.addLog(Object log) T.addRow() T.addRow(String[] values) String T.getProxy() String T.getNextProxy() T.setProxy(String proxyString) T.clearCookies() T.deleteCookiesByUrl(String url) T.deleteCookieByUrlAndName(String url, String name) String T.getCookie(...) String T.getCookieValue(String url, String name) T.setCookie(String url, String name, String value) T.clearSession() Object[] T.getSession() T.setSession(Object[] session) byte[] T.read(...) byte[] T.readFromFile(String fileName) T.write(...) T.writeToFile(String fileName, byte[] fileBytes) T.writeToFile(String fileName, byte[] fileBytes, String fileMode) T.createDir(String fileName) boolean T.deleteDir(String fileName) boolean T.deleteFile(String fileName) Object T.getRandom(...) Object T.getRandomValue(Object[] values) String T.getRegExp(...) String T.getRegExpValue(String source, String re) String T.getRegExpValue(String source, String re, String format) String T.getCaptcha(...) String T.getCaptchaValue(byte[] captcha) String T.getCaptchaValue(byte[] captcha, String[] params) String T.makeURL(String urlBase, String[][] params) String T.getHeaderReferer() T.setHeaderReferer(String header) String T.getHeaderUseragent() T.setHeaderUseragent(String header) Map<String, Object> T.makeRequest(String method, String url) Map<String, Object> T.makeRequest(String method, String url, String[][] headers) Map<String, Object> T.makeRequest(String method, String url, String[][] headers, String[][] body) Map<String, Object> T.makeRequest(String method, String url, String[][] headers, String[][] body, String cahrset)