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

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

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

Widok (30-01-2009 12:01): лимит страниц. продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

KAO1



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

1. Копируем программный текст в файл с расширением wsh (например sort.wsh)
2. Выделяем список ссылок в USD (Ctrl-A)
3. Копируем в буфер обмена (Ctrl-C)
4. Вставляем в текстовый файл (например link.txt).
5. Запускаем скрипт: sort.wsh link.txt
6. Открываем файл link.txt с измененной последовательностью ссылок.
7. Вставляем новый список в USD
 
Минус: поскольку копируется только список ссылок - описания ссылок сохранены не будут.  
 

Код:
<?xml version="1.0" ?>
<package>
<!-- version 1.0 081022 -->
<job id="SortUSD" prompt="no">
<?job error="false" debug="false" ?>
<runtime>
<description>
(c) KAO akrutskikh@hotmail.ru
version 1.0 - 081022
</description>
<unnamed helpstring="file with list of links" name="FILENAME" required="true" many="false"/>
</runtime>
<script id="vb01" language="VBScript">
<![CDATA[
Function GetID(link)
GetID = RegExpAddr(trim(link))
End Function
 
Function FindOth(arrFileLines, startLine, cID)
For m = startLine to UBound(arrFileLines,2) Step 1
    nID = arrFileLines(1,m)
    if cID <> nID then
        FindOth = m
        Exit Function
    end if    
Next
FindOth = -1
End Function
 
Function RegExpAddr(strng)
   Dim regEx, Match, Matches, patrn   ' Create variable.
 
   On Error Resume Next
 
   patrn = "^(?:(?:https?|ftp|telnet)://(?:[a-z0-9_-]{1,32}(?::[a-z0-9_-]{1,32})?@)?)?(?:(?:[a-z0-9-]{1,128}\.)*([a-z0-9-]{1,128})\.+(?:com|net|org|mil|edu|arpa|gov|biz|info|aero|inc|name|[a-z]{2})|(?!0)((?:(?!0[^.]|255)[0-9]{1,3}\.){3}(?!0|255)[0-9]{1,3}))(?:/).*?"
 
   Set regEx = New RegExp   ' Create a regular expression.
   regEx.Pattern = patrn   ' Set pattern.
   regEx.IgnoreCase = True   ' Set case insensitivity.
   regEx.Global = True   ' Set global applicability.
   Set Matches = regEx.Execute(strng)   ' Execute search.
   Set Match = Matches(0)
   RetStr = Match.SubMatches(0) & Match.SubMatches(1)
   RegExpAddr = RetStr
End Function
 
]]>
</script>
<script id="StartSection" language="VBScript">
<![CDATA[
if(WScript.Arguments.Unnamed.length=0) then
  WScript.Arguments.ShowUsage()
  WScript.Quit()
end if
 
ReDim arrFileLines(1,0)
i = 0
 
fn = WScript.Arguments.Unnamed(0)
fo = fn & ".cpy"
 
Set objFSO = CreateObject("Scripting.FileSystemObject")
if objFSO.FileExists(fo) then  
    objFSO.DeleteFile  fo, true
end if
objFSO.MoveFile fn, fo
 
Set objFile = objFSO.OpenTextFile(fo, 1, False, TristateUseDefault)
 
Do Until objFile.AtEndOfStream
     Redim Preserve arrFileLines(1,i)
     ln = objFile.ReadLine
     arrFileLines(0,i) = ln
     arrFileLines(1,i) = GetID(ln)
     'Wscript.Echo " !!! " & arrFileLines(0,i)
     i = i + 1
Loop
 
objFile.Close
 
Set objFile = objFSO.OpenTextFile(fn, 2,True,TristateUseDefault)
 
objFile.WriteLine arrFileLines(0,LBound(arrFileLines,2))
ID = arrFileLines(1,LBound(arrFileLines,2))
 
For l = LBound(arrFileLines,2)+1 to UBound(arrFileLines,2) Step 1
    nl = FindOth(arrFileLines, l, ID)
    if nl>=0 and nl<>l then ' trim string
       t = arrFileLines(0,l)  
       arrFileLines(0,l) = arrFileLines(0,nl)  
       arrFileLines(0,nl) = t
       t = arrFileLines(1,l)  
       arrFileLines(1,l) = arrFileLines(1,nl)  
       arrFileLines(1,nl) = t
    end if
    ID = arrFileLines(1,l)
    objFile.WriteLine arrFileLines(0,l)
Next
 
objFile.Close
 
'MsgBox(RegExpAddr("rapidshare.com/"))
 
WScript.Quit()
]]>
</script>
</job>
</package>
 
    

Всего записей: 43 | Зарегистр. 25-12-2001 | Отправлено: 21:15 22-10-2008 | Исправлено: KAO1, 21:26 22-10-2008
   

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

Компьютерный форум Ru.Board » Компьютеры » Программы » Universal Share Downloader (USD)
Widok (30-01-2009 12:01): лимит страниц. продолжаем здесь


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru