Änderungen

Spring zu: Navigation, suche

Benutzer:TextsucheBot/Code/aktuell

5.231 Bytes hinzugefügt, 20:37, 15. Nov. 2014
K
V 1.0.3
<pre><nowiki>
@echo off
set VERSION=1.0.23:: kombiniere Namensraum und Kategorie / Suchstring in Seitentitel / Abfragen ob Browser & Ende / -ref deaktiviert / header
:: Dieses Programm steht unter der CC-BY-NC-Lizenz 2.0
mode con lines=30 cols=80
:home
clsecho.echo ╔════════════════════════════════════════════════════╗echo ║ Textsuche in der Memory Alpha mit dem TextsucheBot ║echo ╚════════════════════════════════════════════════════╝echo.call :header
echo [1] Suche in einer Kategorie
echo [2] Suche in einer Kategorie und all ihren Unterkategorien
echo Falsche Eingabe. Bitte gib eine Zahl zwischen 1 und 9 ein.
echo.
set /p ENDE=Drücke Drcke "Eingabe" um zum Startbildschirm zu gehen...
goto home
:Suche_cat
:: Erfrage die zu durchsuchende Kategorie
call :headerset /p KATEGORIE="Gib eine Kategorie ein, in der gesucht werden soll. Z.B. "Bild (Person)" (ohne AnführungszeichenAnfhrungszeichen): "set NS-ERR=0:Suche_cat_setNScall :headerecho -^> Es wird gesucht in der Kategorie: %KATEGORIE%:: Erfrage NAMENSRAUMecho.echo Soll die Suche auf einen bestimmten Namensraum begrenzt werden? Gib einen Namensraum ein, auf den die Suche eingeschr„nkt werden soll:echo.echo [0] ALLE Namensr„umeecho. echo [1] Artikelnamensraum [6] Vorlageecho [2] Datei [7] Hilfeecho [3] Benutzer [8] Kategorieecho [4] Memory Alpha [9] Portalecho [5] MediaWiki [10] Forumecho.if %NS-ERR%==0 goto Suche_cat_setNS_ERR1echo Falsche Eingabe. Bitte gib eine Zahl zwischen 0 und 10 ein.echo.:Suche_cat_setNS_ERR1set /p ns="Bitte Auswahl eingeben: "clsif %ns% LEQ 10 goto Suche_cat_setNS_ERRset NS-ERR=1goto Suche_cat_setNS:Suche_cat_setNS_ERRcall :headerecho -^> Es wird gesucht in der Kategorie:%KATEGORIE%if %ns%==1 set NAMENSRAUM=0if %ns%==2 set NAMENSRAUM=6if %ns%==3 set NAMENSRAUM=2if %ns%==4 set NAMENSRAUM=4if %ns%==5 set NAMENSRAUM=8if %ns%==6 set NAMENSRAUM=10if %ns%==7 set NAMENSRAUM=12if %ns%==8 set NAMENSRAUM=14if %ns%==9 set NAMENSRAUM=102if %ns%==10 set NAMENSRAUM=110if %ns%==1 set NAMENSRAUMNAME=Artikelnamensraumif %ns%==2 set NAMENSRAUMNAME=Dateiif %ns%==3 set NAMENSRAUMNAME=Benutzerif %ns%==4 set NAMENSRAUMNAME=Memory_Alphaif %ns%==5 set NAMENSRAUMNAME=MediaWikiif %ns%==6 set NAMENSRAUMNAME=Vorlageif %ns%==7 set NAMENSRAUMNAME=Hilfeif %ns%==8 set NAMENSRAUMNAME=Kategorieif %ns%==9 set NAMENSRAUMNAME=Portalif %ns%==10 set NAMENSRAUMNAME=Forumecho -^> Es wird gesucht im Namensraum: %NAMENSRAUMNAME% (NS %NAMENSRAUM%)echo.:: Setz Namen die Zieldatei f├╝r für die Suchergebnisse
set DATEINAME=%DATETIME%
echo.
:: Erfrage den Such-String
set /p SUCHSTRING="Gib den Text ein, nach dem gesucht werden soll. Z.B. "Name=Data" (ohne AnführungszeichenAnfhrungszeichen): "call :headerecho -^> Es wird gesucht in der Kategorie: %KATEGORIE%echo -^> Es wird gesucht im Namensraum: %NAMENSRAUMNAME% (NS %NAMENSRAUM%)echo -^> Es wird gesucht nach dem String: %SUCHSTRING%
if %ns%==0 goto Suche_cat_AllNSecho.:: Starte Suchein NSprg\pp.exe prg\pwb\find.py -cat:"%KATEGORIE%" -dateiname:"%DATEINAME%.txt" "%SUCHSTRING%" "###" -ns:%NAMENSRAUM%goto Suche_cat_exec:Suche_cat_AllNS:: Starte Suche in allen NS
prg\pp.exe prg\pwb\find.py -cat:"%KATEGORIE%" -dateiname:"%DATEINAME%.txt" "%SUCHSTRING%" "###"
goto Suche_cat_exec :Suche_cat_exececho Es wurde die temporäre tempor„re Datei %DATEINAME%.txt erstellt.echo. ::Ersetze Sonderzeichen in SUCHSTRINGset REPSTRING=%SUCHSTRING%call :replaceset SUCHSTRING=%REPSTRING%
:: Schreibe %ZIELSEITE% in "findupload-title.txt"
echo '''User:TextsucheBot/Suchergebnis/%DATETIME%_%SUCHSTRING%''' > prg\pwb\findupload-title.txt
echo Dies sind die Seiten/Dateien in der [[:Kategorie:%KATEGORIE%]], die den String ^<code^>^<nowiki^>%SUCHSTRING%^</nowiki^>^</code^> enthalten:^<p^> > prg\pwb\findupload-head.txt
:Suche_catr
:: Erfrage die zu durchsuchende Kategorie
call :headerset /p KATEGORIE="Gib eine Kategorie ein, in der gesucht werden soll. Z.B. "Bild (Person)" (ohne AnführungszeichenAnfhrungszeichen): "set NS-ERR=0:Suche_catr_setNScall :headerecho -^> Es wird gesucht in der Kategorie: %KATEGORIE% und deren Unterkategorien:: Erfrage NAMENSRAUMecho.echo Soll die Suche auf einen bestimmten Namensraum begrenzt werden? Gib einen Namensraum ein, auf den die Suche eingeschr„nkt werden soll:echo.echo [0] ALLE Namensr„umeecho. echo [1] Artikelnamensraum [6] Vorlageecho [2] Datei [7] Hilfeecho [3] Benutzer [8] Kategorieecho [4] Memory Alpha [9] Portalecho [5] MediaWiki [10] Forumecho.if %NS-ERR%==0 goto Suche_catr_setNS_ERR1echo Falsche Eingabe. Bitte gib eine Zahl zwischen 0 und 10 ein.echo.:Suche_catr_setNS_ERR1set /p ns="Bitte Auswahl eingeben: "clsif %ns% LEQ 10 goto Suche_catr_setNS_ERRset NS-ERR=1goto Suche_catr_setNS:Suche_catr_setNS_ERRcall :headerecho -^> Es wird gesucht in der Kategorie:%KATEGORIE% und deren Unterkategorienif %ns%==1 set NAMENSRAUM=0if %ns%==2 set NAMENSRAUM=6if %ns%==3 set NAMENSRAUM=2if %ns%==4 set NAMENSRAUM=4if %ns%==5 set NAMENSRAUM=8if %ns%==6 set NAMENSRAUM=10if %ns%==7 set NAMENSRAUM=12if %ns%==8 set NAMENSRAUM=14if %ns%==9 set NAMENSRAUM=102if %ns%==10 set NAMENSRAUM=110if %ns%==1 set NAMENSRAUMNAME=Artikelnamensraumif %ns%==2 set NAMENSRAUMNAME=Dateiif %ns%==3 set NAMENSRAUMNAME=Benutzerif %ns%==4 set NAMENSRAUMNAME=Memory_Alphaif %ns%==5 set NAMENSRAUMNAME=MediaWikiif %ns%==6 set NAMENSRAUMNAME=Vorlageif %ns%==7 set NAMENSRAUMNAME=Hilfeif %ns%==8 set NAMENSRAUMNAME=Kategorieif %ns%==9 set NAMENSRAUMNAME=Portalif %ns%==10 set NAMENSRAUMNAME=Forumecho -^> Es wird gesucht im Namensraum: %NAMENSRAUMNAME% (NS %NAMENSRAUM%)echo.:: Setz Namen die Zieldatei f├╝r für die Suchergebnisse
set DATEINAME=%DATETIME%
echo.
:: Erfrage den Such-String
set /p SUCHSTRING="Gib den Text ein, nach dem gesucht werden soll. Z.B. "Name=Data" (ohne AnführungszeichenAnfhrungszeichen): "call :headerecho -^> Es wird gesucht in der Kategorie: %KATEGORIE% und deren Unterkategorienecho -^> Es wird gesucht im Namensraum: %NAMENSRAUMNAME% (NS %NAMENSRAUM%)echo -^> Es wird gesucht nach dem String: %SUCHSTRING%
if %ns%==0 goto Suche_catr_AllNSecho.:: Starte Suchein NSprg\pp.exe prg\pwb\find.py -catr:"%KATEGORIE%" -dateiname:"%DATEINAME%.txt" "%SUCHSTRING%" "###" -ns:%NAMENSRAUM%goto Suche_catr_exec:Suche_catr_AllNS:: Starte Suche in allen NS
prg\pp.exe prg\pwb\find.py -catr:"%KATEGORIE%" -dateiname:"%DATEINAME%.txt" "%SUCHSTRING%" "###"
goto Suche_catr_exec :Suche_catr_exececho Es wurde die temporäre tempor„re Datei %DATEINAME%.txt erstellt.echo. ::Ersetze Sonderzeichen in SUCHSTRINGset REPSTRING=%SUCHSTRING%call prg\rep.batset SUCHSTRING=%REPSTRING%
:: Schreibe %ZIELSEITE% in "findupload-title.txt"
echo '''User:TextsucheBot/Suchergebnis/%DATETIME%_%SUCHSTRING%''' > prg\pwb\findupload-title.txtecho Dies sind die Seiten/Dateien in der [[:Kategorie:%KATEGORIE%]]und deren Unterkategorien, die den String ^<code^>^<nowiki^>%SUCHSTRING%^</nowiki^>^</code^> enthalten:^<p^> > prg\pwb\findupload-head.txt
echo %DATETIME%: "%SUCHSTRING%" -catr:"%KATEGORIE%" >> TextsucheBot.log
:Suche_ns
:: Erfrage die zu durchsuchende Kategorie
call :header
echo Gib einen Namensraum ein, der durchsucht werden soll:
echo.
echo [1] Artikelnamensraum
echo [2] Dateiecho [3] Benutzerecho [34] Memory Alphaecho [45] MediaWikiecho [56] Vorlageecho [67] Hilfeecho [78] Kategorieecho [89] Portalecho [910] Forum
echo.
set /p ns="Bitte Auswahl eingeben: "
if %ns%==1 set NAMENSRAUM=!0if %ns%==2 set NAMENSRAUM=User:!6if %ns%==3 set NAMENSRAUM=Project:!2if %ns%==4 set NAMENSRAUM=MediaWiki:!4if %ns%==5 set NAMENSRAUM=Vorlage:!8if %ns%==6 set NAMENSRAUM=Hilfe:!10if %ns%==7 set NAMENSRAUM=Kategorie:!12if %ns%==8 set NAMENSRAUM=Portal:!14if %ns%==9 set NAMENSRAUM=Forum:!102if %ns%==10 set NAMENSRAUM=110if %ns%==1 set NAMENSRAUMNAME=Artikelnamensraum:!if %ns%==2 set NAMENSRAUMNAME=Datei:!if %ns%==3 set NAMENSRAUMNAME=Benutzer:!if %ns%==3 4 set NAMENSRAUMNAME=Memory_Alpha:!if %ns%==4 5 set NAMENSRAUMNAME=MediaWiki:!if %ns%==5 6 set NAMENSRAUMNAME=Vorlage:!if %ns%==6 7 set NAMENSRAUMNAME=Hilfe:!if %ns%==7 8 set NAMENSRAUMNAME=Kategorie:!if %ns%==8 9 set NAMENSRAUMNAME=Portal:!if %ns%==9 10 set NAMENSRAUMNAME=Forum:!call :header
echo Es wird gesucht im Namensraum: %NAMENSRAUMNAME%.
:: Setz Setze Namen die Zieldatei fuer die Suchergebnisse
set DATEINAME=%DATETIME%
:: Erfrage den Such-String
echo.set /p SUCHSTRING="Gib den Text ein, nach dem gesucht werden soll. Z.B. "Name=Data" (ohne AnführungszeichenAnfhrungszeichen): "
:: Starte Suche
prg\pp.exe prg\pwb\find.py -start:%NAMENSRAUMNAMENSRAUMNAME% -dateiname:"%DATEINAME%.txt" "%SUCHSTRING%" "###"echo.echo Es wurde die temporäre tempor„re Datei %DATEINAME%.txt erstellt. ::Ersetze Sonderzeichen in SUCHSTRINGset REPSTRING=%SUCHSTRING%call prg\rep.batset SUCHSTRING=%REPSTRING%
:: Schreibe %ZIELSEITE% in "findupload-title.txt"
echo '''User:TextsucheBot/Suchergebnis/%DATETIME%_%SUCHSTRING%''' > prg\pwb\findupload-title.txt
echo Dies sind die Seiten/Dateien im Namensraum %NAMENSRAUMNAME%, die den String ^<code^>^<nowiki^>%SUCHSTRING%^</nowiki^>^</code^> enthalten:^<p^> > prg\pwb\findupload-head.txt
:: ========== Suche Ref ==========
:Suche_ref
echo.
echo Diese Funktion ist derzeit nicht verfgbar.
set /p ENDE=Drcke "Eingabe" um zum Startbildschirm zurckzukehren.
goto home
 
