web source scripts: killtag


#1

der Befehl killtag "*" hat ein Problem, wenn Anführungszeichen ausserhalb der Tags vorkommen.

aus der debug Datei:

Script-Line    : 218
Command        : joinuntil
Parameter 1    : ></td><

Output         : >Touch|Saturn|Hot Knights|I'd Like To See You Again|Show Case|Sesamo Apriti - Corco Vada|Axis|Guess Who|<

Line and position:
    <td class="track">        <a class="track_title" href="http://clip.discogsmp3.com/MP3/SF1661131-02-01-09.mp3">Knife Slits Water (7")</a>    <sup class="duration" style="margin-left: 1em"></sup>        </td>
^

------------------------------------------------------------

Script-Line    : 219
Command        : killtag
Parameter 1    : >*<

Output         : >Touch|Saturn|Hot Knights|I'd Like To See You Again|Show Case|Sesamo Apriti - Corco Vada|Axis|Guess Who|<

Line and position:
              Knife Slits Water (7")</a>    <sup class="duration" style="margin-left: 1em"></sup>        </td>
^

normal sollte am Schluss nur noch
Line and position:

          Knife Slits Water (7")</i>

dastehen.

ich denke, dass killtag das Anführungszeichen im Titel so interpretiert, dass alles was vor einem zweiten schließenden Anführungszeichen kommt kein tag sein kann. Da kein zweites Anführungszeichen kommt (bzw. ihre Anzahl ungerade bleibt) interpretiert es den ganzen folgenden Text als nicht-tag.

Beispiele:
http://www.discogs.com/release/469854 (track 9 und 13)
http://www.discogs.com/release/2665351 (track 8)

mit diesem Skript:
Discogs__Pone_2.5___X_Direct_by_URL__Develpment_.src (8 KB)

im Skript schon eingebaut aber mit # blockiert ist in Zeile 219 ist ein workaround mit dem sich das Problem beseitigen lässt:
replace """ "''"

Discogs__Pone_2.5___X_Direct_by_URL__Develpment_.src (8 KB)


#2

a second workaround is to use

regexpreplace "<[^>]+>" ""
or
regexpreplace "<[^>]*>" ""

instead of

killtag "*"

this has the aditional advantage that you don't get the extra spaces which killtag produces