Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Universal Share Downloader | USD (часть 2)

Модерирует : gyra, Maz

gyra (21-01-2020 21:44): Universal Share Downloader | USD (часть 3)  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

Alex_Qwerty

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
usdLua v2.46-102-37 - скриптовый плагин. Нужен пропатченный usdownloader.exe
 
https://www.upload.ee/files/11004495/usdLua_0246_102_37.zip.html
MD5: DEB60F00A4829DDDECEE670C5485D346
 
Для установки нужно распаковать (с подкаталогами) в каталог где лежит usdownloader.exe.
Скрипты по отдельности не отключаются, но...
 
Для распознавания второй рекапчи:  
- скачать клиент http://www.9kw.eu/software_9kwclient.html, распаковать туда с заменой файлы из nwjs_rc2.zip и прописать порт с батником в Captchas['reCaptcha2']. В node_modules куча всякой хрени с длинными путями, можно выкинуть всё кроме socksv5.
- поставить SlimerJS (работает 0.10.3 + FF52) и прописать батник в slimerjs в Settings['<misc>']; гугель пакостит, так что работает хреново. Чтоб меньше тормозило нужно в slimerjs\defaults\preferences\prefs.js прописать pref("javascript.options.strict", false);
- аккаунт на 9kw.eu и раскомментировать "ocrCmd = Captchas['9kw.eu'].ocrCmd"
 
 
Обновленные скрипты, нужно кинуть в Lua\usdLua\ :
 
-
 
 
Исправленные скрипты B3T6:
https://www.upload.ee/files/8914229/ge_tt.zip.html
https://www.upload.ee/files/8939753/rghost_ru.lua.v24.zip.html
https://www.upload.ee/files/10034196/mirrorcreator_com.lua.v0017_aq3.zip.html
https://www.upload.ee/files/10558973/fayloobmennik_net.lua.v0006.zip.html (+cloud)
 
 
Часть серверов при докачке шлют "Content-Type: text/html", поэтому нужен фильтр:

Код:
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Type: yadi.sk crutch"
URL = "([^/]++.|)yandex.(net|ru|ua)/rdisk/"
Match = "text/html"
Replace = "WTF"

 
Если кинуть содержимое IUP271.zip в Lua\, то на тюбике будет показывать превьюхи. Может глючить на W8.1.

 
 
Скрипты B3T6
Скрипты kotgar
Скрипты SpoinT
 
