#NoEnv #NoTrayIcon SetWorkingDir %A_ScriptDir% #SingleInstance, force SendMode Input CoordMode ToolTip SetTitleMatchMode, 2 SetTitleMatchMode, Slow /* При компиляции 7za.exe должен находиться в папке скрипта! Файл maff.ini: [Main] path = ; путь к недефолтному браузеру для открытия maff-файлов url_display = 0 ; отображение url источника, зашитого в maff-файл: 1 - в адресной строке браузера, 2 - адрес копируется в буфер, 0 - выключение функции (при выборе "1" и многостраничном файле происходит копирование списка url в буфер!) */ FileInstall 7za.exe, 7za.exe, 1 path=%2% If !path && FileExist("maff.ini") IniRead path, maff.ini, Main, path extract_path:=A_Temp "\" A_Now FileCreateDir % extract_path RunWait 7za.exe x "%1%" -o"%extract_path%", , Min Loop % extract_path "\*index.html", , 1 { Run % (path ? """" . path . """" " " : "") . A_LoopFileFullPath rdf:=RegExReplace(A_LoopFileFullPath,"html?$","rdf") FileEncoding UTF-8-RAW FileRead meta, % rdf RegExMatch(meta,"originalurl RDF:resource=""\K.\S+(?=""/>)",url) RegExMatch(meta,"title RDF:resource=""\K.*?(?=""/>)",title) url_list.=url "`r`n" count+=1 If (A_Index=1) WinWaitActive % title, , 20 Sleep 200 } If FileExist("maff.ini") IniRead url_display, maff.ini, Main, url_display If (url_display=2) || ((url_display=1) && (count>1)) Clipboard:=RegExReplace(url_list,"\r\n$") If (url_display=1) && (count=1) { StringLeft title, title, 50 WinWaitActive % title, , 10 If Errorlevel goto End Sleep 1000 Send ^{vk4C} Sleep 300 Send {Del} Send % url } End: If A_IsCompiled FileDelete 7za.exe ExitApp |