Добавлено: Ср ноя 14, 2012 22:26
пробую: не нравиться скрипту- строка 16 символ61. Если конечно все правильно сделано.
Форум поддержки пользователей Total Commander
https://forum.wincmd.ru/
Конечно проверял и так - ошибка стока 18 символ 7Под "перед" имелось в виду "над".
И нужно задать имя файла в зависимости от <title>. Что нужно изменить в скрипте из данной темы??? Заранее спасибо.<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "....://....../TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="....3.org/1999/xhtml" lang="ru-RU">
<head profile="....org/xfn/11">
<title>курсы по фотографии | Пиктурист</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta name="description" content="Лучший сборник самых интересных фото" />
<meta name="generator" content="....." /><!-- Please leave for stats -->
и т.д....
</body>
</html>
Код: Выделить всё
'============================================================
' Заменить базовые имена выбранных htm(l)-файлов на заголовки
' Параметр: %WL
'============================================================
If WScript.Arguments.Count = 0 Then WScript.Quit
Set HTML = CreateObject("htmlfile")
S = Split(""" | : ; \ / < > ?") : R = Split("''|-|,| -|_|_|-|-| ","|")
With CreateObject("Scripting.FileSystemObject")
Set List = .OpenTextFile(WScript.Arguments(0),,,-1)
Do : F = List.ReadLine
If .FileExists(F) Then
Ext = .GetExtensionName(F)
If InStr("html|hta", Ext) Then
HTML.Open : HTML.Write .OpenTextFile(F,,,-2).ReadAll
Title = "" : Title = Trim(HTML.Title)
If Title <> "" Then
For i = 0 To 8 : Title = Replace(Title, S(i), R(i)) : Next
Name = Title & "." & Ext : Path = .GetParentFolderName(F) & "\"
If Len(Path & Name) > 259 Then Name = Left(Title, 258 - Len(Path) - Len(Ext)) & "." & Ext
If Not .FileExists(Path & Name) Then .GetFile(F).Name = Name
HTML.Clear : HTML.Close
End If
End If
End If
Loop Until List.AtEndOfStream
End With : CreateObject("WScript.Shell").SendKeys "^R"