:: Erfrage die Seite, auf die verlinkt wird
call :headerset /p REF-ZIEL="Gib einen Seitentitel ein. Es werden dann alle Seiten durchsucht, die auf diese Seite verlinken. Z.B. "Spock (Spiegeluniversum)" (ohne AnführungszeichenAnfhrungszeichen): "clsecho.
echo Es werden die Seiten durchsucht, die auf %REF-ZIEL% verlinken.
:: Erfrage den Such-String
echo.set /p SUCHSTRING="Gib den Text ein, nach dem gesucht werden soll. Z.B. "Name=Data" (ohne AnführungszeichenAnfhrungszeichen): "
:: Starte Sucheohne regexecho prg\pp.exe prg\pwb\find.py -ref:%REF-ZIEL% -dateiname:"%DATEINAME%.txt" "%SUCHSTRING%" "###"prg\pp.exe -i prg\pwb\find.py -ref:%REF-ZIEL%" -dateiname:"%DATEINAME%.txt" "%SUCHSTRING%" "###"echo.echo Es wurde die temporäre tempor„re Datei %DATEINAME%.txt erstellt.
:: Schreibe %ZIELSEITE% in "findupload-title.txt"
echo '''User:TextsucheBot/Suchergebnis/%DATETIME%_%SUCHSTRING%''' > prg\pwb\findupload-title.txt
echo Dies sind die Seiten/Dateien, die auf %REF-ZIEL% verlinken und den String ^<code^>^<nowiki^>%SUCHSTRING%^</nowiki^>^</code^> enthalten:^<p^> > prg\pwb\findupload-head.txt
:Suche_links
:: Erfrage die Seite, die auf die Suchziele verlinkt
call :headerset /p LINK-SEITE="Gib einen Seitentitel ein. Es werden dann alle Seiten durchsucht, auf die diese Seite verweist. Z.B. "Spock (Spiegeluniversum)" (ohne AnführungszeichenAnfhrungszeichen): "echo.
echo Es werden die Seiten durchsucht, auf die %LINK-SEITE% verweist.
:: Erfrage den Such-String
echo.set /p SUCHSTRING="Gib den Text ein, nach dem gesucht werden soll. Z.B. "Name=Data" (ohne AnführungszeichenAnfhrungszeichen): "
:: Starte Suche
prg\pp.exe prg\pwb\find.py -links:"%LINK-SEITE%" -dateiname:"%DATEINAME%.txt" "%SUCHSTRING%" "###"
echo.echo Es wurde die temporäre tempor„re Datei %DATEINAME%.txt erstellt. ::Ersetze Sonderzeichen in SUCHSTRINGset REPSTRING=%SUCHSTRING%call prg\rep.batset SUCHSTRING=%REPSTRING%
:: Schreibe %ZIELSEITE% in "findupload-title.txt"
echo '''User:TextsucheBot/Suchergebnis/%DATETIME%_%SUCHSTRING%''' > prg\pwb\findupload-title.txt
echo Dies sind die Seiten/Dateien, auf die %LINK-SEITE% verweist und die den String ^<code^>^<nowiki^>%SUCHSTRING%^</nowiki^>^</code^> enthalten:^<p^> > prg\pwb\findupload-head.txt
:: ========== Suchergebnisse ==========
:Suchergebnisse
start "" "http://de.memory-alpha.org/wiki/SpezialSpecial:Pr%C3%A4fixindexPrefixindex/Benutzer:TextsucheBot/Suchergebnis"
goto home
prg\pp.exe prg\pwb\pagefromfile.py -notitle -file:"prg\pwb\findupload.txt"
:: Replace.py und Add_text.py: Abs├ñtzeAbsätze, Links, Nummerierungprg\pp.exe prg\pwb\replace.py -always -page:"Benutzer:TextsucheBot/Suchergebnis/%DATETIME%_%SUCHSTRING%" -regex "#\[\[:" "\n#[[:"
:: Endausgabe mit Link
echo.echo Die geordnete Liste findet sich nun auf der Memory-Alpha-Seite "User:TextsucheBot/Suchergebnis/%DATETIME%_%SUCHSTRING%". Um dieses Fenster zu schließen und die echo.set /p BROWSER=Soll diese Seite mit den Suchergebnissen zu öffnen, drücke "Eingabe".nun im Browser ge”ffnet werden? (J/N) if %BROWSER%==N goto Frage_Neustartif %BROWSER%==n goto Frage_Neustart
set /p ENDE=Drücke :: Ruft die neue Seite im Wiki aufstart ""Eingabe" um dieses Fenster zu schließen.http://de.memory-alpha.org/wiki/User:TextsucheBot/Suchergebnis/%DATETIME%_%SUCHSTRING%"
:: Ruft die neue Seite im Wiki aufFrage_Neustartstart "" "http://deecho.memory-alpha.orgset /wiki/User:TextsucheBot/Suchergebnisp ENDE=Soll eine weitere Suche gestartet werden? (J/N) if %ENDE%==J goto homeif %DATETIMEENDE%"==j goto home
goto ende
:: ========== Info ==========
:Info
clscall :headerecho TextsucheBot V. %VERSION%
echo.
echo ╔════════════════════════════════════════════════════╗echo ║ Textsuche in der Memory Alpha mit dem TextsucheBot ║echo ╚════════════════════════════════════════════════════╝Dieses Programm wurde von Plasmarelais (maurl.de.vu/plasmarelais) geschrieben und nutzt das pywikipediabot-Framework sowie PortablePython 2.7.
echo.
echo TextsucheBot VQuelle fr das Icon: http://findicons. %VERSION%com/pack/108/pastel
echo.
echo Dieses Programm wurde von Plasmarelais (deset /p ENDE=Drcke "Eingabe" um zum Startbildschirm zurckzukehren.memory-alpha.org/wiki/Usergoto home :Plasmarelais) geschrieben und nutzt das pywikipediabot-Framework sowie PortablePython 2.7.headercls
echo.
echo Quelle für das Icon: http://findicons.com/pack/108/pastel ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»echo º Textsuche in der Memory Alpha mit dem TextsucheBot ºecho ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.
 :replaceset STRING0=%REPSTRING%set STRING1=%STRING0:#=_%set STRING2=%STRING1:|=_%set STRING3=%STRING2:[=_%set STRING4=%STRING3:]=_%set STRING5=%STRING4:{=_%set STRING6=%STRING5:}=_%::set STRING7=%STRING6:^>=_%::set STRING8=%STRING7:^<=_%set /p ENDEREPSTRING=Drücke "Eingabe" um zum Startbildschirm zurückzukehren.%STRING6%goto home:eof
:: ========== ENDE ==========
:ende
pause
</nowiki></pre>
Anonymer Benutzer

Navigationsmenü