История:  
v2:
Код, специфичный для хостингов, теперь в Lua\%plgName%\*.lua .
Перезапуск скриптов при изменении любого Lua\*.lua, Lua\%plgName%\*.lua и после ошибок.
Теперь функции и переменные USD и плагина лежат в таблицах usd и plg.
Проверка аргументов функций usd.* и plg.*
usd.getpicsize() и usd.showhawindow() возвращают по 2 значения
plg.setproperext()
renameFile() переименовал в fileRename(); добавил четвертый аргумент - префикс имени файла; исправил глюк с файлами без расширения
filterName() возвращает пустую строку если вызвана с nil
escapeUC() и unescape() теперь возвращают только 1 значение (раньше был еще счетчик gsub)
function pad(str, len [, symb])
function debugSaveInc(fName, data)
function getNextName(fname, cnt, digs)
counters
-----------------------------------------------------------------------------------------------
v2.1:
Исправил типы usdLuaTitle и usdLuaError на string, а то с pchar что-то глючило
tryDl(url [, post [, tries, [strgood, [strbad]]]] )
usd.post() application/x-www-form-urlencoded
Form, Form.parse(form), Form:getinputs(), Form:submit([submitname [,clickX, clickY]])
usd.showhawindow() пишет в лог введенный текст
-----------------------------------------------------------------------------------------------
v2.2:
При добавлении заголовков не надо ставить в конце '\r\n' - может испортить POST запрос
addNewName(origUrl [,name [,pref [,suff [,fext [,sep]]]]])
usd.showhawindow() - второй аргумент теперь необязателен, по дефолту 0
-----------------------------------------------------------------------------------------------
v2.3:
Теперь скрипты частично изолированы и имеют свое окружение
В addNewName() не фильтровалось имя
debugSave(fName, data [, str])
debugSaveInc(fName, data [, str])
script.name - имя скрипта без точки с расширением (с версии 2.0 также есть plg.plgname и plg.exename).
queryCaptcha(url [, timeout])
queryReCaptcha(key [, timeout])
-----------------------------------------------------------------------------------------------
v2.4:
Переделал запись в лог инфы об ошибках: теперь показывет где вызвана utf8ToAnsi(nil)
plg.setproperext() определяет флэш
fileRenameUtf8(oldFullName, newNameUtf8) - для исправления имен файлов
base64.enc(), base64.dec()
отрубил запись в глобальные таблицы (debug, string, package ...), но не во вложенные таблицы
перенес в plg таблицы tHosts, tDirLink, tOnSuccess, tOnCheck, tOnError
counters.set(cnt [, val])
-----------------------------------------------------------------------------------------------
v2.5:
Перекинул bit.dll в Lua\
zlib
plg.exec(cmd [, timeout [, nCmdShow]])
Поддержка распознавалок
queryCaptchaOCR(cfile, timeout, ctype)
20111014_2:
queryCaptcha(url [, timeout [, ctype [, manual]]] )
queryReCaptcha(key [, timeout [, manual]])
queryCaptchaOCR(cfile, timeout, ctype [, manual])
-----------------------------------------------------------------------------------------------
v2.6:
LPeg
plg.config.maxwait
20111106:
Form.parse() приводила action к нижнему регистру *facepalm*
20111114:
Captchas.reCaptcha.ocrOnly
queryReCaptcha(key [, timeout [, manual [, host]]])
-----------------------------------------------------------------------------------------------
v2.7:
Сообщения об ошибках в plg.exec() и plg.setproperext()
Исправил падение queryReCaptcha() если не было таблицы Captchas
20111209:
Исправил проверку Captchas.reCaptcha.ocrOnly
20111223:
Подпилил addNewName()
-----------------------------------------------------------------------------------------------
v2.8:
fileRename() - если новое расширение не задано, то берется из нового имени; если новое имя совпадает с текущим, то не переименовывает.
Выкинул fileRenameUtf8().
usd.setretresult() понимает несколько аргументов.
20120110:
tryDl() в случае неудачи возвращает nil и скачанную страницу
addNewName() - если новое расширение не задано, то берется из нового имени.
20120113:
usdLua_accounts.lua
-----------------------------------------------------------------------------------------------
v2.9:
*.luac могли не загружаться (возможно из-за отключения коротких имен в винде), сейчас скрипты грузятся строго по маскам *.lua и *.luac
20120120:
usdLua_settings.lua
-----------------------------------------------------------------------------------------------
v2.10:
Проверка таймштампов *.luac
plg.gettextextent()
-----------------------------------------------------------------------------------------------
v2.11:
Form:getinputs() теперь при enctype = 'application/x-www-form-urlencoded' добавляет "%simple%"
Исправил plg.gettextextent()
Dialog.new(), addrows(), addrow(), makeform(), show()
Настройка dialogDelay - через сколько секунд нажимать Enter (0 - отключено)
http://ipic.su/img/img3/fs/multi_up.1327730722.png
20120204:
trySubmit()
-----------------------------------------------------------------------------------------------
v2.12:
getMirror()
debugSave(fName, data [, str [, addinfo]])
debugSaveInc(fName, data [, str [, addinfo]])
20120222:
usd.waittime(seconds [, secondsmax])
Исправил Form.parse() для кривых форм
-----------------------------------------------------------------------------------------------
v2.13:
Lua 5.1.5
Исправил prompt(), хе-хе
usd.waittime(seconds [, maxdelta])
20120312:
Исправил номер версии
Исправил указание координат клика в Form:submit(sname, clickX, clickY)
-----------------------------------------------------------------------------------------------
v2.14:
plg.beep()
plg.playsound()
Settings['<Dialog>'] - звуки при появлении диалога
20120504:
Подпилил парсинг форм, для "<input type=image" сохраняется src.
Form:getinputs( [sname [, clickX [, clickY]]] )
Form:getsubmit( [sname [, clickX [, clickY]]] )
getMirror() теперь самостоятельно вытаскивает хосты из таблицы зеркал.
ascii85
serialize(), deserialize()
serializeMirrors()
20120521:
Подпилил getMirror(), serializeMirrors()
tableCopy()
Form.make()
-----------------------------------------------------------------------------------------------
v2.15:
regDestroy()
getMirror() - unwanted в Settings['<getMirror>']; не считает '%done%' ошибкой.
queryCaptchaOCR() - при случайном нажатии enter/esc (пустая капча и прошло меньше 1.5 секунд) показывает капчу еще раз
20120612:
Form:escape(str) - наконец-то потребовалось
20120617:
queryCaptcha(url [, timeout [, ctype [, manual [, host [, noUniversal]]]]])
queryReCaptcha(key [, timeout [, manual [, host [, noUniversal]]]])
queryCaptchaOCR(cfile, timeout, ctype [, manual [, host [, noUniversal]]])
20120618:
parseJsObject()
20120619:
Подпилил parseJsObject()
Улучшил определение расширения в fileRename() и addNewName()
20120622:
Подпилил parseJsObject()
serialize (o, allowdupes, pretty)
20120629:
parseJsObject(obj [, noNumKeys [, noNumVals [, noBoolean [, newNull [, zeroBase [, noUnescape]]]]]])
parseJsObject() теперь не возвращает позицию
20120709:
getMirror() пропускает кривые зеркала
parseJsObject(obj [, noNumKeys [, noNumVals [, noBoolean [, newNull [, zeroBase [, noUnescape [, flat]]]]]]])
20120711:
Обновил lua5.1.dll
20120726:
queryReCaptcha(key [, timeout [, manual [, host [, noUniversal, [gooCheck]]]]])
20120906:
setXHR([clean])
queryReCaptcha(): gooCheck может быть количеством попыток
Form:escape() теперь превращает аргумент в строку
getHandler() приводит ссылку к нижнему регистру
-----------------------------------------------------------------------------------------------
v2.16:
usd.setcookie('cookies' [, mode])
Settings['<misc>'].subdirs
Исправил getHandler()
20121017:
noFallback в captchas.lua: не вызывать usd.showhawindow() для ручного ввода капчи
getLstInfo()
setPusdName(name) - нужно Number of retries before rotation = 0 или >= 3
getResumeFlag()
fixOSfullName, getLstInfoPause, getResumeFlagLimit в конфиге
modqueryPause минимум 3 секунды
fileSize(filename)
tableUpdate(base, new)
querySolvemedia(key, timeout, manual, host, noUniversal, check)
В captchas.lua в качестве типа можно указывать хост, он приоритетней.
--
querySolvemedia(key [, timeout [, manual [, host [, noUniversal [, check]]]]])
-----------------------------------------------------------------------------------------------
v2.17:
В usd.get(), usd.head() и usd.post() удаляются из ссылки символы меньше пробела, иначе получается кривой запрос.
entityDecode(str)
Переименовал tableUpdate() в tableCombine()
Подпилил Form.parse()
20121114:
Исправил Form:submit() для GET запросов.
20121122:
URI, URI.parse(uri), URI.combine(base, relative), URI.simplify(path)
getHost(url [, isHost])
escapeU(str)
Settings['<misc>'].saveCookiesTo
20121124:
Интервал между запросами рекапчи не меньше 10 секунд.
replaceVars(str)
20121125:
getLstInfo() возвращает false вместо пустых строк
getMirror() не возвращает начальную ссылку зеркала (теперь не надо самому вызывать OnSucces для нее), если не получилось найти зеркало, то возвращает false, ошибку и таблицу неподдерживаемых зеркал.
20121206:
parseJsObject() теперь должна пропускать комментарии
Исправил setPusdName(), getResumeFlag()
fileRead()
Settings['<misc>'].extDownloader - автоматически устанавливается в true, если DoWithLink в .ini не равно 0; setPusdName() при этом отключается (сразу возвращает false).
--
queryAdsCaptcha(url [, timeout [, manual [, host [, noUniversal]]]] )
-----------------------------------------------------------------------------------------------
v2.18:
os.setlocale("") -- "Russian_Russia.1251" для русской винды; должно работать: plg.msg(('TEST ТеСт'):lower())
plg.recode() поддерживает CP_WINUNICODE
plg.lowerW(utf16le)
URI.parse(url [, codePage]) конвертирует хост в Punicode, а путь - в UTF-8
URI.recode(url [, codePage])
getHost(url [, isHost [, codePage]])
Исправил setXHR() при пустых куках.
Псевдосвойство path для объектов URI
min и max в captchas.lua
v2.18.22:
openssl
Подпилил entityDecode
base64.lua поддерживает декодирование RFC3548 4
убрал fixOSfullName - теперь всегда включено
v2.18-23:
Исправил addNewName()
v2.18-24:
ltn12ce вместо openssl
v2.18-25:
Теперь os.setlocale("C") вместо os.setlocale("") - из-за проблемы с десятичным разделителем.
Form.parse() понимает button
tableKeys()
randomString(Length [, CharSet]) http://lua-users.org/wiki/RandomStrings
v2.18-26:
Исправил tableKeys() - теперь значения равны ключам.
-----------------------------------------------------------------------------------------------
v2.19-27:
usd.ini
plg.pbstyle()
plg.pbmsg()
plg.statusbar()
Form.parse() убирает начальные и конечные пробелы в action
usd.pictoarr()
usd.arrtopic()
v2.19-29:
setHeader() понимает таблицы с заголовками
Settings['<misc>'].crutchHttp  -- если скачивается мусор вместо страниц
-----------------------------------------------------------------------------------------------
v2.20-30:
plg.filesize()
tableConcat()
fileWrite(), fileAppend()
setPusdName() вторым значением возвращает результат getLstInfo()
getResumeFlag([lstInfo])
Костыль против файлов >=2GB (работает плохо)
-----------------------------------------------------------------------------------------------
v2.21-31:
Исправил plg.recode(), plg.lowerW()
struct
tableGetKeys(tbl)
tableGetValues(tbl)
tryDl(), trySubmit() - strgood и strbad могут быть таблицами со строками
trim(str)
fileRename() не учитывает регистр символов.
addnewName() кодирует проценты ("%25")
исправил setHeader()
-----------------------------------------------------------------------------------------------
v2.22-32:
Исправил plg.lowerW()
Settings['<misc>'].tempDir
v2.22-33-1:
LPeg v0.12
getLstInfo([useCache])
filterName(str [, noSpaces])
parseJsObject() возвращает все найденные объекты
Form.parse() возвращает все найденные формы
-----------------------------------------------------------------------------------------------
v2.23-34-2:
Обновил lua5.1.dll (tonumber из 5.2.3)
Исправил plg.recode(), plg.lowerW(), getLstInfo()
split(str, separator)
splitKV(str, sepKV, sepP)
shitFlare(url [, data])
evalExp(str)
urlGet(url [, data])
urlHead(url [, referer [, tries]])
v2.23-35-3:
Исправил Form.parse(), PlgOnCheck(), urlHead(), urlGet()
Убрал Form:getseparator() - теперь всегда "&"
fileRename(), addNewName(): fext, newExt = -1
escapeU() и escapeUC() кодируют "'"
unescapeJS(str [, recode])
split(str, separator [, func])
splitKV(str, sepKV, sepP [, func])
getHost(url [, isHost [, codePage [, level]]])
minMax(min, max, value)
-----------------------------------------------------------------------------------------------
v2.24-36-3:
Улучшена стабильность (перезапуск после замены первой ссылки при закачке).
queryReCaptcha() reload
serialize(tbl [, allowdupes [, pretty [, useToString]]])
serializeMirrors(tbl [, skipCheck])
plg.resolve(hostname)
Исправил tableKeys()
-----------------------------------------------------------------------------------------------
v2.25-37-4:
Исправил чтение таймштампов.
plg.msg('message' [, uType [, caption]]) - теперь модальное окно.
Исправил URI.combine()
queryReCaptcha() form
querySolvemedia() form, referer
urlGet() возвращает страницу вторым значением, headCheck может быть функцией
-----------------------------------------------------------------------------------------------
v2.26-39-4:
Обновил lua5.1.dll (math.random из 5.2.3: теперь не дает отрицательные числа из-за переполнения, но предел +- 0xffffffff из-за MSVC6)
parseJsObject() возвращает все найденные объекты (в v2.22-33-1 забыл обновить, хе-хе)
v2.26-40-4:
serialize() отбрасывала дробную часть чисел *facepalm*
-----------------------------------------------------------------------------------------------
v2.27-41-5:
Исправил parseJsObject(), URI.simplify(), tableKeys()
delJsComments(str)
uppodDecode(str [, data])
tableCompare(table1, table2)
tableContains(tbl, val1 [, val2 ...])
Cache
v2.27-42-5:
Исправил delJsComments()
v2.27-43-6:
Form.parse() возвращает текст формы в поле html
queryReCaptcha(), queryReCaptcha(): если не задан host, то он вытаскивается из form.action
queryCaptcha(): если не задан host, то он вытаскивается из ссылки на капчу
v2.27-44-7:
Cache.set(): maxAge
form.referer
queryReCaptcha2()
parseHeaders()
Исправил PlgOnSuccess
-----------------------------------------------------------------------------------------------
v2.28-45-8:
Теперь при 'You need wait 123 seconds' плагин возвращает ошибку с таймаутом, а не вызывает usd.waittime().
parseHeaders(): SIZE, SIZEPART, LOCATION1, TYPE
trim(str [, charset])
randomPairs(tbl)
-----------------------------------------------------------------------------------------------
v2.29-46-9:
tableReverse(tbl)
Исправил частую перезапись .storage
queryReCaptcha() - исправил получение ключа из формы
v2.29-47-10:
parseHeaders(): TYPECP
Исправил queryReCaptcha2(), URI.combine()
pad2()
v2.29-48-11:
queryAdverigo()
parseHeaders() теперь удаляет из TYPE лишние ';'
fileRead(fname [, maxSize])
getProperExt(filename [, mode])
getLstInfo(): теперь в конце saveto всегда обратный слэш
v2.29-49-12:
URI.parse(): перед парсингом заменяет "http://https.." на "https://"
urlGet(): headers, binary, gzip, https='Proxomitron'
parseHeaders(): Если строки с заголовками нет, то вызывает usd.getheaders(); заменяет в LOCATION "http://https.." на "https://"
Settings['<misc>']: crutchHttpMode, needCrutch
escapeLua()
shitCapsula()
Обновил getProperExt(), queryCaptchaOCR()
v2.29-50-12:
getProperExt(): исправил неправильное определение tif
Заменил base64.lua на base64.dll: вместо "base64.enc()" и "base64.dec()" следует использовать "base64.encode()" и "base64.decode()"
unescapeJS(): теперь не тормозит parseJsObject(), хе-хе
getLstInfo(): size и state теперь числа
-----------------------------------------------------------------------------------------------
v2.30-51-12:
Обновил base64.dll
Переделал unescapeJS()
plg.exec(): может прибивать процесс по таймауту
captchas.lua: timeout
v2.30-52-12:
queryCaptchaOCR(): исправил ожидание завершения распознавалки
v2.30-53-12:
Исправил queryCaptchaOCR()
v2.30-54-13:
PlgOnSuccess(): OCheaders
unescapeJS(): octal escapes "\123"
numBase()
chunkedDownload()
getResumeFlag([lstInfo [, setRange]])
setPusdName(name [, lstInfo])
Form.parse(form [, baseUrl])
s2hms()
Timeout
Исправил escapeLua(s,encode), queryCaptchaOCR()
v2.30-55-14:
Исправил delJsComments() и parseJsObject() - теперь не жрет память при парсинге больших объектов
Исправил parseHeaders()
Максимум 6 уровней вложенности для getMirror()
filterUtf8(str)
v2.30-56-14:
Исправил unescapeJS(), parseHeaders()
v2.30-57-15:
Исправил getHandler()
numBase() конвертит строки в числа
convertGif()
Settings['<userGDLinit>']()
-----------------------------------------------------------------------------------------------
v2.31-58-16:
parseJsObject(): не работали noNumKeys и noNumVals
getMirror(mirrors [, data]) - новый синтаксис
URI.parse(): p, q
URI.combine('http://www.ru/?a=b','?')() -- 'http://www.ru/'
Сделал получение бинарников через usd.get() и usd.post() (в PlgCallBack передается паскалевская строка).
Исправил convertGif()
Исправил вызов OnSuccess() для зеркал
Form: исправил getinputs(), escape() для 'multipart/form-data'
urlGet(): gzip, json, logpref, fixCookies
regDirSuccess(urlPart, fnDirLink, fnOnSuccess, fnSkipUrl)
v2.31-60-17:
os.setlocale("", 'ctype') -- на десятичный разделитель не влияет
Form:setinputs(tbl [, remove])
URI.parse() эскейпит пробелы
Settings['<rename>']()
iPattern(), iFind(), iGmatch(), iGsub(), iMatch()
escapeLua(): не обрабатывала '?'; теперь не трогает обратные слэши
chunkedDownload(): saveTo, status
pad(): right
getMirror(): inherit
-----------------------------------------------------------------------------------------------
v2.32-61-18:
queryReCaptcha2(): JS
chunkedDownload(): https
delJsComments(str [, noRegexps])
plg.recode(): исправил прекодировку из UTF-8 в UTF-16 (возвращалась строка вдвое больше)
Исправил Punycode
v2.32-62-18:
Исправил получение длины пути для сохранения (из .ini), по умолчанию 64
v2.32-63-19:
serialize(): useToString теперь всегда true
Поддержка 9kw.eu
captchas.lua: ocrCmd модет быть функцией
chunkedDownload(): url может быть функцией
tableConcat(): делает строки из true/false
Исправил вызов OnSuccess для мультиаплоадеров (getMirror).
v2.32-64-20:
Form.parse(): пропускались инпуты с подчеркиваниями в именах атрибутов
Исправл filterName()
v2.32-65-20:
urlGet(): https - false/nil/'proxomitron'
getLstInfo(): удаляет плюсы из localfile
URI.combine(): была всегда пустая таблица p
convertGif(): пропускает статичные картинки
ROT13(), ROT47()
queryReCaptcha2(): slimerjs
v2.32-66-20:
Form.parse(): исправил парсинг чекбоксов
chunkedDownload(): onlyFirst
v2.32-67-21:
Dialog:addrow(): теперь удваивает "&" только для label и checkbox
queryReCaptcha(): исправил получение ключа из формы
Вернул Form:getseparator()
split(): вызывает func при пустом разделителе
Исправил getIP()
v2.32-68-22:
getIP('setIP', currentIP)
regDirSuccess(urlPart, fnDirLink, fnOnSuccess, data)
Исправил convertGif()
Settings['<getMirror>'].allowRecoded
isBadExt(filename)
urlGet(): xhr
v2.32-69-23:
Исправил convertGif(), fileRename(), поддержку внешних качалок.
v2.32-70-23:
Исправил convertGif(), filterName(), Cache.get(), Cache.set(), isBadExt()
urlHead(), urlGet(): по умолчанию пустой реферер
v2.32-71-24:
Исправил URI.recode()
chunkedDownload(), urlGet(), urlHead() - теперь https по умолчанию true
urlGet() по умолчанию сохраняет страницы
v2.32-72-24:
Исправил getLogPref()
-----------------------------------------------------------------------------------------------
v2.33-73-24:
Распознавание recaptcha2 через 9kw.eu
Исправил URI.parse()
usd.getheaders() и usd.getlocation() заменяют 'http://https..' на 'https://'
urlGet(): json может быть таблицей
urlGet(), urlHead(): если вместо ссылки передан объект URI, то вызывают __tostring()
v2.33-74-24:
chunkedDownload() не качала с https
Form.parse(): если в action нет "://" и не задан baseUrl, то комбинирует с usd.getlocation(); заменяет в action 'https://' на 'http://https..'
Исправил GDLinit()
v2.33-75-25:
Исправил debugResolve(), shitFlare()
v2.34-77-26:
Исправил tableField()
-----------------------------------------------------------------------------------------------
v2.34-76-26:
Captchas['reCaptcha2'].noscriptFirst
plg.updatestorage()
chunkedDownload(): buffer; обрезает длинные имена
tableField()
v2.34-77-26:
Исправил tableField()
v2.34-78-26:
Исправил chunkedDownload()
v2.34-79-26:
Form.parse(): декодирование action и значений инпутов через entityDecode()
Исправил определение внешней качалки.
v2.34-80-26:
utf8Codes()
fixCookies([new], [remove])
Исправил queryReCaptcha()
Settings['<misc>'].savePathLength
-----------------------------------------------------------------------------------------------
v2.35-81-26:
Выкинул crutchHttp - нужен патченный usdownloader.exe
getUrlInfo(url [, ref])
urlGet(): form, submit, запрашивает следующую ссылку методом GET только если код ответа не 307 или 308
Form.parse(): someinput[]
parseHeaders(): names
trim() удаляет nbsp
Исправил URI.parse()
-----------------------------------------------------------------------------------------------
v2.36-82-26:
plg.lstinfo([index])
getLstInfo(): результат больше не кэшируется - незачем.
getResumeFlag(): убрал setRange
Settings['<misc>']: выкинул getLstInfoPause и savePathLength
-----------------------------------------------------------------------------------------------
v2.37-83-26:
plg.useragent()
plg.accept()
plg.setdescription()
urlGet() accept
addNewName() эскейпит '#'
v2.37-84-27:
filterUtf8() вызывает trim
urlGet(): pattern, agent, logtext
queryReCaptcha() теперь вызывает ошибку
Исправил shitFlare()
v2.37-85-28:
Исправил urlGet()
Выкинул queryAdverigo(), queryAdsCaptcha()
-----------------------------------------------------------------------------------------------
v2.38-86-28:
plg.contenttypepost()
urlGet(): type, post может быть таблицей
Заменил convertGif() пустышкой.
getLstInfo([getSizeFromLst])
-----------------------------------------------------------------------------------------------
v2.39-87-29:
Скачанным файлам автоматически ставится таймштамп из заголовка Last-Modified.
plg.setfiletime(fileName, year, month, day, hours, minute, second [, milliseconds])
isSubdomain(list, domain)
URI.combine(base, relative [, codePage [, keepUiFr]])
queryReCaptcha2(): nwjs
-----------------------------------------------------------------------------------------------
v2.40-88-30:
Обновил lua5.1.dll - теперь работает file:seek() за пределом 2GB (раньше только чтение проверял, хе-хе)
plg.getreferer()
plg.setlocation(newlocation)
-----------------------------------------------------------------------------------------------
v2.41-89-30:
Функции скачивания капчи сохраняют-восстанавливают реферер и location.
plg.getreferer() возвращает пустую строку вместо nil
plg.setlocation() принимает пустую строку
-----------------------------------------------------------------------------------------------
v2.42-90-31:
usd.setreferer() и plg.getreferer() заменяют 'http://https..' на 'https://'
Settings['<misc>'].createEmptyPusd
setRange0()
Исправил queryReCaptcha2(), Cache.get()
urlGet(): если json - строка, то используется как pattern
v2.42-91-31:
urlGet() восстанавливает location после записи html
v2.42-92-31:
getMirror() возвращает таблицу с ошибками.
Исправил определение внешней качалки.
v2.42-93-32:
addNewName() эскейпит '[',']'
utf8ToAnsi(str): ё, й с отвалившейся диакритикой
trim(): убрал неразрывный пробел из дефолтного чарсета - портилась русская "Р" в utf-8.
parseJsObject(): entity
createPusd([name], [content])
Автоматическое перекодирование юникодных имен.
Исправил shitFlare()
Form.make(): referer
setHeader(): теперь работает через plg.accept()
urlGet(): gzip всегда добавляет заголовок
-----------------------------------------------------------------------------------------------
v2.43-94-32:
plg.addquery()
plg.defaultsaveto()
filterPath(()
utf8ToAnsi() преобразовывает число в строку
serialize(): ['ключи'] из списка зарезервированных слов
-----------------------------------------------------------------------------------------------
v2.44-95-33:
tableSwap(tbl)
plg.connecttimeout()
plg.readtimeout()
plg.downloadattempts()
isSubdomain() возвращает ключ или false
setPusdName() меняла регистр пути
regDirSuccess() - теперь хост вместо подстроки
v2.44-96-33:
Поиск обработчиков OnError и OnCheck по подстрокам
-----------------------------------------------------------------------------------------------
v2.45-97-34:
Settings['<misc>'].updateSuported
isForm(form)
Form.parse(): теперь baseUrl может быть относительным - комбинируется с usd.getlocation()
querySolvemedia() - исправил получение ключа из формы
setWaitOnError()
queryCaptchaOCR() поддерживает svg
v2.45-98-34:
chunkedDownload() и urlHead() делают вторую попытку после 502 Cannot Connect
v2.45-99-35:
urlHead(): относительные ссылки
исправил parseHeaders()
v2.45-100-36:
shitFlare(): referer
Исправил setRange0()
-----------------------------------------------------------------------------------------------
v2.46-101-36:
Перенес настройки USD в Settings['<USD>']
urlGet(): теперь не распаковывает gzip после таймаута (при неполном гзипе приводило к зависанию USD)
plg.dowithlink()
plg.runlink()
 
 
Для интересующихся скриптами:  
В качестве редактора можно использовать http://code.google.com/p/scite-ru/ (впрочем у меня Far+Colorer) ; я взял там справочник, выкинул из стилей дурацкий италик и заменил курьер на Andale Mono: http://mir.cr/BN5BWOPP (было, стало)
 
Участки кода можно проверять тут: http://www.lua.org/cgi-bin/demo
 
http://ru.wikipedia.org/wiki/Lua
http://www.lua.org/faq.html
http://www.luafaq.org/gotchas.html
http://lua-users.org/wiki/LuaFaq
http://www.lua.ru/
http://itcs.3dn.ru/publ/programmirovanie/lua_dlja_igr_i_ne_tolko_chast_1/8-1-0-63
 
 
Proxomitron Naoko 4.5 (2003-6-1)
Патчи: http://www.prxbx.com/forums/showthread.php?tid=2179&pid=18016#pid18016
http://mir.cr/0R2O3CI9 Proxomitron-OpenSSL-cert_error-fuck_sni.zip
 
https://www.upload.ee/files/11004490/USDownloader_exe_patched_20200120.zip.html - патч против doctype, редиректов и прочего

Всего записей: 2282 | Зарегистр. 09-09-2006 | Отправлено: 12:11 11-12-2016 | Исправлено: Alex_Qwerty, 11:55 20-01-2020
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Программы » Universal Share Downloader | USD (часть 2)
gyra (21-01-2020 21:44): Universal Share Downloader | USD (часть 3)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru