Author Topic: My little contribution - Updates, Bitsoup.me working script...more to come  (Read 14535 times)

Offline digitalhigh

  • Newbie
  • *
  • Posts: 3
  • Karma: +0/-0
    • View Profile
Hi All!

I've been using Bit Che for a number of years.  I love the convenience, the consolidation of the mass amount of sites, and the general awesomeness of the utility.

As of late, however, I've been taking a closer look at some of the bad torrent results I get.  I always just shook my head and cursed the site, or the program, or the internet gods in general when something didn't download right - either because the torrent wasn't available or bad bencoding...whatever. 

So, yesterday, I decided to look at how the scripts are actually written.  At first, it was mostly greek to me, but then I found the documentation for it, and it began to become much, much clearer. 

I then started systematically looking for scripts that were not sending correct results.  For example, at some point in time, vertor.com started making their top four results sponsored links.  Obvously, these are junk and need to go.  So, I revised and updated the vertor script to use their current URL structure, fix the torrent grabbing mechanism, and filter out the sponsored results. 

So far, I've done updates to extratorrent.cc, isohunt, kickasstorrents.com, and vertor.com. 

Additionally, I modified the script from one of the login sites to work with bitsoup.me.  (It was surprisingly easy).  That is also in the .zip I've uploaded. 


I still have a lot of learning to do...for now I've omitted profiles and the extra site links I've seen...KISS...but as I progress and learn how to really leverage the commands for the script engine, I'll probably create some more complex ones.


One question for those of you who have done this more...what exactly is the function of the index counter??  Like...in many scripts, there are two or three initial calls like:

@i=findh(@i,@data,`class=rowhead align=left`)
@i=findrev(@i,@data,`DL`)
@i=find(@i,@data,`</tr>`,`<tr`)

I understand and see the value of I changing as these commands are executed in debugging...but I'm not quite following how this number changes in further commands and how it is intended to be used. 

So, a little more info on the index counter would be awesome.  Otherwise, enjoy.  :D

Offline digitalhigh

  • Newbie
  • *
  • Posts: 3
  • Karma: +0/-0
    • View Profile
Here are two more - ahashare.com and eagletorrents.com.  Both are private trackers, but I had no problems signing up as of this afternoon.

Offline chip!

  • Bad Ass
  • Administrator
  • Unstoppable
  • *****
  • Posts: 2301
  • Karma: +629/-6
    • View Profile
Thanks DH. Glad to see you were able to decipher the script engine code. Its meant to be simple 'KISS' and get the job done. So for your question. @i is a special variable that resets up '1' after every array() call. If you use find() and extract() in logical order, you would start at the beginning and after you extract 'something'.. then, the next 'something' you want must be after the last position.. So @i is a place holder for the current find order of the given array. Its really just a short cut. You can use '1' as the first x=find(`1`) and then base it off `x` but @i is just shortcut. Not sure if that helps? Thanks for posting!!
  -  https://convivea.com  -   And...  boom goes the dynamite.

Offline digitalhigh

  • Newbie
  • *
  • Posts: 3
  • Karma: +0/-0
    • View Profile
Hi Chip!  Thanks for the reply. 

Yes, I kinda figured out how it works after playing some more.  I really started going to town, trying to find other trackers I could add. 

So far, I'm up to 11 different scripts with either updates or brand-new sites.  Below is the full list:

ahashare.com - New, Private
bitsoup.me - New, Private
dimeadozen.org/eztorrent - New
eagletorrents.net - New (mostly music)
extratorrents.cc - Updated/fixed
h33t.to - New
isohunt - Updated/fixed
kickasstorrents.com - Updated/fixed
rarbg.com - Updated/fixed
torrentfunk.com - New, General
vertor.com - Updated/fixed

I know profiles are missing from most...I'll be going through and cleaning the first ones I did and re-adding extra stuff.  :D

Offline chip!

  • Bad Ass
  • Administrator
  • Unstoppable
  • *****
  • Posts: 2301
  • Karma: +629/-6
    • View Profile
awesome. thanks DH.  let us know if you have any more updates.

for your question, the @i is just a special variable that gets reset to "1" (as opposed to "0") after every array() call.   There is no reason you cant use '1' instead of @i, but the benefit of using the @i is that its value is automatically updated (since its a variable) after an extract() function IF @i is used as the index.  (basically any variable will get updated so you can chain multiple extract() functions without losing position in the data).

res=extract(@i,`findthis`,`endofit`)


so 'res' has the extracted data, but @i is updated with the position at the end of `endofit`

then you could (without having to adjust @i if you are extracting linearly in a data/string):

res2=extract(@i,`nextthis`,`endagain`)

hope that helps?  happy to help answer any questions.
« Last Edit: April 14, 2014, 11:54:51 am by chip! »
  -  https://convivea.com  -   And...  boom goes the dynamite.

Offline djice

  • Newbie
  • *
  • Posts: 2
  • Karma: +1/-0
    • View Profile
I think it is great that you have figured out how to fix these scripts.  I have been getting so many bad results myself so thank you.  I do however have a quick question.  You have h33t.to in the list but it does not show up in Bitche after updating the scripts, in fact it has not been in there for a very long time.  Any suggestion on how to get it to show up again?

Thank you,
Djice