2018-02-26, 20:07
(2018-02-25, 13:38)cz4a Wrote:If you only change the single delay value in the XML it will not work because the function by default selects a number between 1 and the number you enter at random. Thus you can end up with low numbers too often. The only solution to this is to hard code a higher range in to the function directly.(2018-01-07, 05:56)ZERO <ibis> Wrote: Please note that this scraper is not even in the official respiratory you got to install it from this thread. In addition to that you need to reprogram it or get banned from anidb if your trying to scrap more than a handful of shows at a time. Problem is you need a delay to prevent getting banned but the default values need to be way higher also even with high values (I have tested insane high values) you can still get banned because of the default function looks like this:Had to setup my whole libary again. I'm used to get banned but normally I could scan more then 3 shows before a ban.
Code:
<DelayLoop clearbuffers="no" dest="4">
<RegExp input="$$4" output="<details>\1</details>" dest="4">
<RegExp input="$$11" output="<chain function="DelayLoop">&</chain>" dest="4">
<RegExp input="$$10" output="\1" dest="11">
<RegExp input="$$11" output="\1`X" dest="10">
<expression>^((?:`(?!.*Z)){1,$INFO[DelayValue]}?)X$</expression>
</RegExp>
<RegExp input="$$11" output="\1Y" dest="10">
<expression>^((?:`(?!.*Z)){$INFO[DelayValue]})`X$</expression>
</RegExp>
<RegExp input="$$11" output="\1Y" dest="10">
<expression>^((?:`(?!.*Z)){1,$INFO[DelayValue]}?)`Y$</expression>
</RegExp>
<expression/>
</RegExp>
<expression clear="yes">``+</expression>
</RegExp>
<expression noclean="1"/>
</RegExp>
</DelayLoop>
If you want to scan a bunch of stuff and never get banned you use this:
Code:
<DelayLoop clearbuffers="no" dest="4">
<RegExp input="$$4" output="<details>\1</details>" dest="4">
<RegExp input="$$11" output="<chain function="DelayLoop">&</chain>" dest="4">
<RegExp input="$$10" output="\1" dest="11">
<RegExp input="$$11" output="\1`X" dest="10">
<expression>^((?:`(?!.*Z)){9999,999999999999}?)X$</expression>
</RegExp>
<RegExp input="$$11" output="\1Y" dest="10">
<expression>^((?:`(?!.*Z)){999999999999})`X$</expression>
</RegExp>
<RegExp input="$$11" output="\1Y" dest="10">
<expression>^((?:`(?!.*Z)){9999,999999999999}?)`Y$</expression>
</RegExp>
<expression/>
</RegExp>
<expression clear="yes">``+</expression>
</RegExp>
<expression noclean="1"/>
</RegExp>
</DelayLoop>
If you plan to use this scrapper with a large collection there is two rules:
1) Use a tvshow.nfo file for each season so the scraper will always find a match (contents of files should be aid=x where X is the value from the shows url in anidb)
2) Use the above code fix in anidb.xml located in the folder metadata.common.anidb.net
If you do those two things and follow all the instructions on the first post you will have a happy life.
So I tried changing the delay directly in the xml and still got banned after 4 Shows. Do I have to put in a delay also in the settings of the mod scraper (kodi menu)? I tried delay 9999999999 and still got banned after 4 shows. Normaly it would me at least scan 10-20 Shows.
If you did edit the function and got banned the 9999 start value may have been two low for the lower bound and you could try to increase it to 99999.
Also remember that you always need to delete your cache after your ban ends or the scrapper will not work correctly.