Heute bin ich im englischen Forum über ein Script gestolpert, das dort das erste Script der aktuellen Seite speichert (und sonst noch was macht ... um die 150 Zeilen rum)
Habe das Ganze mal etwas einfacher für das Forum hier und den FireFox gemacht:
Spoiler anzeigen
; by Stilgar
; Thu Apr 09 12:59:26 CEST 2009 @499 /Internet Time/
#region Includes
#include <FF.au3>
#endregion Includes
Global $sBaseDir = "C:\Scripte von Autoit.de\"
[/autoit] [autoit][/autoit] [autoit]; e.g. C:\Scripte von Autoit.de\
; Titel\
; Nach drücken von STRG(rechts) eine bestimmte Mausposition anklicken - Hilfe Unterstützung\
; Seite_Function_Nr.au3
; 1_Function_1.au3
; ...
; 1_Function_14.au3
_FFConnect()
[/autoit] [autoit][/autoit] [autoit]If _FFIsConnected() Then
Global $sTitle = _FFCmd(".title")
$sTitle = StringMid($sTitle,1,StringInStr($sTitle,"- .:")-1)
Global $sHref = _FFCmd(".location.href")
Else
Exit
EndIf
Global $aCode = _GetData()
If Not @error Then
_Data2ClipBoard($sTitle, $sHref, $aCode)
_WriteData($sBaseDir, $sTitle, $sHref, $aCode)
EndIf
Exit
;===============================================================================
Func _GetData()
Local $aTmp[1]
If _FFIsConnected() Then
$aTmp = _FFXPath("//td[@class='codeLines' and position()=2]//pre","textcontent",7)
If Not @error And $aTmp[0] > 0 Then
Return $aTmp
Else
SetError(1)
Return $aTmp
EndIf
EndIf
SetError(1)
Return $aTmp
EndFunc
;===============================================================================
Func _Data2ClipBoard(ByRef $sTitle, ByRef $sHref, ByRef $aCode)
Local $sString = "; " & $sTitle & @crlf
$sString &= "; " & $sHref & @crlf
$sString &= "; ###################################################################" & @crlf & @crlf
For $i = 1 To $aCode[0]
$sString &= $aCode[$i] & @crlf & "; ===================================================================" & @crlf
Next
ClipPut($sString)
EndFunc
;===============================================================================
Func _WriteData(ByRef $sBaseDir, ByRef $sTitle, ByRef $sHref, ByRef $aCode)
If Not FileExists($sBaseDir) Then DirCreate($sBaseDir)
$sTitle = StringRegExpReplace($sTitle,"[\\&/:\?\*~]"," ") ; Sonderzeichen filtern
$sTitle = StringRegExpReplace($sTitle,"\[.*?\]","") ; offen, gelöst ...
$sTitle = StringStripWS($sTitle,7) ; Leerzeichen filtern
If Not FileExists($sBaseDir & $sTitle) Then DirCreate($sBaseDir & $sTitle)
[/autoit] [autoit][/autoit] [autoit]Local $sPage = StringMid($sHref,StringInStr($sHref,"pageNo=")+7) ; Seitenzahl
If StringLen($sPage) > 3 Then
$sPage = "1_"
Else
$sPage &= "_"
EndIf
For $i = 1 To $aCode[0]
$hFile = FileOpen($sBaseDir & $sTitle & "\" & $sPage & "Function_" & $i & '.au3',1)
If $hFile <> -1 Then
FileWriteLine($hFile, "; " & $sTitle)
FileWriteLine($hFile, "; " & $sHref)
FileWrite($hFile, $aCode[$i] )
FileClose($hFile)
EndIf
NExt
EndFunc
Es kopiert einfach den Thread Titel, die URL und alle Scripte der aktuellen Seite ins Clipboard und in bestimmtes Verzeichnis, dessen Struktur folgendermaßen erstellt wird:
$sBaseDir\Titel\ Seite_Function_Nr.au3
in jede Datei wird noch zusätzlich der Titel und URL geschrieben.
Grüße
Stilgar
[EDIT]
Wieder gefunden ...
Das war die Vorlage für die Idee:
http://www.autoitscript.com/forum/index.php?showtopic=92646