├── README.md ├── express-hybrid.txt ├── magnify.txt ├── openscraper.txt └── ultra.txt /README.md: -------------------------------------------------------------------------------- 1 | # scraper4wako 2 | 3 | This project was created to convert and maintain Syncler's community scrapers for wako/Helios users. This is for private convenience and is not meant for the broader public. 4 | 5 | You are solely responsible for the content you watch online, these scrapers do not offer any content, they merely aid to web search on publicly available web resources. 6 | 7 | ## How to use 8 | Click on any of the txt files in this repo (only ONE), then right click on "Raw" and copy the URL. You will get a raw.githubusercontent.com URL, that is the provider URL you need to enter in Helios. 9 | 10 | If you don't understand how to do this here's the direct URLs, just copy one of them to the clipboard and paste/add it in Helios's provider settings. 11 | 12 | Magnify Scrapers: 13 | https://raw.githubusercontent.com/morpheasgr/scraper4wako/main/magnify.txt 14 | 15 | JakedUp (express-hybrid.txt): 16 | https://raw.githubusercontent.com/morpheasgr/scraper4wako/main/express-hybrid.txt 17 | 18 | OpenScrapers: 19 | https://raw.githubusercontent.com/morpheasgr/scraper4wako/main/openscraper.txt 20 | 21 | Syncler.ml ULTRA: 22 | https://raw.githubusercontent.com/morpheasgr/scraper4wako/main/ultra.txt 23 | 24 | Have fun! -------------------------------------------------------------------------------- /express-hybrid.txt: -------------------------------------------------------------------------------- 1 | { 2 | "torrentio": { 3 | "name": "Torrentio", 4 | "enabled": true, 5 | "languages": [ 6 | "en" 7 | ], 8 | "base_url": "https://torrentio.strem.fun", 9 | "response_type": "json", 10 | "movie": { 11 | "query": "/stream/movie/{query}.json", 12 | "keywords": "{imdbId}" 13 | }, 14 | "episode": { 15 | "query": "/stream/series/{query}:{season}:{episode}.json", 16 | "keywords": "{showImdbId}" 17 | }, 18 | "json_format": { 19 | "results": "streams", 20 | "title": "title", 21 | "hash": "infoHash" 22 | } 23 | }, 24 | "superflix": { 25 | "name": "Superflix", 26 | "enabled": true, 27 | "languages": [ 28 | "en" 29 | ], 30 | "base_url": "https://23dfbfad8cb2-stremio-addon-superflix.baby-beamup.club", 31 | "response_type": "json", 32 | "movie": { 33 | "query": "/stream/movie/{query}.json", 34 | "keywords": "{imdbId}" 35 | }, 36 | "episode": { 37 | "query": "/stream/series/{query}:{season}:{episode}.json", 38 | "keywords": "{showImdbId}" 39 | }, 40 | "json_format": { 41 | "results": "streams", 42 | "title": "description", 43 | "quality": "name", 44 | "url": "url" 45 | } 46 | }, 47 | "shluflix": { 48 | "name": "Shluflix", 49 | "enabled": true, 50 | "languages": [ 51 | "en" 52 | ], 53 | "base_url": "https://ea627ddf0ee7-shluflix.baby-beamup.club", 54 | "response_type": "json", 55 | "movie": { 56 | "query": "/stream/movie/{query}.json", 57 | "keywords": "{imdbId}" 58 | }, 59 | "episode": { 60 | "query": "/stream/series/{query}:{season}:{episode}.json", 61 | "keywords": "{showImdbId}" 62 | }, 63 | "json_format": { 64 | "results": "streams", 65 | "title": "description", 66 | "quality": "description", 67 | "url": "url" 68 | } 69 | }, 70 | "bitlord": { 71 | "name": "Bitlord", 72 | "enabled": true, 73 | "languages": [ 74 | "en" 75 | ], 76 | "base_url": "https://bitlordsearch.com", 77 | "response_type": "text", 78 | "movie": { 79 | "query": "/search?q={query}", 80 | "keywords": "{title} {year}" 81 | }, 82 | "episode": { 83 | "query": "/search?q={query}", 84 | "keywords": [ 85 | "{title} {episodeCode}", 86 | "{title} {year} {episodeCode}" 87 | ] 88 | }, 89 | "season": { 90 | "query": "/search?q={query}", 91 | "keywords": [ 92 | "{title} {seasonCode}", 93 | "{title} season", 94 | "{title} {year} {seasonCode}", 95 | "{title} {year} season" 96 | ] 97 | }, 98 | "anime": { 99 | "query": "/search?q={query}", 100 | "keywords": [ 101 | "{title} {absoluteNumber}", 102 | "{title} {episode}" 103 | ] 104 | }, 105 | "html_parser": { 106 | "row": "doc.querySelectorAll('#container table tbody tr.bls-row')", 107 | "title": "row.querySelector('.title').textContent", 108 | "peers": "row.querySelector('.peers').textContent", 109 | "seeds": "row.querySelector('.seeds').textContent", 110 | "size": "(row.querySelector('.size').textContent < 120 ? row.querySelector('.size').textContent * 1024 : (row.querySelector('.size').textContent > 122880 ? row.querySelector('.size').textContent / 1204 : row.querySelector('.size').textContent))+' MB'", 111 | "url": "row.querySelector('.magnet-button').getAttribute('href')" 112 | }, 113 | "title_replacement": { 114 | ".": "", 115 | ":": "", 116 | "'": "", 117 | "&": "", 118 | "\"": "", 119 | "*": "" 120 | }, 121 | "source_is_in_sub_page": false 122 | }, 123 | "extratorrents": { 124 | "name": "ExtraTorrent", 125 | "enabled": true, 126 | "languages": [ 127 | "en" 128 | ], 129 | "base_url": "https://extratorrent.st", 130 | "fallback_urls": [ 131 | "https://extratorrent2.unblockninja.com", 132 | "https://extratorrent.unblocked.nz", 133 | "https://extra.torrentbay.to" 134 | ], 135 | "response_type": "text", 136 | "movie": { 137 | "query": "/search/?search={query}&new=1&x=0&y=0", 138 | "keywords": "{title} {year}" 139 | }, 140 | "episode": { 141 | "query": "/search/?search={query}&new=1&x=0&y=0", 142 | "keywords": [ 143 | "{title} {episodeCode}", 144 | "{title} {year} {episodeCode}" 145 | ] 146 | }, 147 | "season": { 148 | "query": "/search/?search={query}&new=1&x=0&y=0", 149 | "keywords": [ 150 | "{title} {seasonCode}", 151 | "{title} season", 152 | "{title} {year} {seasonCode}", 153 | "{title} {year} season" 154 | ] 155 | }, 156 | "anime": { 157 | "query": "/search/?search={query}&new=1&x=0&y=0", 158 | "keywords": [ 159 | "{title} {absoluteNumber}", 160 | "{title} {episode}" 161 | ] 162 | }, 163 | "html_parser": { 164 | "row": "doc.querySelectorAll('table.tl tbody tr')", 165 | "title": "row.querySelector('td.tli > a').textContent", 166 | "peers": "row.querySelector('td:nth-child(7)').textContent", 167 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 168 | "size": "row.querySelector('td:nth-child(5)').textContent", 169 | "url": "row.querySelector('table.tl td:nth-child(1) > a').getAttribute('href')" 170 | }, 171 | "title_replacement": { 172 | ".": "", 173 | ":": "", 174 | "'": "", 175 | "&": "", 176 | "\"": "", 177 | "*": "" 178 | }, 179 | "source_is_in_sub_page": false 180 | }, 181 | "yts": { 182 | "name": "YTS", 183 | "enabled": true, 184 | "languages": [ 185 | "en" 186 | ], 187 | "base_url": "https://yts.mx", 188 | "fallback_urls": [ 189 | "https://yts.pm", 190 | "https://yts.unblocked.lat" 191 | ], 192 | "response_type": "json", 193 | "movie": { 194 | "query": "/api/v2/list_movies.json?query_term={query}&sort_by=seeds&order_by=desc", 195 | "keywords": "{imdbId}" 196 | }, 197 | "json_format": { 198 | "results": "data.movies", 199 | "sub_results": "torrents", 200 | "url": "magnet:?xt=urn:btih:{hash}&tr=http://track.one:1234/announce&tr=udp://track.two:80", 201 | "title": "title_long", 202 | "seeds": "seeds", 203 | "peers": "peers", 204 | "size": "size", 205 | "quality": "quality", 206 | "hash": "hash" 207 | }, 208 | "title_replacement": { 209 | ".": "", 210 | ":": "", 211 | "'": "", 212 | "&": "", 213 | "\"": "", 214 | "*": "" 215 | }, 216 | "trust_results": true 217 | }, 218 | "zooqle": { 219 | "name": "Zooqle", 220 | "enabled": true, 221 | "languages": [ 222 | "en" 223 | ], 224 | "base_url": "https://zooqle.com", 225 | "fallback_urls": [ 226 | "https://zooqle.t0r.club", 227 | "https://zooqle-com.unblocksites.fun", 228 | "https://zooqle.unblocked.win", 229 | "https://zooqle.nocensor.xyz", 230 | "https://zooqle.unblocked.llc", 231 | "https://zooqle.unblocked.krd", 232 | "https://zooqle.p4y.info" 233 | ], 234 | "response_type": "text", 235 | "separator": "+", 236 | "movie": { 237 | "query": "/search?q={query}", 238 | "keywords": "{title} {year}" 239 | }, 240 | "episode": { 241 | "query": "/search?q={query}", 242 | "keywords": [ 243 | "{title} {episodeCode}", 244 | "{title} {year} {episodeCode}" 245 | ] 246 | }, 247 | "season": { 248 | "query": "/search?q={query}", 249 | "keywords": [ 250 | "{title} {seasonCode}", 251 | "{title} season", 252 | "{title} {year} {seasonCode}", 253 | "{title} {year} season" 254 | ] 255 | }, 256 | "anime": { 257 | "query": "/search?q={query}", 258 | "keywords": [ 259 | "{title} {absoluteNumber}", 260 | "{title} {episode}" 261 | ] 262 | }, 263 | "html_parser": { 264 | "row": "doc.querySelectorAll('.table-torrents tbody tr')", 265 | "title": "row.querySelector('td:nth-child(2) a').textContent", 266 | "peers": "row.querySelector('td:nth-child(6) .progress-bar:nth-child(2)') ? row.querySelector('td:nth-child(6) .prog-r').textContent : 0", 267 | "seeds": "row.querySelector('td:nth-child(6) .progress-bar:nth-child(1)') ? row.querySelector('td:nth-child(6) .prog-l').textContent : 0", 268 | "size": "row.querySelector('td:nth-child(4) .progress-bar').textContent.replace('K','000')", 269 | "url": "row.querySelector('td:nth-child(3) li:nth-child(2) a').getAttribute('href')" 270 | }, 271 | "title_replacement": { 272 | ".": "", 273 | ":": "", 274 | "'": "", 275 | "&": "", 276 | "\"": "", 277 | "*": "" 278 | }, 279 | "source_is_in_sub_page": false 280 | }, 281 | "thepiratebay": { 282 | "name": "PirateBay", 283 | "enabled": true, 284 | "languages": [ 285 | "en" 286 | ], 287 | "base_url": "https://apibay.org", 288 | "fallback_urls": [], 289 | "response_type": "json", 290 | "movie": { 291 | "query": "/q.php?q={query}&cat=207,202,201", 292 | "keywords": "{title} {year}" 293 | }, 294 | "episode": { 295 | "query": "/q.php?q={query}&cat=208,205", 296 | "keywords": [ 297 | "{title} {episodeCode}", 298 | "{title} {year} {episodeCode}" 299 | ] 300 | }, 301 | "season": { 302 | "query": "/q.php?q={query}&cat=208,205", 303 | "keywords": [ 304 | "{title} {seasonCode}", 305 | "{title} season", 306 | "{title} {year} {seasonCode}", 307 | "{title} {year} season" 308 | ] 309 | }, 310 | "anime": { 311 | "query": "/q.php?q={query}&cat=208,205", 312 | "keywords": [ 313 | "{title} {absoluteNumber}", 314 | "{title} {episode}" 315 | ] 316 | }, 317 | "json_format": { 318 | "title": "name", 319 | "seeds": "seeders", 320 | "peers": "leechers", 321 | "size": "size", 322 | "hash": "info_hash" 323 | }, 324 | "title_replacement": { 325 | ".": "", 326 | ":": "", 327 | "'": "", 328 | "&": "", 329 | "\"": "", 330 | "*": "" 331 | } 332 | }, 333 | "torrentdownload": { 334 | "name": "TorrentDownload", 335 | "enabled": true, 336 | "languages": [ 337 | "en" 338 | ], 339 | "base_url": "https://www.torrentdownload.info", 340 | "response_type": "text", 341 | "separator": "+", 342 | "movie": { 343 | "query": "/search?q={query}", 344 | "keywords": "{title} {year}" 345 | }, 346 | "episode": { 347 | "query": "/search?q={query}", 348 | "keywords": [ 349 | "{title} {episodeCode}", 350 | "{title} {year} {episodeCode}" 351 | ] 352 | }, 353 | "season": { 354 | "query": "/search?q={query}", 355 | "keywords": [ 356 | "{title} {seasonCode}", 357 | "{title} season", 358 | "{title} {year} {seasonCode}", 359 | "{title} {year} season" 360 | ] 361 | }, 362 | "anime": { 363 | "query": "/search?q={query}", 364 | "keywords": [ 365 | "{title} {absoluteNumber}", 366 | "{title} {episode}" 367 | ] 368 | }, 369 | "html_parser": { 370 | "row": "doc.querySelectorAll('table:nth-of-type(2) tbody tr:not(:first-child)')", 371 | "title": "row.querySelector('.tt-name a').textContent", 372 | "peers": "row.querySelector('.tdleech').textContent.replace(',','')", 373 | "seeds": "row.querySelector('.tdseed').textContent.replace(',','')", 374 | "size": "row.querySelector('.tdnormal:nth-of-type(3)').textContent", 375 | "url": "row.querySelector('.tt-name a').getAttribute('href')" 376 | }, 377 | "title_replacement": { 378 | ".": "", 379 | ":": "", 380 | "'": "", 381 | "&": "", 382 | "\"": "", 383 | "*": "" 384 | }, 385 | "source_is_in_sub_page": true 386 | }, 387 | "anirena": { 388 | "name": "AniRena", 389 | "enabled": true, 390 | "languages": [ 391 | "en" 392 | ], 393 | "base_url": "https://www.anirena.com", 394 | "response_type": "text", 395 | "separator": "+", 396 | "movie": { 397 | "query": "/?s={query}", 398 | "keywords": "{title}" 399 | }, 400 | "episode": { 401 | "query": "/?s={query}", 402 | "keywords": [ 403 | "{title} {absoluteNumber}", 404 | "{title} {episode}" 405 | ] 406 | }, 407 | "season": { 408 | "query": "/?s={query}", 409 | "keywords": [ 410 | "{title} {seasonCode}", 411 | "{title} season" 412 | ] 413 | }, 414 | "anime": { 415 | "query": "/?s={query}", 416 | "keywords": [ 417 | "{title} {absoluteNumber}", 418 | "{title} {episode}" 419 | ] 420 | }, 421 | "html_parser": { 422 | "row": "doc.querySelectorAll('div.full2')", 423 | "title": "row.querySelector('table tbody tr .torrents_small_info_data1 a:nth-child(2)').textContent", 424 | "peers": "row.querySelector('table tbody tr .torrents_small_leechers_data1').textContent", 425 | "seeds": "row.querySelector('table tbody tr .torrents_small_seeders_data1').textContent", 426 | "size": "row.querySelector('table tbody tr .torrents_small_size_data1').textContent", 427 | "url": "row.querySelector('table tbody tr .torrents_small_info_data2 a:nth-child(2)').getAttribute('href')" 428 | }, 429 | "title_replacement": { 430 | ".": "", 431 | ":": "", 432 | "'": "", 433 | "&": "", 434 | "\"": "", 435 | "*": "" 436 | }, 437 | "source_is_in_sub_page": false 438 | }, 439 | "torrentdownloads": { 440 | "name": "TorrentDownloads", 441 | "enabled": true, 442 | "languages": [ 443 | "en" 444 | ], 445 | "base_url": "https://www.torrentdownloads.me", 446 | "fallback_urls": [ 447 | "https://www.torrentdownloads.info", 448 | "http://torrentdownloads.d4.re" 449 | ], 450 | "response_type": "text", 451 | "separator": "+", 452 | "movie": { 453 | "query": "/search/?search={query}", 454 | "keywords": "{title} {year}" 455 | }, 456 | "episode": { 457 | "query": "/search/?search={query}", 458 | "keywords": [ 459 | "{title} {episodeCode}", 460 | "{title} {year} {episodeCode}" 461 | ] 462 | }, 463 | "season": { 464 | "query": "/search/?search={query}", 465 | "keywords": [ 466 | "{title} {seasonCode}", 467 | "{title} season", 468 | "{title} {year} {seasonCode}", 469 | "{title} {year} season" 470 | ] 471 | }, 472 | "anime": { 473 | "query": "/search/?search={query}", 474 | "keywords": [ 475 | "{title} {absoluteNumber}", 476 | "{title} {episode}" 477 | ] 478 | }, 479 | "html_parser": { 480 | "row": "doc.querySelectorAll('.inner_container')[1].querySelectorAll('.grey_bar3')", 481 | "title": "row.querySelector('p a').textContent", 482 | "peers": "row.querySelector('span:nth-child(3)').textContent", 483 | "seeds": "row.querySelector('span:nth-child(4)').textContent", 484 | "size": "row.querySelector('span:nth-child(5)').textContent", 485 | "url": "row.querySelector('p a').getAttribute('href').match('http') || row.querySelector('p a').getAttribute('href').match('php') ? null : row.querySelector('p a').getAttribute('href')" 486 | }, 487 | "title_replacement": { 488 | ".": "", 489 | ":": "", 490 | "'": "", 491 | "&": "", 492 | "\"": "", 493 | "*": "" 494 | }, 495 | "source_is_in_sub_page": true 496 | }, 497 | "kickass": { 498 | "name": "Kickass", 499 | "enabled": true, 500 | "languages": [ 501 | "en" 502 | ], 503 | "base_url": "https://kickass-kat.com", 504 | "fallback_urls": [ 505 | "https://kickass.vc", 506 | "https://kat.how", 507 | "https://kat.li", 508 | "https://kickass.cm", 509 | "https://kickass2.st", 510 | "https://kat.sx", 511 | "https://thekat.info" 512 | ], 513 | "response_type": "text", 514 | "separator": "%20", 515 | "movie": { 516 | "query": "/usearch/{query}/?field=seeders&sorder=desc", 517 | "keywords": "{title} {year}" 518 | }, 519 | "episode": { 520 | "query": "/usearch/{query}/?field=seeders&sorder=desc", 521 | "keywords": [ 522 | "{title} {episodeCode}", 523 | "{title} {year} {episodeCode}" 524 | ] 525 | }, 526 | "season": { 527 | "query": "/usearch/{query}/?field=seeders&sorder=desc", 528 | "keywords": [ 529 | "{title} {seasonCode}", 530 | "{title} season", 531 | "{title} {year} {seasonCode}", 532 | "{title} {year} season" 533 | ] 534 | }, 535 | "anime": { 536 | "query": "/usearch/{query}/?field=seeders&sorder=desc", 537 | "keywords": [ 538 | "{title} {absoluteNumber}", 539 | "{title} {episode}" 540 | ] 541 | }, 542 | "html_parser": { 543 | "row": "doc.querySelectorAll('.data tbody tr:not(.firstr)')", 544 | "title": "row.querySelector('td:nth-child(1) .torrentname .torType a').textContent", 545 | "peers": "row.querySelectorAll('.green').textContent", 546 | "seeds": "row.querySelectorAll('.red').textContent", 547 | "size": "row.querySelector('.nobr').textContent", 548 | "url": "decodeURIComponent(row.querySelector('td:nth-child(1) div:nth-child(1) a:nth-last-child(2)').getAttribute('href').replace('https://mylink.cx/?url=', '').trim())" 549 | }, 550 | "title_replacement": { 551 | ".": "", 552 | ":": "", 553 | "'": "", 554 | "&": "", 555 | "\"": "", 556 | "*": "" 557 | }, 558 | "source_is_in_sub_page": false 559 | }, 560 | "torrentgalaxy": { 561 | "name": "TorrentGalaxy", 562 | "enabled": true, 563 | "languages": [ 564 | "en" 565 | ], 566 | "base_url": "https://torrentgalaxy.to", 567 | "fallback_urls": [ 568 | "https://torrentgalaxy.mx", 569 | "https://torrentgalaxy.su", 570 | "https://torrentgalaxy.unblockit.uno" 571 | ], 572 | "response_type": "text", 573 | "separator": "+", 574 | "movie": { 575 | "query": "/torrents.php?search={query}", 576 | "keywords": "{title} {year}" 577 | }, 578 | "episode": { 579 | "query": "/torrents.php?search={query}", 580 | "keywords": [ 581 | "{title} {episodeCode}", 582 | "{title} {year} {episodeCode}" 583 | ] 584 | }, 585 | "season": { 586 | "query": "/torrents.php?search={query}", 587 | "keywords": [ 588 | "{title} {seasonCode}", 589 | "{title} season", 590 | "{title} {year} {seasonCode}", 591 | "{title} {year} season" 592 | ] 593 | }, 594 | "anime": { 595 | "query": "/torrents.php?search={query}", 596 | "keywords": [ 597 | "{title} {absoluteNumber}", 598 | "{title} {episode}" 599 | ] 600 | }, 601 | "html_parser": { 602 | "row": "doc.querySelectorAll('.tgxtable .tgxtablerow')", 603 | "title": "row.querySelector('.tgxtablecell:nth-child(4) a:nth-child(1)').getAttribute('title')", 604 | "peers": "row.querySelector('.tgxtablecell:nth-child(11) span font:nth-child(2)').textContent", 605 | "seeds": "row.querySelector('.tgxtablecell:nth-child(11) span font:nth-child(1)').textContent", 606 | "size": "row.querySelector('.tgxtablecell:nth-child(8)').textContent", 607 | "url": "row.querySelector('.tgxtablecell:nth-child(5) a:nth-child(2)').getAttribute('href')" 608 | }, 609 | "title_replacement": { 610 | ".": "", 611 | ":": "", 612 | "'": "", 613 | "&": "", 614 | "\"": "", 615 | "*": "" 616 | }, 617 | "source_is_in_sub_page": false 618 | }, 619 | "eztv": { 620 | "name": "EZTV", 621 | "enabled": true, 622 | "languages": [ 623 | "en" 624 | ], 625 | "base_url": "https://eztv.re", 626 | "fallback_urls": [ 627 | "https://eztv.ag", 628 | "https://eztv.it", 629 | "https://eztv.ch", 630 | "https://eztv.unblockit.uno" 631 | ], 632 | "response_type": "text", 633 | "episode": { 634 | "query": "/search/{query}", 635 | "keywords": [ 636 | "{title} {episodeCode}", 637 | "{title} {year} {episodeCode}" 638 | ] 639 | }, 640 | "season": { 641 | "query": "/search/{query}", 642 | "keywords": [ 643 | "{title} {seasonCode}", 644 | "{title} season", 645 | "{title} {year} {seasonCode}", 646 | "{title} {year} season" 647 | ] 648 | }, 649 | "html_parser": { 650 | "row": "doc.querySelectorAll('tr.forum_header_border')", 651 | "title": "row.querySelector('td:nth-child(2)').textContent", 652 | "peers": "row.querySelector('td:nth-child(6)').textContent", 653 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 654 | "size": "row.querySelector('td:nth-child(4)').textContent", 655 | "url": "row.querySelector('td:nth-child(3) a').getAttribute('href')" 656 | }, 657 | "title_replacement": { 658 | ".": "", 659 | ":": "", 660 | "'": "", 661 | "&": "", 662 | "\"": "", 663 | "*": "" 664 | }, 665 | "source_is_in_sub_page": false 666 | }, 667 | "skytorrents": { 668 | "name": "SkyTorrents", 669 | "enabled": true, 670 | "languages": [ 671 | "en" 672 | ], 673 | "base_url": "https://www.skytorrents.me", 674 | "fallback_urls": [], 675 | "response_type": "text", 676 | "separator": "+", 677 | "movie": { 678 | "query": "/search?q={query}", 679 | "keywords": "{title} {year}" 680 | }, 681 | "episode": { 682 | "query": "/search?q={query}", 683 | "keywords": [ 684 | "{title} {episodeCode}", 685 | "{title} {year} {episodeCode}" 686 | ] 687 | }, 688 | "season": { 689 | "query": "/search?q={query}", 690 | "keywords": [ 691 | "{title} {seasonCode}", 692 | "{title} season", 693 | "{title} {year} {seasonCode}", 694 | "{title} {year} season" 695 | ] 696 | }, 697 | "anime": { 698 | "query": "/search?q={query}", 699 | "keywords": [ 700 | "{title} {absoluteNumber}", 701 | "{title} {episode}" 702 | ] 703 | }, 704 | "html_parser": { 705 | "row": "doc.querySelectorAll('.rtable tbody tr.row')", 706 | "title": "row.querySelector('td:nth-child(1) a').textContent", 707 | "peers": "row.querySelector('td:nth-child(5)').textContent", 708 | "seeds": "row.querySelector('td:nth-child(4)').textContent", 709 | "size": "row.querySelector('td:nth-child(2)').textContent", 710 | "url": "row.querySelector('td:nth-child(6) a').getAttribute('href')" 711 | }, 712 | "title_replacement": { 713 | ".": "", 714 | ":": "", 715 | "'": "", 716 | "&": "", 717 | "\"": "", 718 | "*": "" 719 | }, 720 | "source_is_in_sub_page": false 721 | }, 722 | "glodls": { 723 | "name": "Glodls", 724 | "enabled": true, 725 | "languages": [ 726 | "en" 727 | ], 728 | "base_url": "https://glodls.to", 729 | "fallback_urls": [ 730 | "https://gtdb.to", 731 | "https://glotorrents.unblockit.uno" 732 | ], 733 | "response_type": "text", 734 | "separator": "+", 735 | "movie": { 736 | "query": "/search_results.php?search={query}&cat=1&incldead=0&inclexternal=0&lang=1&sort=size&order=desc", 737 | "keywords": "{title} {year}" 738 | }, 739 | "episode": { 740 | "query": "/search_results.php?search={query}&cat=41&incldead=0&inclexternal=0&lang=1&sort=seeders&order=desc", 741 | "keywords": [ 742 | "{title} {episodeCode}", 743 | "{title} {year} {episodeCode}" 744 | ] 745 | }, 746 | "season": { 747 | "query": "/search_results.php?search={query}&cat=41&incldead=0&inclexternal=0&lang=1&sort=seeders&order=desc", 748 | "keywords": [ 749 | "{title} {seasonCode}", 750 | "{title} season", 751 | "{title} {year} {seasonCode}", 752 | "{title} {year} season" 753 | ] 754 | }, 755 | "html_parser": { 756 | "row": "doc.querySelectorAll('table.ttable_headinner tbody tr.t-row:nth-child(odd)')", 757 | "title": "row.querySelector('td:nth-child(2) a:nth-child(2)').textContent", 758 | "peers": "row.querySelector('td:nth-child(7)').textContent", 759 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 760 | "size": "row.querySelector('td:nth-child(5)').textContent", 761 | "url": "row.querySelector('td:nth-child(4) a').getAttribute('href')" 762 | }, 763 | "title_replacement": { 764 | ".": "", 765 | ":": "", 766 | "'": "", 767 | "&": "", 768 | "\"": "", 769 | "*": "" 770 | }, 771 | "source_is_in_sub_page": false 772 | }, 773 | "magnetdl": { 774 | "name": "MagnetDL", 775 | "enabled": true, 776 | "languages": [ 777 | "en" 778 | ], 779 | "base_url": "https://www.magnetdl.com", 780 | "fallback_urls": [ 781 | "https://magnetdl.unblockit.uno", 782 | "https://torrentquest.com" 783 | ], 784 | "response_type": "text", 785 | "separator": "-", 786 | "movie": { 787 | "query": "/{titleFirstLetter}/{query}/", 788 | "keywords": "{title} {year}" 789 | }, 790 | "episode": { 791 | "query": "/{titleFirstLetter}/{query}/", 792 | "keywords": [ 793 | "{title} {episodeCode}", 794 | "{title} {year} {episodeCode}" 795 | ] 796 | }, 797 | "season": { 798 | "query": "/{titleFirstLetter}/{query}/", 799 | "keywords": [ 800 | "{title} {seasonCode}", 801 | "{title} season", 802 | "{title} {year} {seasonCode}", 803 | "{title} {year} season" 804 | ] 805 | }, 806 | "html_parser": { 807 | "row": "doc.querySelectorAll('table.download tbody tr:nth-child(odd)')", 808 | "title": "row.querySelector('td:nth-child(2) a') ? row.querySelector('td:nth-child(2) a').getAttribute('title') : ''", 809 | "peers": "row.querySelector('td:nth-child(8)') ? row.querySelector('td:nth-child(8)').textContent : ''", 810 | "seeds": "row.querySelector('td:nth-child(7)') ? row.querySelector('td:nth-child(7)').textContent : ''", 811 | "size": "row.querySelector('td:nth-child(6)') ? row.querySelector('td:nth-child(6)').textContent.replace(',','') : ''", 812 | "url": "row.querySelector('td:nth-child(1) a') ? row.querySelector('td:nth-child(1) a').getAttribute('href') : ''" 813 | }, 814 | "title_replacement": { 815 | ".": "", 816 | ":": "", 817 | "'": "", 818 | "&": "", 819 | "\"": "", 820 | "*": "" 821 | }, 822 | "source_is_in_sub_page": false 823 | }, 824 | "rutor": { 825 | "name": "RuTor", 826 | "enabled": true, 827 | "languages": [ 828 | "ru" 829 | ], 830 | "base_url": "http://rutor.info", 831 | "response_type": "text", 832 | "movie": { 833 | "query": "/search/{query}", 834 | "keywords": "{title} {year}" 835 | }, 836 | "episode": { 837 | "query": "/search/{query}", 838 | "keywords": [ 839 | "{title} {episodeCode}", 840 | "{title} {year} {episodeCode}", 841 | "{title} {season}" 842 | ] 843 | }, 844 | "html_parser": { 845 | "row": "doc.querySelectorAll('tbody tr')", 846 | "title": "row.querySelector('td:nth-child(2)').innerText", 847 | "peers": "row.querySelector('td:nth-last-child(1) span.green').innerText", 848 | "seeds": "row.querySelector('td:nth-last-child(1) span.red').innerText", 849 | "size": "row.querySelector('td:nth-last-child(2)').innerText", 850 | "url": "row.querySelector('td:nth-child(2) a:nth-child(2)').getAttribute('href')" 851 | }, 852 | "source_is_in_sub_page": false 853 | }, 854 | "nyaa": { 855 | "name": "Nyaa", 856 | "enabled": true, 857 | "languages": [ 858 | "en" 859 | ], 860 | "base_url": "https://nyaa.si", 861 | "fallback_urls": [], 862 | "response_type": "text", 863 | "separator": "+", 864 | "movie": { 865 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 866 | "keywords": "{title} {year}" 867 | }, 868 | "episode": { 869 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 870 | "keywords": "{title} {absoluteNumber}" 871 | }, 872 | "season": { 873 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 874 | "keywords": [ 875 | "{title} {seasonCode}", 876 | "{title} season" 877 | ] 878 | }, 879 | "anime": { 880 | "query": "/?f=0&c=1_0&q={query}&s=seeders&o=desc", 881 | "keywords": [ 882 | "{title} {absoluteNumber}", 883 | "{title} {episode}" 884 | ] 885 | }, 886 | "html_parser": { 887 | "row": "doc.querySelectorAll('.torrent-list tbody tr')", 888 | "title": "row.querySelector('td:nth-child(2) a:last-child').textContent", 889 | "peers": "row.querySelector('td:nth-child(7)').textContent", 890 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 891 | "size": "row.querySelector('td:nth-child(4)').textContent", 892 | "url": "row.querySelector('td:nth-child(3) a:nth-child(2)').getAttribute('href')" 893 | }, 894 | "title_replacement": { 895 | ".": "", 896 | ":": "", 897 | "'": "", 898 | "&": "", 899 | "\"": "", 900 | "*": "" 901 | }, 902 | "source_is_in_sub_page": false 903 | }, 904 | "nyaa2": { 905 | "name": "Nyaa2", 906 | "enabled": true, 907 | "languages": [ 908 | "en" 909 | ], 910 | "base_url": "https://nyaa.si", 911 | "fallback_urls": [], 912 | "response_type": "text", 913 | "separator": "+", 914 | "movie": { 915 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 916 | "keywords": "{title} {year}" 917 | }, 918 | "episode": { 919 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 920 | "keywords": "{title} {episode}" 921 | }, 922 | "season": { 923 | "query": "/?f=0&c=1_0&q={query}&s=seeders&o=desc", 924 | "keywords": [ 925 | "{title} {seasonCode}", 926 | "{title} season" 927 | ] 928 | }, 929 | "anime": { 930 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 931 | "keywords": [ 932 | "{title} {absoluteNumber}", 933 | "{title} {episode}" 934 | ] 935 | }, 936 | "html_parser": { 937 | "row": "doc.querySelectorAll('.table-responsive tbody > tr')", 938 | "title": "row.querySelector('td:nth-child(2) a').textContent", 939 | "peers": "row.querySelector('td:nth-child(7)').textContent.trim()", 940 | "seeds": "row.querySelector('td:nth-child(6)').textContent.trim()", 941 | "size": "row.querySelector('td:nth-child(4)').textContent.trim()", 942 | "url": "row.querySelector('td:nth-child(3) a:nth-child(2)').getAttribute('href')" 943 | }, 944 | "title_replacement": { 945 | ".": "", 946 | ":": "", 947 | "'": "", 948 | "&": "", 949 | "\"": "", 950 | "*": "" 951 | }, 952 | "source_is_in_sub_page": false 953 | }, 954 | "limetorrents": { 955 | "name": "LimeTorrents", 956 | "enabled": true, 957 | "languages": [ 958 | "en" 959 | ], 960 | "base_url": "https://www.limetorrents.pro", 961 | "fallback_urls": [ 962 | "https://www.limetorrents.asia", 963 | "https://www.limetorrents.zone", 964 | "https://www.limetorrents.co", 965 | "https://www.limetor.com", 966 | "https://www.limetor.pro", 967 | "https://www.limetorrents.info", 968 | "https://limetorrents.unblockit.uno" 969 | ], 970 | "response_type": "text", 971 | "separator": "-", 972 | "movie": { 973 | "query": "/search/movies/{query}/seeds/1/", 974 | "keywords": "{title} {year}" 975 | }, 976 | "episode": { 977 | "query": "/search/tv/{query}/seeds/1/", 978 | "keywords": [ 979 | "{title} {episodeCode}", 980 | "{title} {year} {episodeCode}" 981 | ] 982 | }, 983 | "season": { 984 | "query": "/search/tv/{query}/seeds/1/", 985 | "keywords": [ 986 | "{title} {seasonCode}", 987 | "{title} season", 988 | "{title} {year} {seasonCode}", 989 | "{title} {year} season" 990 | ] 991 | }, 992 | "anime": { 993 | "query": "/search/anime/{query}/seeds/1/", 994 | "keywords": [ 995 | "{title} {absoluteNumber}", 996 | "{title} {episode}" 997 | ] 998 | }, 999 | "html_parser": { 1000 | "row": "doc.querySelectorAll('.table2 tbody tr:nth-child(n+2)')", 1001 | "title": "row.querySelector('.tt-name').textContent", 1002 | "peers": "row.querySelector('.tdseed').textContent.replace(',','')", 1003 | "seeds": "row.querySelector('.tdleech').textContent.replace(',','')", 1004 | "size": "row.querySelector('.tdnormal:nth-child(3)').textContent", 1005 | "url": "row.querySelector('.tt-name a:nth-child(2)').getAttribute('href')" 1006 | }, 1007 | "title_replacement": { 1008 | ".": "", 1009 | ":": "", 1010 | "'": "", 1011 | "&": "", 1012 | "\"": "", 1013 | "*": "" 1014 | }, 1015 | "source_is_in_sub_page": true 1016 | }, 1017 | "torrent9": { 1018 | "name": "Torrent9", 1019 | "enabled": true, 1020 | "languages": [ 1021 | "fr" 1022 | ], 1023 | "base_url": "https://torrent9.to", 1024 | "fallback_urls": [], 1025 | "response_type": "text", 1026 | "movie": { 1027 | "query": "/search_torrent/{query}.html", 1028 | "keywords": [ 1029 | "{title.fr} {year}", 1030 | "{title} {year}" 1031 | ] 1032 | }, 1033 | "episode": { 1034 | "query": "/search_torrent/{query}.html", 1035 | "keywords": [ 1036 | "{title} {episodeCode}", 1037 | "{title} {year} {episodeCode}" 1038 | ] 1039 | }, 1040 | "season": { 1041 | "query": "/search_torrent/{query}.html", 1042 | "keywords": [ 1043 | "{title} {seasonCode}", 1044 | "{title} season", 1045 | "{title} {year} {seasonCode}", 1046 | "{title} {year} season" 1047 | ] 1048 | }, 1049 | "html_parser": { 1050 | "row": "doc.querySelectorAll('.table-responsive tr')", 1051 | "title": "row.querySelector('td:nth-child(1) a').textContent", 1052 | "peers": "row.querySelector('td:nth-child(4)').textContent", 1053 | "seeds": "row.querySelector('td:nth-child(3)').textContent", 1054 | "size": "row.querySelector('td:nth-child(2)').textContent", 1055 | "url": "row.querySelector('td:nth-child(1) a').getAttribute('href')" 1056 | }, 1057 | "title_replacement": { 1058 | ".": "", 1059 | ":": "", 1060 | "'": "", 1061 | "&": "", 1062 | "\"": "", 1063 | "*": "" 1064 | }, 1065 | "source_is_in_sub_page": true 1066 | }, 1067 | "ilcorsaronero": { 1068 | "name": "IlCorsaroNero", 1069 | "enabled": true, 1070 | "languages": [ 1071 | "it" 1072 | ], 1073 | "base_url": "http://ilcorsaronero.link", 1074 | "fallback_urls": [ 1075 | "https://ilcorsaronero.pro", 1076 | "https://ilcorsaronero.fun" 1077 | ], 1078 | "response_type": "text", 1079 | "separator": "+", 1080 | "movie": { 1081 | "query": "/argh.php?search={query}", 1082 | "keywords": "{title} {year}" 1083 | }, 1084 | "episode": { 1085 | "query": "/argh.php?search={query}", 1086 | "keywords": [ 1087 | "{title.it} {episodeCode}", 1088 | "{title.original} {episodeCode}", 1089 | "{title.it} {year} {episodeCode}", 1090 | "{title.original} {year} {episodeCode}" 1091 | ] 1092 | }, 1093 | "season": { 1094 | "query": "/argh.php?search={query}", 1095 | "keywords": [ 1096 | "{title.it} {seasonCode}", 1097 | "{title.original} {seasonCode}", 1098 | "{title.it} season", 1099 | "{title.original} season", 1100 | "{title.it} {year} {seasonCode}", 1101 | "{title.original} {year} {seasonCode}", 1102 | "{title.it} {year} season", 1103 | "{title.original} {year} season" 1104 | ] 1105 | }, 1106 | "html_parser": { 1107 | "row": "doc.querySelectorAll('tr.odd, tr.odd2')", 1108 | "title": "row.querySelector('td:nth-child(2)').textContent", 1109 | "peers": "row.querySelector('td:nth-child(7)').textContent", 1110 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 1111 | "size": "row.querySelector('td:nth-child(3)').textContent", 1112 | "url": "'magnet:?xt=urn:btih:'+ row.querySelector('input').value" 1113 | }, 1114 | "title_replacement": { 1115 | ".": "", 1116 | ":": "", 1117 | "'": "", 1118 | "&": "", 1119 | "\"": "", 1120 | "*": "" 1121 | }, 1122 | "source_is_in_sub_page": false 1123 | }, 1124 | "1337x": { 1125 | "name": "1337X", 1126 | "enabled": true, 1127 | "languages": [ 1128 | "en" 1129 | ], 1130 | "base_url": "https://1337x.to", 1131 | "fallback_urls": [ 1132 | "https://1337x.st", 1133 | "https://x1337x.ws", 1134 | "https://x1337x.eu", 1135 | "https://x1337x.se", 1136 | "https://1337x.unblockit.uno" 1137 | ], 1138 | "response_type": "text", 1139 | "separator": "+", 1140 | "movie": { 1141 | "query": "/category-search/{query}/Movies/1/", 1142 | "keywords": "{title} {year}" 1143 | }, 1144 | "episode": { 1145 | "query": "/sort-category-search/{query}/TV/size/desc/1/", 1146 | "keywords": [ 1147 | "{title} {episodeCode}", 1148 | "{title} {year} {episodeCode}" 1149 | ] 1150 | }, 1151 | "season": { 1152 | "query": "/sort-category-search/{query}/TV/size/desc/1/", 1153 | "keywords": [ 1154 | "{title} {seasonCode}", 1155 | "{title} season", 1156 | "{title} {year} {seasonCode}", 1157 | "{title} {year} season" 1158 | ] 1159 | }, 1160 | "anime": { 1161 | "query": "/category-search/{query}/Anime/1/", 1162 | "keywords": [ 1163 | "{title} {absoluteNumber}", 1164 | "{title} {episode}" 1165 | ] 1166 | }, 1167 | "html_parser": { 1168 | "row": "doc.querySelectorAll('tbody > tr')", 1169 | "title": "row.querySelector('a:nth-child(2)').innerHTML", 1170 | "peers": "row.querySelector('.leeches').innerHTML", 1171 | "seeds": "row.querySelector('.seeds').innerHTML", 1172 | "size": "row.querySelector('tbody > tr .size').textContent.split('B')[0] + 'B'", 1173 | "url": "row.querySelector('a:nth-child(2)').getAttribute('href')" 1174 | }, 1175 | "title_replacement": { 1176 | ".": "", 1177 | ":": "", 1178 | "'": "", 1179 | "&": "", 1180 | "\"": "", 1181 | "*": "" 1182 | }, 1183 | "source_is_in_sub_page": true 1184 | }, 1185 | "bitsearch": { 1186 | "name": "BitSearch", 1187 | "enabled": true, 1188 | "languages": [ 1189 | "en" 1190 | ], 1191 | "base_url": "https://bitsearch.to", 1192 | "response_type": "text", 1193 | "separator": "+", 1194 | "movie": { 1195 | "query": "/search?q={query}&sort=seeders", 1196 | "keywords": "{title} {year}" 1197 | }, 1198 | "episode": { 1199 | "query": "/search?q={query}&sort=seeders", 1200 | "keywords": [ 1201 | "{title} {episodeCode}", 1202 | "{title} {year} {episodeCode}" 1203 | ] 1204 | }, 1205 | "season": { 1206 | "query": "/search?q={query}&sort=seeders", 1207 | "keywords": [ 1208 | "{title} {seasonCode}", 1209 | "{title} season", 1210 | "{title} {year} {seasonCode}", 1211 | "{title} {year} season" 1212 | ] 1213 | }, 1214 | "anime": { 1215 | "query": "/search?q={query}&sort=seeders", 1216 | "keywords": [ 1217 | "{title} {absoluteNumber}", 1218 | "{title} {episode}" 1219 | ] 1220 | }, 1221 | "html_parser": { 1222 | "row": "doc.querySelectorAll('.search-result')", 1223 | "title": "row.querySelector('.title a').textContent", 1224 | "peers": "row.querySelector('.stats div:nth-child(4)').textContent.trim().replace('.','').replace('K','00')", 1225 | "seeds": "row.querySelector('.stats div:nth-child(3)').textContent.trim().replace('.','').replace('K','00')", 1226 | "size": "row.querySelector('.stats div:nth-child(2)').textContent", 1227 | "url": "row.querySelector('.dl-magnet').getAttribute('href')" 1228 | }, 1229 | "title_replacement": { 1230 | ".": "", 1231 | ":": "", 1232 | "'": "", 1233 | "&": "", 1234 | "\"": "", 1235 | "*": "" 1236 | }, 1237 | "source_is_in_sub_page": false 1238 | }, 1239 | "oxtorrent": { 1240 | "name": "OxTorrent", 1241 | "enabled": true, 1242 | "languages": [ 1243 | "fr" 1244 | ], 1245 | "base_url": "https://oxtorrent.pe", 1246 | "fallback_urls": [], 1247 | "response_type": "text", 1248 | "separator": "%20", 1249 | "movie": { 1250 | "query": "/recherche/{query}", 1251 | "keywords": "{title} {year}" 1252 | }, 1253 | "episode": { 1254 | "query": "/recherche/{query}", 1255 | "keywords": [ 1256 | "{title} {episodeCode}", 1257 | "{title} {year} {episodeCode}" 1258 | ] 1259 | }, 1260 | "season": { 1261 | "query": "/recherche/{query}", 1262 | "keywords": [ 1263 | "{title} {seasonCode}", 1264 | "{title} season", 1265 | "{title} {year} {seasonCode}", 1266 | "{title} {year} season" 1267 | ] 1268 | }, 1269 | "anime": { 1270 | "query": "/recherche/{query}", 1271 | "keywords": [ 1272 | "{title} {absoluteNumber}", 1273 | "{title} {episode}" 1274 | ] 1275 | }, 1276 | "html_parser": { 1277 | "row": "doc.querySelectorAll('tbody > tr')", 1278 | "title": "row.querySelector('a:nth-child(2)').innerHTML", 1279 | "peers": "row.querySelector(':nth-child(4)').textContent.trim()", 1280 | "seeds": "row.querySelector(':nth-child(3)').textContent.trim()", 1281 | "size": "row.querySelector('td:nth-child(2)').textContent.trim()", 1282 | "url": "row.querySelector('a:nth-child(2)').getAttribute('href')" 1283 | }, 1284 | "title_replacement": { 1285 | ".": "", 1286 | ":": "", 1287 | "'": "", 1288 | "&": "", 1289 | "\"": "", 1290 | "*": "" 1291 | }, 1292 | "source_is_in_sub_page": true 1293 | }, 1294 | "pirateiro": { 1295 | "name": "Pirateiro", 1296 | "enabled": true, 1297 | "languages": [ 1298 | "en" 1299 | ], 1300 | "base_url": "http://pirateiro.com", 1301 | "fallback_urls": [ 1302 | "https://pirateiro.unblockit.uno" 1303 | ], 1304 | "response_type": "text", 1305 | "movie": { 1306 | "query": "/torrents/?c300=1&search={query}&orderby=tamanho", 1307 | "keywords": "{title} {year}" 1308 | }, 1309 | "episode": { 1310 | "query": "/torrents/?search={query}&c700=1&qualityvideo=0&audiolanguage=0&subtitle=0&imdbrating=0", 1311 | "keywords": [ 1312 | "{title} {episodeCode}", 1313 | "{title} {year} {episodeCode}" 1314 | ] 1315 | }, 1316 | "season": { 1317 | "query": "/torrents/?search={query}&c700=1&qualityvideo=0&audiolanguage=0&subtitle=0&imdbrating=0", 1318 | "keywords": [ 1319 | "{title} {seasonCode}", 1320 | "{title} season", 1321 | "{title} {year} {seasonCode}", 1322 | "{title} {year} season" 1323 | ] 1324 | }, 1325 | "anime": { 1326 | "query": "/torrents/?search={query}&c100=1&c700=1&qualityvideo=0&audiolanguage=0&subtitle=0&imdbrating=0", 1327 | "keywords": [ 1328 | "{title} {absoluteNumber}", 1329 | "{title} {episode}" 1330 | ] 1331 | }, 1332 | "html_parser": { 1333 | "row": "doc.querySelectorAll('tr.impar')", 1334 | "title": "row.querySelector('a > b').textContent", 1335 | "peers": "row.querySelector('td:nth-child(6) > b > font').textContent.replace(' ', '')", 1336 | "seeds": "row.querySelector('b > font').textContent.replace(' ', '')", 1337 | "size": "row.querySelector('td > font').textContent", 1338 | "url": "row.querySelector('a.imagnet.icon16').getAttribute('href')" 1339 | }, 1340 | "source_is_in_sub_page": false 1341 | }, 1342 | "7torr": { 1343 | "name": "SevenTorrents", 1344 | "enabled": true, 1345 | "languages": [ 1346 | "en" 1347 | ], 1348 | "base_url": "http://7torr.com", 1349 | "fallback_urls": [ 1350 | "https://seventorrents.unblockit.uno" 1351 | ], 1352 | "response_type": "text", 1353 | "separator": "+", 1354 | "movie": { 1355 | "query": "/search?q={query}", 1356 | "keywords": "{title} {year}" 1357 | }, 1358 | "episode": { 1359 | "query": "/search?q={query}", 1360 | "keywords": [ 1361 | "{title} {episodeCode}", 1362 | "{title} {year} {episodeCode}" 1363 | ] 1364 | }, 1365 | "season": { 1366 | "query": "/search?q={query}", 1367 | "keywords": [ 1368 | "{title} {seasonCode}", 1369 | "{title} season", 1370 | "{title} {year} {seasonCode}", 1371 | "{title} {year} season" 1372 | ] 1373 | }, 1374 | "anime": { 1375 | "query": "/search?q={query}", 1376 | "keywords": [ 1377 | "{title} {absoluteNumber}", 1378 | "{title} {episode}" 1379 | ] 1380 | }, 1381 | "html_parser": { 1382 | "row": "doc.querySelectorAll('tbody tr.row')", 1383 | "title": "row.querySelector('td:nth-child(1) .rtitle a').textContent", 1384 | "peers": "row.querySelector('td:nth-child(5)').textContent", 1385 | "seeds": "row.querySelector('td:nth-child(4)').textContent", 1386 | "size": "row.querySelector('td:nth-child(2)').textContent", 1387 | "url": "row.querySelector('td:nth-child(6) a').getAttribute('href')" 1388 | }, 1389 | "title_replacement": { 1390 | ".": "", 1391 | ":": "", 1392 | "'": "", 1393 | "&": "", 1394 | "\"": "", 1395 | "*": "" 1396 | }, 1397 | "source_is_in_sub_page": false 1398 | }, 1399 | "animetosho": { 1400 | "name": "AnimeTosho", 1401 | "enabled": true, 1402 | "languages": [ 1403 | "en" 1404 | ], 1405 | "base_url": "https://animetosho.org", 1406 | "fallback_urls": [], 1407 | "response_type": "text", 1408 | "separator": "+", 1409 | "movie": { 1410 | "query": "/search?q={query}", 1411 | "keywords": "{title} {year}" 1412 | }, 1413 | "episode": { 1414 | "query": "/search?q={query}", 1415 | "keywords": [ 1416 | "{title} {absoluteNumber}", 1417 | "{title} {episode}" 1418 | ] 1419 | }, 1420 | "season": { 1421 | "query": "/search?q={query}", 1422 | "keywords": [ 1423 | "{title} {seasonCode}", 1424 | "{title} season" 1425 | ] 1426 | }, 1427 | "anime": { 1428 | "query": "/search?q={query}", 1429 | "keywords": [ 1430 | "{title} {absoluteNumber}", 1431 | "{title} {episode}" 1432 | ] 1433 | }, 1434 | "html_parser": { 1435 | "row": "doc.querySelectorAll('.home_list_entry')", 1436 | "title": "row.querySelector('.link a').textContent", 1437 | "peers": "row.querySelector('span:nth-child(5)').textContent.match(/\\d+/g)[1]", 1438 | "seeds": "row.querySelector('span:nth-child(5)').textContent.match(/\\d+/g)[0]", 1439 | "size": "row.querySelector('.size').textContent", 1440 | "url": "row.querySelector('.links a:nth-child(4)').getAttribute('href')" 1441 | }, 1442 | "title_replacement": { 1443 | ".": "", 1444 | ":": "", 1445 | "'": "", 1446 | "&": "", 1447 | "\"": "", 1448 | "*": "" 1449 | }, 1450 | "source_is_in_sub_page": false 1451 | }, 1452 | "torlock": { 1453 | "name": "TorLock", 1454 | "enabled": true, 1455 | "languages": [ 1456 | "en" 1457 | ], 1458 | "base_url": "https://www.torlock.com", 1459 | "fallback_urls": [ 1460 | "https://torlock.unblockit.uno" 1461 | ], 1462 | "response_type": "text", 1463 | "separator": "-", 1464 | "movie": { 1465 | "query": "/movie/torrents/{query}.html?", 1466 | "keywords": "{title} {year}" 1467 | }, 1468 | "episode": { 1469 | "query": "/television/torrents/{query}.html?", 1470 | "keywords": [ 1471 | "{title} {episodeCode}", 1472 | "{title} {year} {episodeCode}" 1473 | ] 1474 | }, 1475 | "season": { 1476 | "query": "/television/torrents/{query}.html?", 1477 | "keywords": [ 1478 | "{title} {seasonCode}", 1479 | "{title} season", 1480 | "{title} {year} {seasonCode}", 1481 | "{title} {year} season" 1482 | ] 1483 | }, 1484 | "anime": { 1485 | "query": "/anime/torrents/{query}.html?", 1486 | "keywords": [ 1487 | "{title} {absoluteNumber}", 1488 | "{title} {episode}" 1489 | ] 1490 | }, 1491 | "html_parser": { 1492 | "row": "doc.querySelectorAll('tbody tr')", 1493 | "title": "row.querySelector('td:nth-child(1) a b').textContent", 1494 | "peers": "row.querySelector('.tdl').textContent", 1495 | "seeds": "row.querySelector('.tul').textContent", 1496 | "size": "row.querySelector('.ts').textContent", 1497 | "url": "row.querySelector('td:nth-child(1) a').getAttribute('href')" 1498 | }, 1499 | "title_replacement": { 1500 | ".": "", 1501 | ":": "", 1502 | "'": "", 1503 | "&": "", 1504 | "\"": "", 1505 | "*": "" 1506 | }, 1507 | "source_is_in_sub_page": true 1508 | }, 1509 | "anidex": { 1510 | "name": "AniDex", 1511 | "enabled": true, 1512 | "languages": [ 1513 | "en" 1514 | ], 1515 | "base_url": "https://anidex.info", 1516 | "fallback_urls": [], 1517 | "response_type": "text", 1518 | "separator": "+", 1519 | "movie": { 1520 | "query": "/?q={query}", 1521 | "keywords": "{title} {year}" 1522 | }, 1523 | "episode": { 1524 | "query": "/?q={query}", 1525 | "keywords": [ 1526 | "{title} {absoluteNumber}", 1527 | "{title} {episode}" 1528 | ] 1529 | }, 1530 | "season": { 1531 | "query": "/?q={query}", 1532 | "keywords": [ 1533 | "{title} {seasonCode}", 1534 | "{title} season" 1535 | ] 1536 | }, 1537 | "anime": { 1538 | "query": "/?q={query}", 1539 | "keywords": [ 1540 | "{title} {absoluteNumber}", 1541 | "{title} {episode}" 1542 | ] 1543 | }, 1544 | "html_parser": { 1545 | "row": "doc.querySelectorAll('tbody tr')", 1546 | "title": "row.querySelector('td:nth-child(3) a').textContent", 1547 | "peers": "row.querySelector('span:nth-child(10)').textContent", 1548 | "seeds": "row.querySelector('td:nth-child(9)').textContent", 1549 | "size": "row.querySelector('td:nth-child(7)').textContent", 1550 | "url": "row.querySelector('td:nth-child(6) a').getAttribute('href')" 1551 | }, 1552 | "title_replacement": { 1553 | ".": "", 1554 | ":": "", 1555 | "'": "", 1556 | "&": "", 1557 | "\"": "", 1558 | "*": "" 1559 | }, 1560 | "source_is_in_sub_page": false 1561 | }, 1562 | "solidtorrents": { 1563 | "name": "Solidtorrents", 1564 | "enabled": true, 1565 | "languages": [ 1566 | "en" 1567 | ], 1568 | "base_url": "https://solidtorrents.net/api/v1/search?q={query}&category=video&sort=seeders", 1569 | "response_type": "json", 1570 | "movie": { 1571 | "query": "", 1572 | "keywords": "{title} {year}" 1573 | }, 1574 | "episode": { 1575 | "query": "", 1576 | "keywords": "{title} {episodeCode}" 1577 | }, 1578 | "season": { 1579 | "query": "", 1580 | "keywords": [ 1581 | "{title} {seasonCode}", 1582 | "{title} season" 1583 | ] 1584 | }, 1585 | "anime": { 1586 | "query": "", 1587 | "keywords": [ 1588 | "{title} {absoluteNumber}", 1589 | "{title} {episode}" 1590 | ] 1591 | }, 1592 | "json_format": { 1593 | "results": "results", 1594 | "url": "magnet", 1595 | "title": "title", 1596 | "seeds": "swarm.seeders", 1597 | "peers": "swarm.leechers", 1598 | "size": "size" 1599 | }, 1600 | "title_replacement": { 1601 | ".": "", 1602 | ":": "", 1603 | "'": "", 1604 | "&": "" 1605 | } 1606 | }, 1607 | "btdb": { 1608 | "name": "Btdb", 1609 | "enabled": true, 1610 | "languages": [ 1611 | "en" 1612 | ], 1613 | "base_url": "https://btdb.eu", 1614 | "fallback_urls": [], 1615 | "response_type": "text", 1616 | "separator": "%20", 1617 | "movie": { 1618 | "query": "/search/{query}/0/?sort=popular", 1619 | "keywords": "{title} {year}" 1620 | }, 1621 | "episode": { 1622 | "query": "/search/{query}/0/?sort=popular", 1623 | "keywords": "{title} {episodeCode}" 1624 | }, 1625 | "season": { 1626 | "query": "/search/{query}/0/?sort=popular", 1627 | "keywords": [ 1628 | "{title} {seasonCode}", 1629 | "{title} season" 1630 | ] 1631 | }, 1632 | "anime": { 1633 | "query": "/search/{query}/0/?sort=popular", 1634 | "keywords": "{title} {absoluteNumber}" 1635 | }, 1636 | "html_parser": { 1637 | "row": "doc.querySelectorAll('.card-body .media')", 1638 | "title": "row.querySelector('.media-body .item-title').textContent", 1639 | "peers": "row.querySelector('.item-meta-info small:nth-child(4) strong').textContent", 1640 | "seeds": "row.querySelector('.item-meta-info small:nth-child(3) strong').textContent", 1641 | "size": "row.querySelector('.item-meta-info small:nth-child(1) strong').textContent", 1642 | "url": "row.querySelector('.media-right a:nth-child(1)').getAttribute('href')" 1643 | }, 1644 | "title_replacement": { 1645 | ".": "", 1646 | ":": "", 1647 | "'": "", 1648 | "&": "" 1649 | }, 1650 | "source_is_in_sub_page": false 1651 | }, 1652 | "yourbittorrent": { 1653 | "name": "YourBittorent", 1654 | "enabled": true, 1655 | "languages": [ 1656 | "en" 1657 | ], 1658 | "base_url": "https://yourbittorrent.com", 1659 | "fallback_urls": [ 1660 | "https://yourbittorrent2.com" 1661 | ], 1662 | "response_type": "text", 1663 | "movie": { 1664 | "keywords": "{title} {year}", 1665 | "query": "/?v=&c=1&q={query}" 1666 | }, 1667 | "episode": { 1668 | "keywords": "{title} {episodeCode}", 1669 | "query": "/?v=&c=3&q={query}" 1670 | }, 1671 | "season": { 1672 | "keywords": "{title} {seasonCode}", 1673 | "query": "/?v=&c=3&q={query}" 1674 | }, 1675 | "anime": { 1676 | "keywords": "{title} {episode}", 1677 | "query": "/?v=&c=&q={query}" 1678 | }, 1679 | "html_parser": { 1680 | "peers": "row.querySelector('td:nth-child(6)').textContent", 1681 | "row": "doc.querySelectorAll('tr.table-default')", 1682 | "seeds": "row.querySelector('td:nth-child(7)').textContent", 1683 | "size": "row.querySelector('td:nth-child(4)').textContent", 1684 | "title": "row.querySelector('td:nth-child(2)').textContent", 1685 | "url": "row.querySelector('td:nth-child(3) a:nth-child(3)').getAttribute('href')" 1686 | }, 1687 | "title_replacement": { 1688 | "&": "", 1689 | "'": "", 1690 | ".": "", 1691 | ":": "" 1692 | } 1693 | } 1694 | } -------------------------------------------------------------------------------- /magnify.txt: -------------------------------------------------------------------------------- 1 | { 2 | "dmm": { 3 | "name": "DMM", 4 | "enabled": true, 5 | "base_url": "https://magnify.pages.dev/scrapers/dmm", 6 | "response_type": "json", 7 | "movie": { 8 | "query": "/filtered?ImdbId={query}", 9 | "keywords": "{imdbId}" 10 | }, 11 | "episode": { 12 | "query": "/filtered?ImdbId={query}&Season={season}&Episode={episode}", 13 | "keywords": "{showImdbId}" 14 | }, 15 | "anime": { 16 | "query": "/filtered?ImdbId={query}&Season={season}&Episode={episode}", 17 | "keywords": "{showImdbId}" 18 | }, 19 | "json_format": { 20 | "title": "raw_title", 21 | "size": "size", 22 | "hash": "info_hash" 23 | }, 24 | "time_to_wait_between_each_request_ms": 300, 25 | "time_to_wait_on_too_many_request_ms": 5000, 26 | "timeout_ms": 8000, 27 | "max_limit": 0, 28 | "host_status": "public server" 29 | }, 30 | "mediafusion": { 31 | "name": "MediaFusion", 32 | "enabled": true, 33 | "base_url": "https://magnify.pages.dev/scrapers/mediafusion", 34 | "response_type": "json", 35 | "movie": { 36 | "query": "/stream/movie/{query}.json", 37 | "keywords": "{imdbId}" 38 | }, 39 | "episode": { 40 | "query": "/stream/series/{query}:{season}:{episode}.json", 41 | "keywords": "{showImdbId}" 42 | }, 43 | "anime": { 44 | "query": "/stream/series/{query}:{season}:{episode}.json", 45 | "keywords": "{showImdbId}" 46 | }, 47 | "json_format": { 48 | "results": "streams", 49 | "title": "description", 50 | "hash": "infoHash" 51 | }, 52 | "time_to_wait_between_each_request_ms": 300, 53 | "time_to_wait_on_too_many_request_ms": 5000, 54 | "timeout_ms": 8000, 55 | "max_limit": 0, 56 | "host_status": "public server" 57 | }, 58 | "knightcrawler": { 59 | "name": "KnightCrawler", 60 | "enabled": true, 61 | "base_url": "https://magnify.pages.dev/scrapers/knightcrawler", 62 | "response_type": "json", 63 | "movie": { 64 | "query": "/qualityfilter=scr,cam|sort=qualitysize/stream/movie/{query}.json", 65 | "keywords": "{imdbId}" 66 | }, 67 | "episode": { 68 | "query": "/sort=qualitysize/stream/series/{query}:{season}:{episode}.json", 69 | "keywords": "{showImdbId}" 70 | }, 71 | "anime": { 72 | "query": "/sort=qualitysize/stream/series/{query}:{season}:{episode}.json", 73 | "keywords": "{showImdbId}" 74 | }, 75 | "json_format": { 76 | "results": "streams", 77 | "title": "title", 78 | "hash": "infoHash" 79 | }, 80 | "time_to_wait_between_each_request_ms": 300, 81 | "time_to_wait_on_too_many_request_ms": 5000, 82 | "timeout_ms": 8000, 83 | "max_limit": 0, 84 | "host_status": "public server" 85 | }, 86 | "torrentio": { 87 | "name": "Torrentio", 88 | "enabled": true, 89 | "base_url": "https://magnify.pages.dev/scrapers/torrentio", 90 | "response_type": "json", 91 | "movie": { 92 | "query": "/providers=yts,rarbg,1337x,thepiratebay,kickasstorrents,torrentgalaxy,magnetdl|qualityfilter=scr,cam|sort=qualitysize/stream/movie/{query}.json", 93 | "keywords": "{imdbId}" 94 | }, 95 | "episode": { 96 | "query": "/providers=eztv,rarbg,1337x,thepiratebay,kickasstorrents,torrentgalaxy,magnetdl|sort=qualitysize/stream/series/{query}:{season}:{episode}.json", 97 | "keywords": "{showImdbId}" 98 | }, 99 | "anime": { 100 | "query": "/providers=eztv,horriblesubs,nyaasi,tokyotosho,anidex|sort=qualitysize/stream/series/{query}:{season}:{episode}.json", 101 | "keywords": "{showImdbId}" 102 | }, 103 | "json_format": { 104 | "results": "streams", 105 | "title": "title", 106 | "hash": "infoHash" 107 | }, 108 | "time_to_wait_between_each_request_ms": 300, 109 | "time_to_wait_on_too_many_request_ms": 5000, 110 | "timeout_ms": 8000, 111 | "max_limit": 50, 112 | "host_status": "public server" 113 | }, 114 | "torrents-csv": { 115 | "name": "TorrentsCSV", 116 | "enabled": true, 117 | "base_url": "https://magnify.pages.dev/scrapers/torrents-csv", 118 | "response_type": "json", 119 | "separator": "+", 120 | "movie": { 121 | "query": "/search?q={query}&size=100", 122 | "keywords": [ 123 | "{title} {year}", 124 | "{title}" 125 | ] 126 | }, 127 | "episode": { 128 | "query": "/search?q={query}&size=100", 129 | "keywords": "{title} {episodeCode}" 130 | }, 131 | "season": { 132 | "query": "/search?q={query}&size=100", 133 | "keywords": [ 134 | "{title} {seasonCode}", 135 | "{title} season" 136 | ] 137 | }, 138 | "anime": { 139 | "query": "/search?q={query}&size=100", 140 | "keywords": "{title} {episode}" 141 | }, 142 | "json_format": { 143 | "results": "torrents", 144 | "title": "name", 145 | "size": "size_bytes", 146 | "seeds": "seeders", 147 | "peers": "leechers", 148 | "hash": "infohash" 149 | }, 150 | "time_to_wait_between_each_request_ms": 300, 151 | "time_to_wait_on_too_many_request_ms": 5000, 152 | "timeout_ms": 8000, 153 | "max_limit": 100, 154 | "host_status": "public server" 155 | }, 156 | "piratebay_primary": { 157 | "name": "PirateBay", 158 | "enabled": true, 159 | "base_url": "https://magnify.pages.dev/scrapers/piratebay", 160 | "response_type": "json", 161 | "separator": "+", 162 | "movie": { 163 | "query": "/q.php?q={query}&cat=211", 164 | "keywords": [ 165 | "{title} {year}", 166 | "{title}" 167 | ] 168 | }, 169 | "episode": { 170 | "query": "/q.php?q={query}&cat=212", 171 | "keywords": "{title} {episodeCode}" 172 | }, 173 | "season": { 174 | "query": "/q.php?q={query}&cat=212", 175 | "keywords": [ 176 | "{title} {seasonCode}", 177 | "{title} season" 178 | ] 179 | }, 180 | "anime": { 181 | "query": "/q.php?q={query}&cat=212", 182 | "keywords": "{title} {episode}" 183 | }, 184 | "json_format": { 185 | "title": "name", 186 | "size": "size", 187 | "seeds": "seeders", 188 | "peers": "leechers", 189 | "hash": "info_hash" 190 | }, 191 | "time_to_wait_between_each_request_ms": 300, 192 | "time_to_wait_on_too_many_request_ms": 5000, 193 | "timeout_ms": 8000, 194 | "max_limit": 100, 195 | "host_status": "public server" 196 | }, 197 | "torlock_primary": { 198 | "name": "Torlock", 199 | "enabled": true, 200 | "base_url": "https://magnify.pages.dev/scrapers/torlock", 201 | "response_type": "text", 202 | "separator": "-", 203 | "movie": { 204 | "query": "/movie/torrents/{query}/?sort=size&page=1", 205 | "keywords": [ 206 | "{title} {year}", 207 | "{title}" 208 | ] 209 | }, 210 | "episode": { 211 | "query": "/television/torrents/{query}/?sort=size&page=1", 212 | "keywords": "{title} {episodeCode}" 213 | }, 214 | "season": { 215 | "query": "/television/torrents/{query}/?sort=size&page=1", 216 | "keywords": [ 217 | "{title} {seasonCode}", 218 | "{title} season" 219 | ] 220 | }, 221 | "anime": { 222 | "query": "/anime/torrents/{query}/?sort=size&page=1", 223 | "keywords": "{title} {episode}" 224 | }, 225 | "html_parser": { 226 | "row": "doc.querySelectorAll('tbody tr')", 227 | "title": "row.querySelector('td:nth-child(1) a b').textContent", 228 | "size": "row.querySelector('.ts').textContent", 229 | "seeds": "row.querySelector('.tul').textContent", 230 | "peers": "row.querySelector('.tdl').textContent", 231 | "url": "row.querySelector('td:nth-child(1) a').getAttribute('href')" 232 | }, 233 | "source_is_in_sub_page": true, 234 | "time_to_wait_between_each_request_ms": 300, 235 | "time_to_wait_on_too_many_request_ms": 5000, 236 | "timeout_ms": 8000, 237 | "max_limit": 100, 238 | "host_status": "public server" 239 | }, 240 | "cloudtorrents_primary": { 241 | "name": "CloudTorrrents", 242 | "enabled": true, 243 | "base_url": "https://magnify.pages.dev/scrapers/cloudtorrents", 244 | "response_type": "text", 245 | "separator": "+", 246 | "movie": { 247 | "query": "/search?query={query}&torrent_type=5&ordering=-size&offset=0", 248 | "keywords": [ 249 | "{title} {year}", 250 | "{title}" 251 | ] 252 | }, 253 | "episode": { 254 | "query": "/search?query={query}&torrent_type=8&ordering=-size&offset=0", 255 | "keywords": "{title} {episodeCode}" 256 | }, 257 | "season": { 258 | "query": "/search?query={query}&torrent_type=8&ordering=-size&offset=0", 259 | "keywords": [ 260 | "{title} {seasonCode}", 261 | "{title} season" 262 | ] 263 | }, 264 | "anime": { 265 | "query": "/search?query={query}&torrent_type=1&ordering=-size&offset=0", 266 | "keywords": "{title} {episode}" 267 | }, 268 | "html_parser": { 269 | "row": "doc.querySelectorAll('tbody tr')", 270 | "title": "row.querySelector('.torrent-name').textContent.trim()", 271 | "size": "row.querySelector('td:nth-child(2)').textContent.trim()", 272 | "seeds": "row.querySelector('td:nth-child(4)').textContent.trim()", 273 | "peers": "row.querySelector('td:nth-child(5)').textContent.trim()", 274 | "url": "row.querySelector('a[href^=\"magnet:\"]').getAttribute('href')" 275 | }, 276 | "time_to_wait_between_each_request_ms": 300, 277 | "time_to_wait_on_too_many_request_ms": 5000, 278 | "timeout_ms": 8000, 279 | "max_limit": 50, 280 | "host_status": "public server" 281 | }, 282 | "solidtorrents_primary": { 283 | "name": "SolidTorrents", 284 | "enabled": true, 285 | "base_url": "https://magnify.pages.dev/scrapers/solidtorrents", 286 | "response_type": "text", 287 | "separator": "+", 288 | "movie": { 289 | "query": "/search?q={query}&sort=size&page=1", 290 | "keywords": [ 291 | "{title} {year}", 292 | "{title}" 293 | ] 294 | }, 295 | "episode": { 296 | "query": "/search?q={query}&sort=size&page=1", 297 | "keywords": "{title} {episodeCode}" 298 | }, 299 | "season": { 300 | "query": "/search?q={query}&sort=size&page=1", 301 | "keywords": [ 302 | "{title} {seasonCode}", 303 | "{title} season" 304 | ] 305 | }, 306 | "anime": { 307 | "query": "/search?q={query}&sort=size&page=1", 308 | "keywords": "{title} {episode}" 309 | }, 310 | "html_parser": { 311 | "row": "doc.querySelectorAll('.results dl')", 312 | "title": "row.querySelector('dt a').textContent", 313 | "size": "row.querySelector('span:nth-child(3)').textContent", 314 | "seeds": "row.querySelector('span:nth-child(4)').textContent", 315 | "peers": "row.querySelector('span:nth-child(5)').textContent", 316 | "url": "row.querySelector('dd span a').getAttribute('href')" 317 | }, 318 | "time_to_wait_between_each_request_ms": 300, 319 | "time_to_wait_on_too_many_request_ms": 5000, 320 | "timeout_ms": 8000, 321 | "max_limit": 50, 322 | "host_status": "public server" 323 | }, 324 | "kickass_primary": { 325 | "name": "KickassTorrents", 326 | "enabled": true, 327 | "base_url": "https://magnify.pages.dev/scrapers/kickass", 328 | "response_type": "text", 329 | "separator": "+", 330 | "movie": { 331 | "query": "/usearch/{query}/1/", 332 | "keywords": [ 333 | "{title} {year}", 334 | "{title}" 335 | ] 336 | }, 337 | "episode": { 338 | "query": "/usearch/{query}/1/", 339 | "keywords": "{title} {episodeCode}" 340 | }, 341 | "season": { 342 | "query": "/usearch/{query}/1/", 343 | "keywords": [ 344 | "{title} {seasonCode}", 345 | "{title} season" 346 | ] 347 | }, 348 | "anime": { 349 | "query": "/usearch/{query}/1/", 350 | "keywords": "{title} {episode}" 351 | }, 352 | "html_parser": { 353 | "row": "doc.querySelectorAll('table:nth-child(2) tbody tr:not(.firstr)')", 354 | "title": "row.querySelector('.cellMainLink').textContent", 355 | "size": "row.querySelector('.nobr').textContent", 356 | "seeds": "row.querySelectorAll('td')[3].textContent", 357 | "peers": "row.querySelectorAll('td')[4].textContent", 358 | "url": "decodeURIComponent(row.querySelectorAll('a')[1].href.split('?url=')[1])" 359 | }, 360 | "time_to_wait_between_each_request_ms": 300, 361 | "time_to_wait_on_too_many_request_ms": 5000, 362 | "timeout_ms": 8000, 363 | "max_limit": 50, 364 | "host_status": "public server" 365 | }, 366 | "glotorrents_primary": { 367 | "name": "GloTorrents", 368 | "enabled": true, 369 | "base_url": "https://magnify.pages.dev/scrapers/glotorrents", 370 | "response_type": "text", 371 | "separator": "+", 372 | "movie": { 373 | "query": "/search_results.php?search={query}&cat=1&incldead=1&sort=size&order=desc&page=0", 374 | "keywords": [ 375 | "{title} {year}", 376 | "{title}" 377 | ] 378 | }, 379 | "episode": { 380 | "query": "/search_results.php?search={query}&cat=41&incldead=1&sort=size&order=desc&page=0", 381 | "keywords": "{title} {episodeCode}" 382 | }, 383 | "season": { 384 | "query": "/search_results.php?search={query}&cat=41&incldead=1&sort=size&order=desc&page=0", 385 | "keywords": [ 386 | "{title} {seasonCode}", 387 | "{title} season" 388 | ] 389 | }, 390 | "anime": { 391 | "query": "/search_results.php?search={query}&cat=28&incldead=1&sort=size&order=desc&page=0", 392 | "keywords": "{title} {episode}" 393 | }, 394 | "html_parser": { 395 | "row": "doc.querySelectorAll('table.ttable_headinner tbody tr.t-row:nth-child(odd)')", 396 | "title": "row.querySelector('td:nth-child(2) a:nth-child(2)').textContent", 397 | "peers": "row.querySelector('td:nth-child(7)').textContent", 398 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 399 | "size": "row.querySelector('td:nth-child(5)').textContent", 400 | "url": "row.querySelector('td:nth-child(4) a').getAttribute('href')" 401 | }, 402 | "time_to_wait_between_each_request_ms": 300, 403 | "time_to_wait_on_too_many_request_ms": 5000, 404 | "timeout_ms": 8000, 405 | "max_limit": 45, 406 | "host_status": "public server" 407 | }, 408 | "torrentquest_primary": { 409 | "name": "TorrentQuest", 410 | "enabled": true, 411 | "base_url": "https://magnify.pages.dev/scrapers/torrentquest", 412 | "response_type": "text", 413 | "separator": "-", 414 | "movie": { 415 | "query": "/{titleFirstLetter}/{query}/size/desc/1/", 416 | "keywords": [ 417 | "{title} {year}", 418 | "{title}" 419 | ] 420 | }, 421 | "episode": { 422 | "query": "/{titleFirstLetter}/{query}/size/desc/1/", 423 | "keywords": "{title} {episodeCode}" 424 | }, 425 | "season": { 426 | "query": "/{titleFirstLetter}/{query}/size/desc/1/", 427 | "keywords": [ 428 | "{title} {seasonCode}", 429 | "{title} season" 430 | ] 431 | }, 432 | "anime": { 433 | "query": "/{titleFirstLetter}/{query}/size/desc/1/", 434 | "keywords": "{title} {episode}" 435 | }, 436 | "html_parser": { 437 | "row": "doc.querySelectorAll('table.download tbody tr:nth-child(odd)')", 438 | "title": "row.querySelector('td:nth-child(2) a').getAttribute('title')", 439 | "size": "row.querySelector('td:nth-child(6)').textContent", 440 | "seeds": "row.querySelector('td:nth-child(7)').textContent", 441 | "peers": "row.querySelector('td:nth-child(8)').textContent", 442 | "url": "row.querySelector('td:nth-child(1) a').getAttribute('href')" 443 | }, 444 | "time_to_wait_between_each_request_ms": 300, 445 | "time_to_wait_on_too_many_request_ms": 5000, 446 | "timeout_ms": 8000, 447 | "max_limit": 40, 448 | "host_status": "public server" 449 | }, 450 | "1337x_primary": { 451 | "name": "1337x", 452 | "enabled": true, 453 | "base_url": "https://magnify.pages.dev/scrapers/1337x", 454 | "response_type": "text", 455 | "separator": "+", 456 | "movie": { 457 | "query": "/sort-category-search/{query}/Movies/size/desc/1/", 458 | "keywords": [ 459 | "{title} {year}", 460 | "{title}" 461 | ] 462 | }, 463 | "episode": { 464 | "query": "/sort-category-search/{query}/TV/size/desc/1/", 465 | "keywords": "{title} {episodeCode}" 466 | }, 467 | "season": { 468 | "query": "/sort-category-search/{query}/TV/size/desc/1/", 469 | "keywords": [ 470 | "{title} {seasonCode}", 471 | "{title} season" 472 | ] 473 | }, 474 | "anime": { 475 | "query": "/sort-category-search/{query}/Anime/size/desc/1/", 476 | "keywords": "{title} {episode}" 477 | }, 478 | "html_parser": { 479 | "row": "doc.querySelectorAll('tbody > tr')", 480 | "title": "row.querySelector('a:nth-child(2)').innerHTML", 481 | "size": "row.querySelector('tbody > tr .size').textContent.split('B')[0]+'B'", 482 | "seeds": "row.querySelector('.seeds').innerHTML", 483 | "peers": "row.querySelector('.leeches').innerHTML", 484 | "url": "row.querySelector('a:nth-child(2)').getAttribute('href')" 485 | }, 486 | "source_is_in_sub_page": true, 487 | "time_to_wait_between_each_request_ms": 300, 488 | "time_to_wait_on_too_many_request_ms": 5000, 489 | "timeout_ms": 8000, 490 | "max_limit": 40, 491 | "host_status": "public server" 492 | }, 493 | "nyaa_primary": { 494 | "name": "Nyaa", 495 | "enabled": true, 496 | "base_url": "https://magnify.pages.dev/scrapers/nyaa", 497 | "response_type": "text", 498 | "separator": "+", 499 | "movie": { 500 | "query": "/?f=0&c=1_0&q={query}&s=size&o=desc&p=1", 501 | "keywords": [ 502 | "{title} {year}", 503 | "{title}" 504 | ] 505 | }, 506 | "episode": { 507 | "query": "/?f=0&c=1_0&q={query}&s=size&o=desc&p=1", 508 | "keywords": "{title} {episodeCode}" 509 | }, 510 | "season": { 511 | "query": "/?f=0&c=1_0&q={query}&s=size&o=desc&p=1", 512 | "keywords": [ 513 | "{title} {seasonCode}", 514 | "{title} season" 515 | ] 516 | }, 517 | "anime": { 518 | "query": "/?f=0&c=1_0&q={query}&s=size&o=desc&p=1", 519 | "keywords": "{title} {episode}" 520 | }, 521 | "html_parser": { 522 | "row": "doc.querySelectorAll('.table-responsive tbody > tr')", 523 | "title": "row.querySelector('td:nth-child(2) a').textContent", 524 | "size": "row.querySelector('td:nth-child(4)').textContent", 525 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 526 | "peers": "row.querySelector('td:nth-child(7)').textContent", 527 | "url": "row.querySelector('td:nth-child(3) a:nth-child(2)').getAttribute('href')" 528 | }, 529 | "time_to_wait_between_each_request_ms": 300, 530 | "time_to_wait_on_too_many_request_ms": 5000, 531 | "timeout_ms": 8000, 532 | "max": 75, 533 | "host_status": "public server" 534 | }, 535 | "piratebay_secondary": { 536 | "name": "PirateBay", 537 | "enabled": true, 538 | "base_url": "https://magnify.pages.dev/scrapers/piratebay", 539 | "response_type": "json", 540 | "separator": "+", 541 | "movie": { 542 | "query": "/q.php?q={query}&cat=207", 543 | "keywords": [ 544 | "{title} {year}", 545 | "{title}" 546 | ] 547 | }, 548 | "episode": { 549 | "query": "/q.php?q={query}&cat=208", 550 | "keywords": "{title} {episodeCode}" 551 | }, 552 | "season": { 553 | "query": "/q.php?q={query}&cat=208", 554 | "keywords": [ 555 | "{title} {seasonCode}", 556 | "{title} season" 557 | ] 558 | }, 559 | "anime": { 560 | "query": "/q.php?q={query}&cat=208", 561 | "keywords": "{title} {episode}" 562 | }, 563 | "json_format": { 564 | "title": "name", 565 | "size": "size", 566 | "seeds": "seeders", 567 | "peers": "leechers", 568 | "hash": "info_hash" 569 | }, 570 | "time_to_wait_between_each_request_ms": 300, 571 | "time_to_wait_on_too_many_request_ms": 5000, 572 | "timeout_ms": 8000, 573 | "max_limit": 100, 574 | "host_status": "public server" 575 | }, 576 | "torlock_secondary": { 577 | "name": "Torlock", 578 | "enabled": true, 579 | "base_url": "https://magnify.pages.dev/scrapers/torlock", 580 | "response_type": "text", 581 | "separator": "-", 582 | "movie": { 583 | "query": "/movie/torrents/{query}/?sort=size&page=2", 584 | "keywords": [ 585 | "{title} {year}", 586 | "{title}" 587 | ] 588 | }, 589 | "episode": { 590 | "query": "/television/torrents/{query}/?sort=size&page=2", 591 | "keywords": "{title} {episodeCode}" 592 | }, 593 | "season": { 594 | "query": "/television/torrents/{query}/?sort=size&page=2", 595 | "keywords": [ 596 | "{title} {seasonCode}", 597 | "{title} season" 598 | ] 599 | }, 600 | "anime": { 601 | "query": "/anime/torrents/{query}/?sort=size&page=2", 602 | "keywords": "{title} {episode}" 603 | }, 604 | "html_parser": { 605 | "row": "doc.querySelectorAll('tbody tr')", 606 | "title": "row.querySelector('td:nth-child(1) a b').textContent", 607 | "size": "row.querySelector('.ts').textContent", 608 | "seeds": "row.querySelector('.tul').textContent", 609 | "peers": "row.querySelector('.tdl').textContent", 610 | "url": "row.querySelector('td:nth-child(1) a').getAttribute('href')" 611 | }, 612 | "source_is_in_sub_page": true, 613 | "time_to_wait_between_each_request_ms": 300, 614 | "time_to_wait_on_too_many_request_ms": 5000, 615 | "timeout_ms": 8000, 616 | "max_limit": 100, 617 | "host_status": "public server" 618 | }, 619 | "cloudtorrents_secondary": { 620 | "name": "CloudTorrrents", 621 | "enabled": true, 622 | "base_url": "https://magnify.pages.dev/scrapers/cloudtorrents", 623 | "response_type": "text", 624 | "separator": "+", 625 | "movie": { 626 | "query": "/search?query={query}&torrent_type=5&ordering=-size&offset=50", 627 | "keywords": [ 628 | "{title} {year}", 629 | "{title}" 630 | ] 631 | }, 632 | "episode": { 633 | "query": "/search?query={query}&torrent_type=8&ordering=-size&offset=50", 634 | "keywords": "{title} {episodeCode}" 635 | }, 636 | "season": { 637 | "query": "/search?query={query}&torrent_type=8&ordering=-size&offset=50", 638 | "keywords": [ 639 | "{title} {seasonCode}", 640 | "{title} season" 641 | ] 642 | }, 643 | "anime": { 644 | "query": "/search?query={query}&torrent_type=1&ordering=-size&offset=50", 645 | "keywords": "{title} {episode}" 646 | }, 647 | "html_parser": { 648 | "row": "doc.querySelectorAll('tbody tr')", 649 | "title": "row.querySelector('.torrent-name').textContent.trim()", 650 | "size": "row.querySelector('td:nth-child(2)').textContent.trim()", 651 | "seeds": "row.querySelector('td:nth-child(4)').textContent.trim()", 652 | "peers": "row.querySelector('td:nth-child(5)').textContent.trim()", 653 | "url": "row.querySelector('a[href^=\"magnet:\"]').getAttribute('href')" 654 | }, 655 | "time_to_wait_between_each_request_ms": 300, 656 | "time_to_wait_on_too_many_request_ms": 5000, 657 | "timeout_ms": 8000, 658 | "max_limit": 50, 659 | "host_status": "public server" 660 | }, 661 | "solidtorrents_secondary": { 662 | "name": "SolidTorrents", 663 | "enabled": true, 664 | "base_url": "https://magnify.pages.dev/scrapers/solidtorrents", 665 | "response_type": "text", 666 | "separator": "+", 667 | "movie": { 668 | "query": "/search?q={query}&sort=size&page=2", 669 | "keywords": [ 670 | "{title} {year}", 671 | "{title}" 672 | ] 673 | }, 674 | "episode": { 675 | "query": "/search?q={query}&sort=size&page=2", 676 | "keywords": "{title} {episodeCode}" 677 | }, 678 | "season": { 679 | "query": "/search?q={query}&sort=size&page=2", 680 | "keywords": [ 681 | "{title} {seasonCode}", 682 | "{title} season" 683 | ] 684 | }, 685 | "anime": { 686 | "query": "/search?q={query}&sort=size&page=2", 687 | "keywords": "{title} {episode}" 688 | }, 689 | "html_parser": { 690 | "row": "doc.querySelectorAll('.results dl')", 691 | "title": "row.querySelector('dt a').textContent", 692 | "size": "row.querySelector('span:nth-child(3)').textContent", 693 | "seeds": "row.querySelector('span:nth-child(4)').textContent", 694 | "peers": "row.querySelector('span:nth-child(5)').textContent", 695 | "url": "row.querySelector('dd span a').getAttribute('href')" 696 | }, 697 | "time_to_wait_between_each_request_ms": 300, 698 | "time_to_wait_on_too_many_request_ms": 5000, 699 | "timeout_ms": 8000, 700 | "max_limit": 50, 701 | "host_status": "public server" 702 | }, 703 | "kickass_secondary": { 704 | "name": "KickassTorrents", 705 | "enabled": true, 706 | "base_url": "https://magnify.pages.dev/scrapers/kickass", 707 | "response_type": "text", 708 | "separator": "+", 709 | "movie": { 710 | "query": "/usearch/{query}/2/", 711 | "keywords": [ 712 | "{title} {year}", 713 | "{title}" 714 | ] 715 | }, 716 | "episode": { 717 | "query": "/usearch/{query}/2/", 718 | "keywords": "{title} {episodeCode}" 719 | }, 720 | "season": { 721 | "query": "/usearch/{query}/2/", 722 | "keywords": [ 723 | "{title} {seasonCode}", 724 | "{title} season" 725 | ] 726 | }, 727 | "anime": { 728 | "query": "/usearch/{query}/2/", 729 | "keywords": "{title} {episode}" 730 | }, 731 | "html_parser": { 732 | "row": "doc.querySelectorAll('table:nth-child(2) tbody tr:not(.firstr)')", 733 | "title": "row.querySelector('.cellMainLink').textContent", 734 | "size": "row.querySelector('.nobr').textContent", 735 | "seeds": "row.querySelectorAll('td')[3].textContent", 736 | "peers": "row.querySelectorAll('td')[4].textContent", 737 | "url": "decodeURIComponent(row.querySelectorAll('a')[1].href.split('?url=')[1])" 738 | }, 739 | "time_to_wait_between_each_request_ms": 300, 740 | "time_to_wait_on_too_many_request_ms": 5000, 741 | "timeout_ms": 8000, 742 | "max_limit": 50, 743 | "host_status": "public server" 744 | }, 745 | "glotorrents_secondary": { 746 | "name": "GloTorrents", 747 | "enabled": true, 748 | "base_url": "https://magnify.pages.dev/scrapers/glotorrents", 749 | "response_type": "text", 750 | "separator": "+", 751 | "movie": { 752 | "query": "/search_results.php?search={query}&cat=1&incldead=1&sort=size&order=desc&page=1", 753 | "keywords": [ 754 | "{title} {year}", 755 | "{title}" 756 | ] 757 | }, 758 | "episode": { 759 | "query": "/search_results.php?search={query}&cat=41&incldead=1&sort=size&order=desc&page=1", 760 | "keywords": "{title} {episodeCode}" 761 | }, 762 | "season": { 763 | "query": "/search_results.php?search={query}&cat=41&incldead=1&sort=size&order=desc&page=1", 764 | "keywords": [ 765 | "{title} {seasonCode}", 766 | "{title} season" 767 | ] 768 | }, 769 | "anime": { 770 | "query": "/search_results.php?search={query}&cat=28&incldead=1&sort=size&order=desc&page=1", 771 | "keywords": "{title} {episode}" 772 | }, 773 | "html_parser": { 774 | "row": "doc.querySelectorAll('table.ttable_headinner tbody tr.t-row:nth-child(odd)')", 775 | "title": "row.querySelector('td:nth-child(2) a:nth-child(2)').textContent", 776 | "peers": "row.querySelector('td:nth-child(7)').textContent", 777 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 778 | "size": "row.querySelector('td:nth-child(5)').textContent", 779 | "url": "row.querySelector('td:nth-child(4) a').getAttribute('href')" 780 | }, 781 | "time_to_wait_between_each_request_ms": 300, 782 | "time_to_wait_on_too_many_request_ms": 5000, 783 | "timeout_ms": 8000, 784 | "max_limit": 45, 785 | "host_status": "public server" 786 | }, 787 | "torrentquest_secondary": { 788 | "name": "TorrentQuest", 789 | "enabled": true, 790 | "base_url": "https://magnify.pages.dev/scrapers/torrentquest", 791 | "response_type": "text", 792 | "separator": "-", 793 | "movie": { 794 | "query": "/{titleFirstLetter}/{query}/size/desc/2/", 795 | "keywords": [ 796 | "{title} {year}", 797 | "{title}" 798 | ] 799 | }, 800 | "episode": { 801 | "query": "/{titleFirstLetter}/{query}/size/desc/2/", 802 | "keywords": "{title} {episodeCode}" 803 | }, 804 | "season": { 805 | "query": "/{titleFirstLetter}/{query}/size/desc/2/", 806 | "keywords": [ 807 | "{title} {seasonCode}", 808 | "{title} season" 809 | ] 810 | }, 811 | "anime": { 812 | "query": "/{titleFirstLetter}/{query}/size/desc/2/", 813 | "keywords": "{title} {episode}" 814 | }, 815 | "html_parser": { 816 | "row": "doc.querySelectorAll('table.download tbody tr:nth-child(odd)')", 817 | "title": "row.querySelector('td:nth-child(2) a').getAttribute('title')", 818 | "size": "row.querySelector('td:nth-child(6)').textContent", 819 | "seeds": "row.querySelector('td:nth-child(7)').textContent", 820 | "peers": "row.querySelector('td:nth-child(8)').textContent", 821 | "url": "row.querySelector('td:nth-child(1) a').getAttribute('href')" 822 | }, 823 | "time_to_wait_between_each_request_ms": 300, 824 | "time_to_wait_on_too_many_request_ms": 5000, 825 | "timeout_ms": 8000, 826 | "max_limit": 40, 827 | "host_status": "public server" 828 | }, 829 | "1337x_secondary": { 830 | "name": "1337x", 831 | "enabled": true, 832 | "base_url": "https://magnify.pages.dev/scrapers/1337x", 833 | "response_type": "text", 834 | "separator": "+", 835 | "movie": { 836 | "query": "/sort-category-search/{query}/Movies/size/desc/2/", 837 | "keywords": [ 838 | "{title} {year}", 839 | "{title}" 840 | ] 841 | }, 842 | "episode": { 843 | "query": "/sort-category-search/{query}/TV/size/desc/2/", 844 | "keywords": "{title} {episodeCode}" 845 | }, 846 | "season": { 847 | "query": "/sort-category-search/{query}/TV/size/desc/2/", 848 | "keywords": [ 849 | "{title} {seasonCode}", 850 | "{title} season" 851 | ] 852 | }, 853 | "anime": { 854 | "query": "/sort-category-search/{query}/Anime/size/desc/2/", 855 | "keywords": "{title} {episode}" 856 | }, 857 | "html_parser": { 858 | "row": "doc.querySelectorAll('tbody > tr')", 859 | "title": "row.querySelector('a:nth-child(2)').innerHTML", 860 | "size": "row.querySelector('tbody > tr .size').textContent.split('B')[0]+'B'", 861 | "seeds": "row.querySelector('.seeds').innerHTML", 862 | "peers": "row.querySelector('.leeches').innerHTML", 863 | "url": "row.querySelector('a:nth-child(2)').getAttribute('href')" 864 | }, 865 | "source_is_in_sub_page": true, 866 | "time_to_wait_between_each_request_ms": 300, 867 | "time_to_wait_on_too_many_request_ms": 5000, 868 | "timeout_ms": 8000, 869 | "max_limit": 40, 870 | "host_status": "public server" 871 | }, 872 | "nyaa_secondary": { 873 | "name": "Nyaa", 874 | "enabled": true, 875 | "base_url": "https://magnify.pages.dev/scrapers/nyaa", 876 | "response_type": "text", 877 | "separator": "+", 878 | "movie": { 879 | "query": "/?f=0&c=1_0&q={query}&s=size&o=desc&p=2", 880 | "keywords": [ 881 | "{title} {year}", 882 | "{title}" 883 | ] 884 | }, 885 | "episode": { 886 | "query": "/?f=0&c=1_0&q={query}&s=size&o=desc&p=2", 887 | "keywords": "{title} {episodeCode}" 888 | }, 889 | "season": { 890 | "query": "/?f=0&c=1_0&q={query}&s=size&o=desc&p=2", 891 | "keywords": [ 892 | "{title} {seasonCode}", 893 | "{title} season" 894 | ] 895 | }, 896 | "anime": { 897 | "query": "/?f=0&c=1_0&q={query}&s=size&o=desc&p=2", 898 | "keywords": "{title} {episode}" 899 | }, 900 | "html_parser": { 901 | "row": "doc.querySelectorAll('.table-responsive tbody > tr')", 902 | "title": "row.querySelector('td:nth-child(2) a').textContent", 903 | "size": "row.querySelector('td:nth-child(4)').textContent", 904 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 905 | "peers": "row.querySelector('td:nth-child(7)').textContent", 906 | "url": "row.querySelector('td:nth-child(3) a:nth-child(2)').getAttribute('href')" 907 | }, 908 | "time_to_wait_between_each_request_ms": 300, 909 | "time_to_wait_on_too_many_request_ms": 5000, 910 | "timeout_ms": 8000, 911 | "max": 75, 912 | "host_status": "public server" 913 | }, 914 | "piratebay_tertiary": { 915 | "name": "PirateBay", 916 | "enabled": true, 917 | "base_url": "https://magnify.pages.dev/scrapers/piratebay", 918 | "response_type": "json", 919 | "separator": "+", 920 | "movie": { 921 | "query": "/q.php?q={query}&cat=201", 922 | "keywords": [ 923 | "{title} {year}", 924 | "{title}" 925 | ] 926 | }, 927 | "episode": { 928 | "query": "/q.php?q={query}&cat=205", 929 | "keywords": "{title} {episodeCode}" 930 | }, 931 | "season": { 932 | "query": "/q.php?q={query}&cat=205", 933 | "keywords": [ 934 | "{title} {seasonCode}", 935 | "{title} season" 936 | ] 937 | }, 938 | "anime": { 939 | "query": "/q.php?q={query}&cat=205", 940 | "keywords": "{title} {episode}" 941 | }, 942 | "json_format": { 943 | "title": "name", 944 | "size": "size", 945 | "seeds": "seeders", 946 | "peers": "leechers", 947 | "hash": "info_hash" 948 | }, 949 | "time_to_wait_between_each_request_ms": 300, 950 | "time_to_wait_on_too_many_request_ms": 5000, 951 | "timeout_ms": 8000, 952 | "max_limit": 100, 953 | "host_status": "public server" 954 | }, 955 | "torlock_tertiary": { 956 | "name": "Torlock", 957 | "enabled": true, 958 | "base_url": "https://magnify.pages.dev/scrapers/torlock", 959 | "response_type": "text", 960 | "separator": "-", 961 | "movie": { 962 | "query": "/movie/torrents/{query}/?sort=size&page=3", 963 | "keywords": [ 964 | "{title} {year}", 965 | "{title}" 966 | ] 967 | }, 968 | "episode": { 969 | "query": "/television/torrents/{query}/?sort=size&page=3", 970 | "keywords": "{title} {episodeCode}" 971 | }, 972 | "season": { 973 | "query": "/television/torrents/{query}/?sort=size&page=3", 974 | "keywords": [ 975 | "{title} {seasonCode}", 976 | "{title} season" 977 | ] 978 | }, 979 | "anime": { 980 | "query": "/anime/torrents/{query}/?sort=size&page=3", 981 | "keywords": "{title} {episode}" 982 | }, 983 | "html_parser": { 984 | "row": "doc.querySelectorAll('tbody tr')", 985 | "title": "row.querySelector('td:nth-child(1) a b').textContent", 986 | "size": "row.querySelector('.ts').textContent", 987 | "seeds": "row.querySelector('.tul').textContent", 988 | "peers": "row.querySelector('.tdl').textContent", 989 | "url": "row.querySelector('td:nth-child(1) a').getAttribute('href')" 990 | }, 991 | "source_is_in_sub_page": true, 992 | "time_to_wait_between_each_request_ms": 300, 993 | "time_to_wait_on_too_many_request_ms": 5000, 994 | "timeout_ms": 8000, 995 | "max_limit": 100, 996 | "host_status": "public server" 997 | }, 998 | "cloudtorrents_tertiary": { 999 | "name": "CloudTorrrents", 1000 | "enabled": true, 1001 | "base_url": "https://magnify.pages.dev/scrapers/cloudtorrents", 1002 | "response_type": "text", 1003 | "separator": "+", 1004 | "movie": { 1005 | "query": "/search?query={query}&torrent_type=5&ordering=-size&offset=100", 1006 | "keywords": [ 1007 | "{title} {year}", 1008 | "{title}" 1009 | ] 1010 | }, 1011 | "episode": { 1012 | "query": "/search?query={query}&torrent_type=8&ordering=-size&offset=100", 1013 | "keywords": "{title} {episodeCode}" 1014 | }, 1015 | "season": { 1016 | "query": "/search?query={query}&torrent_type=8&ordering=-size&offset=100", 1017 | "keywords": [ 1018 | "{title} {seasonCode}", 1019 | "{title} season" 1020 | ] 1021 | }, 1022 | "anime": { 1023 | "query": "/search?query={query}&torrent_type=1&ordering=-size&offset=100", 1024 | "keywords": "{title} {episode}" 1025 | }, 1026 | "html_parser": { 1027 | "row": "doc.querySelectorAll('tbody tr')", 1028 | "title": "row.querySelector('.torrent-name').textContent.trim()", 1029 | "size": "row.querySelector('td:nth-child(2)').textContent.trim()", 1030 | "seeds": "row.querySelector('td:nth-child(4)').textContent.trim()", 1031 | "peers": "row.querySelector('td:nth-child(5)').textContent.trim()", 1032 | "url": "row.querySelector('a[href^=\"magnet:\"]').getAttribute('href')" 1033 | }, 1034 | "time_to_wait_between_each_request_ms": 300, 1035 | "time_to_wait_on_too_many_request_ms": 5000, 1036 | "timeout_ms": 8000, 1037 | "max_limit": 50, 1038 | "host_status": "public server" 1039 | }, 1040 | "solidtorrents_tertiary": { 1041 | "name": "SolidTorrents", 1042 | "enabled": true, 1043 | "base_url": "https://magnify.pages.dev/scrapers/solidtorrents", 1044 | "response_type": "text", 1045 | "separator": "+", 1046 | "movie": { 1047 | "query": "/search?q={query}&sort=size&page=3", 1048 | "keywords": [ 1049 | "{title} {year}", 1050 | "{title}" 1051 | ] 1052 | }, 1053 | "episode": { 1054 | "query": "/search?q={query}&sort=size&page=3", 1055 | "keywords": "{title} {episodeCode}" 1056 | }, 1057 | "season": { 1058 | "query": "/search?q={query}&sort=size&page=3", 1059 | "keywords": [ 1060 | "{title} {seasonCode}", 1061 | "{title} season" 1062 | ] 1063 | }, 1064 | "anime": { 1065 | "query": "/search?q={query}&sort=size&page=3", 1066 | "keywords": "{title} {episode}" 1067 | }, 1068 | "html_parser": { 1069 | "row": "doc.querySelectorAll('.results dl')", 1070 | "title": "row.querySelector('dt a').textContent", 1071 | "size": "row.querySelector('span:nth-child(3)').textContent", 1072 | "seeds": "row.querySelector('span:nth-child(4)').textContent", 1073 | "peers": "row.querySelector('span:nth-child(5)').textContent", 1074 | "url": "row.querySelector('dd span a').getAttribute('href')" 1075 | }, 1076 | "time_to_wait_between_each_request_ms": 300, 1077 | "time_to_wait_on_too_many_request_ms": 5000, 1078 | "timeout_ms": 8000, 1079 | "max_limit": 50, 1080 | "host_status": "public server" 1081 | }, 1082 | "kickass_tertiary": { 1083 | "name": "KickassTorrents", 1084 | "enabled": true, 1085 | "base_url": "https://magnify.pages.dev/scrapers/kickass", 1086 | "response_type": "text", 1087 | "separator": "+", 1088 | "movie": { 1089 | "query": "/usearch/{query}/3/", 1090 | "keywords": [ 1091 | "{title} {year}", 1092 | "{title}" 1093 | ] 1094 | }, 1095 | "episode": { 1096 | "query": "/usearch/{query}/3/", 1097 | "keywords": "{title} {episodeCode}" 1098 | }, 1099 | "season": { 1100 | "query": "/usearch/{query}/3/", 1101 | "keywords": [ 1102 | "{title} {seasonCode}", 1103 | "{title} season" 1104 | ] 1105 | }, 1106 | "anime": { 1107 | "query": "/usearch/{query}/3/", 1108 | "keywords": "{title} {episode}" 1109 | }, 1110 | "html_parser": { 1111 | "row": "doc.querySelectorAll('table:nth-child(2) tbody tr:not(.firstr)')", 1112 | "title": "row.querySelector('.cellMainLink').textContent", 1113 | "size": "row.querySelector('.nobr').textContent", 1114 | "seeds": "row.querySelectorAll('td')[3].textContent", 1115 | "peers": "row.querySelectorAll('td')[4].textContent", 1116 | "url": "decodeURIComponent(row.querySelectorAll('a')[1].href.split('?url=')[1])" 1117 | }, 1118 | "time_to_wait_between_each_request_ms": 300, 1119 | "time_to_wait_on_too_many_request_ms": 5000, 1120 | "timeout_ms": 8000, 1121 | "max_limit": 50, 1122 | "host_status": "public server" 1123 | }, 1124 | "glotorrents_tertiary": { 1125 | "name": "GloTorrents", 1126 | "enabled": true, 1127 | "base_url": "https://magnify.pages.dev/scrapers/glotorrents", 1128 | "response_type": "text", 1129 | "separator": "+", 1130 | "movie": { 1131 | "query": "/search_results.php?search={query}&cat=1&incldead=1&sort=size&order=desc&page=2", 1132 | "keywords": [ 1133 | "{title} {year}", 1134 | "{title}" 1135 | ] 1136 | }, 1137 | "episode": { 1138 | "query": "/search_results.php?search={query}&cat=41&incldead=1&sort=size&order=desc&page=2", 1139 | "keywords": "{title} {episodeCode}" 1140 | }, 1141 | "season": { 1142 | "query": "/search_results.php?search={query}&cat=41&incldead=1&sort=size&order=desc&page=2", 1143 | "keywords": [ 1144 | "{title} {seasonCode}", 1145 | "{title} season" 1146 | ] 1147 | }, 1148 | "anime": { 1149 | "query": "/search_results.php?search={query}&cat=28&incldead=1&sort=size&order=desc&page=2", 1150 | "keywords": "{title} {episode}" 1151 | }, 1152 | "html_parser": { 1153 | "row": "doc.querySelectorAll('table.ttable_headinner tbody tr.t-row:nth-child(odd)')", 1154 | "title": "row.querySelector('td:nth-child(2) a:nth-child(2)').textContent", 1155 | "peers": "row.querySelector('td:nth-child(7)').textContent", 1156 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 1157 | "size": "row.querySelector('td:nth-child(5)').textContent", 1158 | "url": "row.querySelector('td:nth-child(4) a').getAttribute('href')" 1159 | }, 1160 | "time_to_wait_between_each_request_ms": 300, 1161 | "time_to_wait_on_too_many_request_ms": 5000, 1162 | "timeout_ms": 8000, 1163 | "max_limit": 45, 1164 | "host_status": "public server" 1165 | }, 1166 | "torrentquest_tertiary": { 1167 | "name": "TorrentQuest", 1168 | "enabled": true, 1169 | "base_url": "https://magnify.pages.dev/scrapers/torrentquest", 1170 | "response_type": "text", 1171 | "separator": "-", 1172 | "movie": { 1173 | "query": "/{titleFirstLetter}/{query}/size/desc/3/", 1174 | "keywords": [ 1175 | "{title} {year}", 1176 | "{title}" 1177 | ] 1178 | }, 1179 | "episode": { 1180 | "query": "/{titleFirstLetter}/{query}/size/desc/3/", 1181 | "keywords": "{title} {episodeCode}" 1182 | }, 1183 | "season": { 1184 | "query": "/{titleFirstLetter}/{query}/size/desc/3/", 1185 | "keywords": [ 1186 | "{title} {seasonCode}", 1187 | "{title} season" 1188 | ] 1189 | }, 1190 | "anime": { 1191 | "query": "/{titleFirstLetter}/{query}/size/desc/3/", 1192 | "keywords": "{title} {episode}" 1193 | }, 1194 | "html_parser": { 1195 | "row": "doc.querySelectorAll('table.download tbody tr:nth-child(odd)')", 1196 | "title": "row.querySelector('td:nth-child(2) a').getAttribute('title')", 1197 | "size": "row.querySelector('td:nth-child(6)').textContent", 1198 | "seeds": "row.querySelector('td:nth-child(7)').textContent", 1199 | "peers": "row.querySelector('td:nth-child(8)').textContent", 1200 | "url": "row.querySelector('td:nth-child(1) a').getAttribute('href')" 1201 | }, 1202 | "time_to_wait_between_each_request_ms": 300, 1203 | "time_to_wait_on_too_many_request_ms": 5000, 1204 | "timeout_ms": 8000, 1205 | "max_limit": 40, 1206 | "host_status": "public server" 1207 | }, 1208 | "1337x_tertiary": { 1209 | "name": "1337x", 1210 | "enabled": true, 1211 | "base_url": "https://magnify.pages.dev/scrapers/1337x", 1212 | "response_type": "text", 1213 | "separator": "+", 1214 | "movie": { 1215 | "query": "/sort-category-search/{query}/Movies/size/desc/3/", 1216 | "keywords": [ 1217 | "{title} {year}", 1218 | "{title}" 1219 | ] 1220 | }, 1221 | "episode": { 1222 | "query": "/sort-category-search/{query}/TV/size/desc/3/", 1223 | "keywords": "{title} {episodeCode}" 1224 | }, 1225 | "season": { 1226 | "query": "/sort-category-search/{query}/TV/size/desc/3/", 1227 | "keywords": [ 1228 | "{title} {seasonCode}", 1229 | "{title} season" 1230 | ] 1231 | }, 1232 | "anime": { 1233 | "query": "/sort-category-search/{query}/Anime/size/desc/3/", 1234 | "keywords": "{title} {episode}" 1235 | }, 1236 | "html_parser": { 1237 | "row": "doc.querySelectorAll('tbody > tr')", 1238 | "title": "row.querySelector('a:nth-child(2)').innerHTML", 1239 | "size": "row.querySelector('tbody > tr .size').textContent.split('B')[0]+'B'", 1240 | "seeds": "row.querySelector('.seeds').innerHTML", 1241 | "peers": "row.querySelector('.leeches').innerHTML", 1242 | "url": "row.querySelector('a:nth-child(2)').getAttribute('href')" 1243 | }, 1244 | "source_is_in_sub_page": true, 1245 | "time_to_wait_between_each_request_ms": 300, 1246 | "time_to_wait_on_too_many_request_ms": 5000, 1247 | "timeout_ms": 8000, 1248 | "max_limit": 40, 1249 | "host_status": "public server" 1250 | }, 1251 | "nyaa_tertiary": { 1252 | "name": "Nyaa", 1253 | "enabled": true, 1254 | "base_url": "https://magnify.pages.dev/scrapers/nyaa", 1255 | "response_type": "text", 1256 | "separator": "+", 1257 | "movie": { 1258 | "query": "/?f=0&c=1_0&q={query}&s=size&o=desc&p=3", 1259 | "keywords": [ 1260 | "{title} {year}", 1261 | "{title}" 1262 | ] 1263 | }, 1264 | "episode": { 1265 | "query": "/?f=0&c=1_0&q={query}&s=size&o=desc&p=3", 1266 | "keywords": "{title} {episodeCode}" 1267 | }, 1268 | "season": { 1269 | "query": "/?f=0&c=1_0&q={query}&s=size&o=desc&p=3", 1270 | "keywords": [ 1271 | "{title} {seasonCode}", 1272 | "{title} season" 1273 | ] 1274 | }, 1275 | "anime": { 1276 | "query": "/?f=0&c=1_0&q={query}&s=size&o=desc&p=3", 1277 | "keywords": "{title} {episode}" 1278 | }, 1279 | "html_parser": { 1280 | "row": "doc.querySelectorAll('.table-responsive tbody > tr')", 1281 | "title": "row.querySelector('td:nth-child(2) a').textContent", 1282 | "size": "row.querySelector('td:nth-child(4)').textContent", 1283 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 1284 | "peers": "row.querySelector('td:nth-child(7)').textContent", 1285 | "url": "row.querySelector('td:nth-child(3) a:nth-child(2)').getAttribute('href')" 1286 | }, 1287 | "time_to_wait_between_each_request_ms": 300, 1288 | "time_to_wait_on_too_many_request_ms": 5000, 1289 | "timeout_ms": 8000, 1290 | "max": 75, 1291 | "host_status": "public server" 1292 | } 1293 | } -------------------------------------------------------------------------------- /openscraper.txt: -------------------------------------------------------------------------------- 1 | { 2 | "torrentapi": { 3 | "name": "RARBG", 4 | "enabled": true, 5 | "languages": [ 6 | "en" 7 | ], 8 | "base_url": "https://torrentapi.org", 9 | "fallback_urls": [], 10 | "response_type": "json", 11 | "time_to_wait_between_each_request_ms": 300, 12 | "time_to_wait_on_too_many_request_ms": 2000, 13 | "trust_results": true, 14 | "token": { 15 | "query": "/pubapi_v2.php?get_token=get_token&app_id=helios", 16 | "token_validity_time_ms": 840000, 17 | "token_format": { 18 | "token": "token" 19 | } 20 | }, 21 | "movie": { 22 | "query": "/pubapi_v2.php?mode=search&search_imdb={query}&category=movies&format=json_extended&app_id=helios&token={token}", 23 | "keywords": "{imdbId}" 24 | }, 25 | "episode": { 26 | "query": "/pubapi_v2.php?mode=search&search_string={query}&category=tv&format=json_extended&app_id=helios&token={token}", 27 | "keywords": [ 28 | "{title} {episodeCode}", 29 | "{title} {year} {episodeCode}" 30 | ] 31 | }, 32 | "season": { 33 | "query": "/pubapi_v2.php?mode=search&search_string={query}&category=tv&format=json_extended&app_id=helios&token={token}", 34 | "keywords": [ 35 | "{title} {seasonCode}", 36 | "{title} season", 37 | "{title} {year} {seasonCode}", 38 | "{title} {year} season" 39 | ] 40 | }, 41 | "json_format": { 42 | "results": "torrent_results", 43 | "url": "download", 44 | "title": "title", 45 | "seeds": "seeders", 46 | "peers": "leechers", 47 | "size": "size" 48 | }, 49 | "title_replacement": { 50 | ".": "", 51 | ":": "", 52 | "'": "", 53 | "&": "", 54 | "\"": "", 55 | "*": "" 56 | } 57 | }, 58 | "bitlord": { 59 | "name": "Bitlord", 60 | "enabled": true, 61 | "languages": [ 62 | "en" 63 | ], 64 | "base_url": "https://bitlordsearch.com", 65 | "response_type": "text", 66 | "movie": { 67 | "query": "/search?q={query}", 68 | "keywords": "{title} {year}" 69 | }, 70 | "episode": { 71 | "query": "/search?q={query}", 72 | "keywords": [ 73 | "{title} {episodeCode}", 74 | "{title} {year} {episodeCode}" 75 | ] 76 | }, 77 | "season": { 78 | "query": "/search?q={query}", 79 | "keywords": [ 80 | "{title} {seasonCode}", 81 | "{title} season", 82 | "{title} {year} {seasonCode}", 83 | "{title} {year} season" 84 | ] 85 | }, 86 | "anime": { 87 | "query": "/search?q={query}", 88 | "keywords": [ 89 | "{title} {absoluteNumber}", 90 | "{title} {episode}" 91 | ] 92 | }, 93 | "html_parser": { 94 | "row": "doc.querySelectorAll('#container table tbody tr.bls-row')", 95 | "title": "row.querySelector('.title').textContent", 96 | "peers": "row.querySelector('.peers').textContent", 97 | "seeds": "row.querySelector('.seeds').textContent", 98 | "size": "(row.querySelector('.size').textContent < 120 ? row.querySelector('.size').textContent * 1024 : (row.querySelector('.size').textContent > 122880 ? row.querySelector('.size').textContent / 1204 : row.querySelector('.size').textContent))+' MB'", 99 | "url": "row.querySelector('.magnet-button').getAttribute('href')" 100 | }, 101 | "source_is_in_sub_page": false, 102 | "title_replacement": { 103 | ".": "", 104 | ":": "", 105 | "'": "", 106 | "&": "", 107 | "\"": "", 108 | "*": "" 109 | } 110 | }, 111 | "extratorrents": { 112 | "name": "ExtraTorrent", 113 | "enabled": true, 114 | "languages": [ 115 | "en" 116 | ], 117 | "base_url": "https://extratorrent.st", 118 | "fallback_urls": [ 119 | "https://extratorrent2.unblockninja.com", 120 | "https://extratorrent.unblocked.nz", 121 | "https://extra.torrentbay.to" 122 | ], 123 | "response_type": "text", 124 | "movie": { 125 | "query": "/search/?search={query}&new=1&x=0&y=0", 126 | "keywords": "{title} {year}" 127 | }, 128 | "episode": { 129 | "query": "/search/?search={query}&new=1&x=0&y=0", 130 | "keywords": [ 131 | "{title} {episodeCode}", 132 | "{title} {year} {episodeCode}" 133 | ] 134 | }, 135 | "season": { 136 | "query": "/search/?search={query}&new=1&x=0&y=0", 137 | "keywords": [ 138 | "{title} {seasonCode}", 139 | "{title} season", 140 | "{title} {year} {seasonCode}", 141 | "{title} {year} season" 142 | ] 143 | }, 144 | "anime": { 145 | "query": "/search/?search={query}&new=1&x=0&y=0", 146 | "keywords": [ 147 | "{title} {absoluteNumber}", 148 | "{title} {episode}" 149 | ] 150 | }, 151 | "html_parser": { 152 | "row": "doc.querySelectorAll('table.tl tbody tr')", 153 | "title": "row.querySelector('td.tli > a').textContent", 154 | "peers": "row.querySelector('td:nth-child(7)').textContent", 155 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 156 | "size": "row.querySelector('td:nth-child(5)').textContent", 157 | "url": "row.querySelector('table.tl td:nth-child(1) > a').getAttribute('href')" 158 | }, 159 | "source_is_in_sub_page": false, 160 | "title_replacement": { 161 | ".": "", 162 | ":": "", 163 | "'": "", 164 | "&": "", 165 | "\"": "", 166 | "*": "" 167 | } 168 | }, 169 | "yts": { 170 | "name": "YTS", 171 | "enabled": true, 172 | "languages": [ 173 | "en" 174 | ], 175 | "base_url": "https://yts.mx", 176 | "fallback_urls": [ 177 | "https://yts.pm", 178 | "https://yts.unblocked.lat" 179 | ], 180 | "response_type": "json", 181 | "trust_results": true, 182 | "movie": { 183 | "query": "/api/v2/list_movies.json?query_term={query}&sort_by=seeds&order_by=desc", 184 | "keywords": "{imdbId}" 185 | }, 186 | "json_format": { 187 | "results": "data.movies", 188 | "sub_results": "torrents", 189 | "url": "magnet:?xt=urn:btih:{hash}&tr=http://track.one:1234/announce&tr=udp://track.two:80", 190 | "title": "title_long", 191 | "seeds": "seeds", 192 | "peers": "peers", 193 | "size": "size", 194 | "quality": "quality", 195 | "hash": "hash" 196 | }, 197 | "title_replacement": { 198 | ".": "", 199 | ":": "", 200 | "'": "", 201 | "&": "", 202 | "\"": "", 203 | "*": "" 204 | } 205 | }, 206 | "zooqle": { 207 | "name": "Zooqle", 208 | "enabled": true, 209 | "languages": [ 210 | "en" 211 | ], 212 | "base_url": "https://zooqle.com", 213 | "fallback_urls": [ 214 | "https://zooqle.t0r.club", 215 | "https://zooqle-com.unblocksites.fun", 216 | "https://zooqle.unblocked.win", 217 | "https://zooqle.nocensor.xyz", 218 | "https://zooqle.unblocked.llc", 219 | "https://zooqle.unblocked.krd", 220 | "https://zooqle.p4y.info" 221 | ], 222 | "response_type": "text", 223 | "separator": "+", 224 | "movie": { 225 | "query": "/search?q={query}", 226 | "keywords": "{title} {year}" 227 | }, 228 | "episode": { 229 | "query": "/search?q={query}", 230 | "keywords": [ 231 | "{title} {episodeCode}", 232 | "{title} {year} {episodeCode}" 233 | ] 234 | }, 235 | "season": { 236 | "query": "/search?q={query}", 237 | "keywords": [ 238 | "{title} {seasonCode}", 239 | "{title} season", 240 | "{title} {year} {seasonCode}", 241 | "{title} {year} season" 242 | ] 243 | }, 244 | "anime": { 245 | "query": "/search?q={query}", 246 | "keywords": [ 247 | "{title} {absoluteNumber}", 248 | "{title} {episode}" 249 | ] 250 | }, 251 | "html_parser": { 252 | "row": "doc.querySelectorAll('.table-torrents tbody tr')", 253 | "title": "row.querySelector('td:nth-child(2) a').textContent", 254 | "peers": "row.querySelector('td:nth-child(6) .progress-bar:nth-child(2)') ? row.querySelector('td:nth-child(6) .prog-r').textContent : 0", 255 | "seeds": "row.querySelector('td:nth-child(6) .progress-bar:nth-child(1)') ? row.querySelector('td:nth-child(6) .prog-l').textContent : 0", 256 | "size": "row.querySelector('td:nth-child(4) .progress-bar').textContent.replace('K','000')", 257 | "url": "row.querySelector('td:nth-child(3) li:nth-child(2) a').getAttribute('href')" 258 | }, 259 | "source_is_in_sub_page": false, 260 | "title_replacement": { 261 | ".": "", 262 | ":": "", 263 | "'": "", 264 | "&": "", 265 | "\"": "", 266 | "*": "" 267 | } 268 | }, 269 | "thepiratebay": { 270 | "name": "PirateBay", 271 | "enabled": true, 272 | "languages": [ 273 | "en" 274 | ], 275 | "base_url": "https://apibay.org", 276 | "fallback_urls": [], 277 | "response_type": "json", 278 | "movie": { 279 | "query": "/q.php?q={query}&cat=207,202,201", 280 | "keywords": "{title} {year}" 281 | }, 282 | "episode": { 283 | "query": "/q.php?q={query}&cat=208,205", 284 | "keywords": [ 285 | "{title} {episodeCode}", 286 | "{title} {year} {episodeCode}" 287 | ] 288 | }, 289 | "season": { 290 | "query": "/q.php?q={query}&cat=208,205", 291 | "keywords": [ 292 | "{title} {seasonCode}", 293 | "{title} season", 294 | "{title} {year} {seasonCode}", 295 | "{title} {year} season" 296 | ] 297 | }, 298 | "anime": { 299 | "query": "/q.php?q={query}&cat=208,205", 300 | "keywords": [ 301 | "{title} {absoluteNumber}", 302 | "{title} {episode}" 303 | ] 304 | }, 305 | "json_format": { 306 | "title": "name", 307 | "seeds": "seeders", 308 | "peers": "leechers", 309 | "size": "size", 310 | "hash": "info_hash" 311 | }, 312 | "title_replacement": { 313 | ".": "", 314 | ":": "", 315 | "'": "", 316 | "&": "", 317 | "\"": "", 318 | "*": "" 319 | } 320 | }, 321 | "torrentdownload": { 322 | "name": "TorrentDownload", 323 | "enabled": true, 324 | "languages": [ 325 | "en" 326 | ], 327 | "base_url": "https://www.torrentdownload.info", 328 | "response_type": "text", 329 | "separator": "+", 330 | "movie": { 331 | "query": "/search?q={query}", 332 | "keywords": "{title} {year}" 333 | }, 334 | "episode": { 335 | "query": "/search?q={query}", 336 | "keywords": [ 337 | "{title} {episodeCode}", 338 | "{title} {year} {episodeCode}" 339 | ] 340 | }, 341 | "season": { 342 | "query": "/search?q={query}", 343 | "keywords": [ 344 | "{title} {seasonCode}", 345 | "{title} season", 346 | "{title} {year} {seasonCode}", 347 | "{title} {year} season" 348 | ] 349 | }, 350 | "anime": { 351 | "query": "/search?q={query}", 352 | "keywords": [ 353 | "{title} {absoluteNumber}", 354 | "{title} {episode}" 355 | ] 356 | }, 357 | "html_parser": { 358 | "row": "doc.querySelectorAll('table:nth-of-type(2) tbody tr:not(:first-child)')", 359 | "title": "row.querySelector('.tt-name a').textContent", 360 | "peers": "row.querySelector('.tdleech').textContent.replace(',','')", 361 | "seeds": "row.querySelector('.tdseed').textContent.replace(',','')", 362 | "size": "row.querySelector('.tdnormal:nth-of-type(3)').textContent", 363 | "url": "row.querySelector('.tt-name a').getAttribute('href')" 364 | }, 365 | "source_is_in_sub_page": true, 366 | "title_replacement": { 367 | ".": "", 368 | ":": "", 369 | "'": "", 370 | "&": "", 371 | "\"": "", 372 | "*": "" 373 | } 374 | }, 375 | "anirena": { 376 | "name": "AniRena", 377 | "enabled": true, 378 | "languages": [ 379 | "en" 380 | ], 381 | "base_url": "https://www.anirena.com", 382 | "response_type": "text", 383 | "separator": "+", 384 | "movie": { 385 | "query": "/?s={query}", 386 | "keywords": "{title}" 387 | }, 388 | "episode": { 389 | "query": "/?s={query}", 390 | "keywords": [ 391 | "{title} {absoluteNumber}", 392 | "{title} {episode}" 393 | ] 394 | }, 395 | "season": { 396 | "query": "/?s={query}", 397 | "keywords": [ 398 | "{title} {seasonCode}", 399 | "{title} season" 400 | ] 401 | }, 402 | "anime": { 403 | "query": "/?s={query}", 404 | "keywords": [ 405 | "{title} {absoluteNumber}", 406 | "{title} {episode}" 407 | ] 408 | }, 409 | "html_parser": { 410 | "row": "doc.querySelectorAll('div.full2')", 411 | "title": "row.querySelector('table tbody tr .torrents_small_info_data1 a:nth-child(2)').textContent", 412 | "peers": "row.querySelector('table tbody tr .torrents_small_leechers_data1').textContent", 413 | "seeds": "row.querySelector('table tbody tr .torrents_small_seeders_data1').textContent", 414 | "size": "row.querySelector('table tbody tr .torrents_small_size_data1').textContent", 415 | "url": "row.querySelector('table tbody tr .torrents_small_info_data2 a:nth-child(2)').getAttribute('href')" 416 | }, 417 | "source_is_in_sub_page": false, 418 | "title_replacement": { 419 | ".": "", 420 | ":": "", 421 | "'": "", 422 | "&": "", 423 | "\"": "", 424 | "*": "" 425 | } 426 | }, 427 | "torrentdownloads": { 428 | "name": "TorrentDownloads", 429 | "enabled": true, 430 | "languages": [ 431 | "en" 432 | ], 433 | "base_url": "https://www.torrentdownloads.me", 434 | "fallback_urls": [ 435 | "https://www.torrentdownloads.info", 436 | "http://torrentdownloads.d4.re" 437 | ], 438 | "response_type": "text", 439 | "separator": "+", 440 | "movie": { 441 | "query": "/search/?search={query}", 442 | "keywords": "{title} {year}" 443 | }, 444 | "episode": { 445 | "query": "/search/?search={query}", 446 | "keywords": [ 447 | "{title} {episodeCode}", 448 | "{title} {year} {episodeCode}" 449 | ] 450 | }, 451 | "season": { 452 | "query": "/search/?search={query}", 453 | "keywords": [ 454 | "{title} {seasonCode}", 455 | "{title} season", 456 | "{title} {year} {seasonCode}", 457 | "{title} {year} season" 458 | ] 459 | }, 460 | "anime": { 461 | "query": "/search/?search={query}", 462 | "keywords": [ 463 | "{title} {absoluteNumber}", 464 | "{title} {episode}" 465 | ] 466 | }, 467 | "html_parser": { 468 | "row": "doc.querySelectorAll('.inner_container')[1].querySelectorAll('.grey_bar3')", 469 | "title": "row.querySelector('p a').textContent", 470 | "peers": "row.querySelector('span:nth-child(3)').textContent", 471 | "seeds": "row.querySelector('span:nth-child(4)').textContent", 472 | "size": "row.querySelector('span:nth-child(5)').textContent", 473 | "url": "row.querySelector('p a').getAttribute('href').match('http') || row.querySelector('p a').getAttribute('href').match('php') ? null : row.querySelector('p a').getAttribute('href')" 474 | }, 475 | "source_is_in_sub_page": true, 476 | "title_replacement": { 477 | ".": "", 478 | ":": "", 479 | "'": "", 480 | "&": "", 481 | "\"": "", 482 | "*": "" 483 | } 484 | }, 485 | "kickass": { 486 | "name": "Kickass", 487 | "enabled": true, 488 | "languages": [ 489 | "en" 490 | ], 491 | "base_url": "https://kickass-kat.com", 492 | "fallback_urls": [ 493 | "https://kickass.vc", 494 | "https://kat.how", 495 | "https://kat.li", 496 | "https://kickass.cm", 497 | "https://kickass2.st", 498 | "https://kat.sx", 499 | "https://thekat.info" 500 | ], 501 | "response_type": "text", 502 | "separator": "%20", 503 | "movie": { 504 | "query": "/usearch/{query}/?field=seeders&sorder=desc", 505 | "keywords": "{title} {year}" 506 | }, 507 | "episode": { 508 | "query": "/usearch/{query}/?field=seeders&sorder=desc", 509 | "keywords": [ 510 | "{title} {episodeCode}", 511 | "{title} {year} {episodeCode}" 512 | ] 513 | }, 514 | "season": { 515 | "query": "/usearch/{query}/?field=seeders&sorder=desc", 516 | "keywords": [ 517 | "{title} {seasonCode}", 518 | "{title} season", 519 | "{title} {year} {seasonCode}", 520 | "{title} {year} season" 521 | ] 522 | }, 523 | "anime": { 524 | "query": "/usearch/{query}/?field=seeders&sorder=desc", 525 | "keywords": [ 526 | "{title} {absoluteNumber}", 527 | "{title} {episode}" 528 | ] 529 | }, 530 | "html_parser": { 531 | "row": "doc.querySelectorAll('.data tbody tr:not(.firstr)')", 532 | "title": "row.querySelector('td:nth-child(1) .torrentname .torType a').textContent", 533 | "peers": "row.querySelectorAll('.green').textContent", 534 | "seeds": "row.querySelectorAll('.red').textContent", 535 | "size": "row.querySelector('.nobr').textContent", 536 | "url": "decodeURIComponent(row.querySelector('td:nth-child(1) div:nth-child(1) a:nth-last-child(2)').getAttribute('href').replace('https://mylink.cx/?url=', '').trim())" 537 | }, 538 | "source_is_in_sub_page": false, 539 | "title_replacement": { 540 | ".": "", 541 | ":": "", 542 | "'": "", 543 | "&": "", 544 | "\"": "", 545 | "*": "" 546 | } 547 | }, 548 | "torrentgalaxy": { 549 | "name": "TorrentGalaxy", 550 | "enabled": true, 551 | "languages": [ 552 | "en" 553 | ], 554 | "base_url": "https://torrentgalaxy.to", 555 | "fallback_urls": [ 556 | "https://torrentgalaxy.mx", 557 | "https://torrentgalaxy.su", 558 | "https://torrentgalaxy.unblockit.uno" 559 | ], 560 | "response_type": "text", 561 | "separator": "+", 562 | "movie": { 563 | "query": "/torrents.php?search={query}", 564 | "keywords": "{title} {year}" 565 | }, 566 | "episode": { 567 | "query": "/torrents.php?search={query}", 568 | "keywords": [ 569 | "{title} {episodeCode}", 570 | "{title} {year} {episodeCode}" 571 | ] 572 | }, 573 | "season": { 574 | "query": "/torrents.php?search={query}", 575 | "keywords": [ 576 | "{title} {seasonCode}", 577 | "{title} season", 578 | "{title} {year} {seasonCode}", 579 | "{title} {year} season" 580 | ] 581 | }, 582 | "anime": { 583 | "query": "/torrents.php?search={query}", 584 | "keywords": [ 585 | "{title} {absoluteNumber}", 586 | "{title} {episode}" 587 | ] 588 | }, 589 | "html_parser": { 590 | "row": "doc.querySelectorAll('.tgxtable .tgxtablerow')", 591 | "title": "row.querySelector('.tgxtablecell:nth-child(4) a:nth-child(1)').getAttribute('title')", 592 | "peers": "row.querySelector('.tgxtablecell:nth-child(11) span font:nth-child(2)').textContent", 593 | "seeds": "row.querySelector('.tgxtablecell:nth-child(11) span font:nth-child(1)').textContent", 594 | "size": "row.querySelector('.tgxtablecell:nth-child(8)').textContent", 595 | "url": "row.querySelector('.tgxtablecell:nth-child(5) a:nth-child(2)').getAttribute('href')" 596 | }, 597 | "source_is_in_sub_page": false, 598 | "title_replacement": { 599 | ".": "", 600 | ":": "", 601 | "'": "", 602 | "&": "", 603 | "\"": "", 604 | "*": "" 605 | } 606 | }, 607 | "eztv": { 608 | "name": "EZTV", 609 | "enabled": true, 610 | "languages": [ 611 | "en" 612 | ], 613 | "base_url": "https://eztv.re", 614 | "fallback_urls": [ 615 | "https://eztv.ag", 616 | "https://eztv.it", 617 | "https://eztv.ch", 618 | "https://eztv.unblockit.uno" 619 | ], 620 | "response_type": "text", 621 | "episode": { 622 | "query": "/search/{query}", 623 | "keywords": [ 624 | "{title} {episodeCode}", 625 | "{title} {year} {episodeCode}" 626 | ] 627 | }, 628 | "season": { 629 | "query": "/search/{query}", 630 | "keywords": [ 631 | "{title} {seasonCode}", 632 | "{title} season", 633 | "{title} {year} {seasonCode}", 634 | "{title} {year} season" 635 | ] 636 | }, 637 | "html_parser": { 638 | "row": "doc.querySelectorAll('tr.forum_header_border')", 639 | "title": "row.querySelector('td:nth-child(2)').textContent", 640 | "peers": "row.querySelector('td:nth-child(6)').textContent", 641 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 642 | "size": "row.querySelector('td:nth-child(4)').textContent", 643 | "url": "row.querySelector('td:nth-child(3) a').getAttribute('href')" 644 | }, 645 | "source_is_in_sub_page": false, 646 | "title_replacement": { 647 | ".": "", 648 | ":": "", 649 | "'": "", 650 | "&": "", 651 | "\"": "", 652 | "*": "" 653 | } 654 | }, 655 | "skytorrents": { 656 | "name": "SkyTorrents", 657 | "enabled": true, 658 | "languages": [ 659 | "en" 660 | ], 661 | "base_url": "https://www.skytorrents.me", 662 | "fallback_urls": [], 663 | "response_type": "text", 664 | "separator": "+", 665 | "movie": { 666 | "query": "/search?q={query}", 667 | "keywords": "{title} {year}" 668 | }, 669 | "episode": { 670 | "query": "/search?q={query}", 671 | "keywords": [ 672 | "{title} {episodeCode}", 673 | "{title} {year} {episodeCode}" 674 | ] 675 | }, 676 | "season": { 677 | "query": "/search?q={query}", 678 | "keywords": [ 679 | "{title} {seasonCode}", 680 | "{title} season", 681 | "{title} {year} {seasonCode}", 682 | "{title} {year} season" 683 | ] 684 | }, 685 | "anime": { 686 | "query": "/search?q={query}", 687 | "keywords": [ 688 | "{title} {absoluteNumber}", 689 | "{title} {episode}" 690 | ] 691 | }, 692 | "html_parser": { 693 | "row": "doc.querySelectorAll('.rtable tbody tr.row')", 694 | "title": "row.querySelector('td:nth-child(1) a').textContent", 695 | "peers": "row.querySelector('td:nth-child(5)').textContent", 696 | "seeds": "row.querySelector('td:nth-child(4)').textContent", 697 | "size": "row.querySelector('td:nth-child(2)').textContent", 698 | "url": "row.querySelector('td:nth-child(6) a').getAttribute('href')" 699 | }, 700 | "source_is_in_sub_page": false, 701 | "title_replacement": { 702 | ".": "", 703 | ":": "", 704 | "'": "", 705 | "&": "", 706 | "\"": "", 707 | "*": "" 708 | } 709 | }, 710 | "glodls": { 711 | "name": "glodls", 712 | "enabled": true, 713 | "languages": [ 714 | "en" 715 | ], 716 | "base_url": "https://glodls.to", 717 | "fallback_urls": [ 718 | "https://gtdb.to", 719 | "https://glotorrents.unblockit.uno" 720 | ], 721 | "response_type": "text", 722 | "separator": "+", 723 | "movie": { 724 | "query": "/search_results.php?search={query}&cat=1&incldead=0&inclexternal=0&lang=1&sort=size&order=desc", 725 | "keywords": "{title} {year}" 726 | }, 727 | "episode": { 728 | "query": "/search_results.php?search={query}&cat=41&incldead=0&inclexternal=0&lang=1&sort=seeders&order=desc", 729 | "keywords": [ 730 | "{title} {episodeCode}", 731 | "{title} {year} {episodeCode}" 732 | ] 733 | }, 734 | "season": { 735 | "query": "/search_results.php?search={query}&cat=41&incldead=0&inclexternal=0&lang=1&sort=seeders&order=desc", 736 | "keywords": [ 737 | "{title} {seasonCode}", 738 | "{title} season", 739 | "{title} {year} {seasonCode}", 740 | "{title} {year} season" 741 | ] 742 | }, 743 | "html_parser": { 744 | "row": "doc.querySelectorAll('table.ttable_headinner tbody tr.t-row:nth-child(odd)')", 745 | "title": "row.querySelector('td:nth-child(2) a:nth-child(2)').textContent", 746 | "peers": "row.querySelector('td:nth-child(7)').textContent", 747 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 748 | "size": "row.querySelector('td:nth-child(5)').textContent", 749 | "url": "row.querySelector('td:nth-child(4) a').getAttribute('href')" 750 | }, 751 | "source_is_in_sub_page": false, 752 | "title_replacement": { 753 | ".": "", 754 | ":": "", 755 | "'": "", 756 | "&": "", 757 | "\"": "", 758 | "*": "" 759 | } 760 | }, 761 | "magnetdl": { 762 | "name": "MagnetDL", 763 | "enabled": true, 764 | "languages": [ 765 | "en" 766 | ], 767 | "base_url": "https://www.magnetdl.com", 768 | "fallback_urls": [ 769 | "https://magnetdl.unblockit.uno", 770 | "https://torrentquest.com" 771 | ], 772 | "response_type": "text", 773 | "separator": "-", 774 | "movie": { 775 | "query": "/{titleFirstLetter}/{query}/", 776 | "keywords": "{title} {year}" 777 | }, 778 | "episode": { 779 | "query": "/{titleFirstLetter}/{query}/", 780 | "keywords": [ 781 | "{title} {episodeCode}", 782 | "{title} {year} {episodeCode}" 783 | ] 784 | }, 785 | "season": { 786 | "query": "/{titleFirstLetter}/{query}/", 787 | "keywords": [ 788 | "{title} {seasonCode}", 789 | "{title} season", 790 | "{title} {year} {seasonCode}", 791 | "{title} {year} season" 792 | ] 793 | }, 794 | "html_parser": { 795 | "row": "doc.querySelectorAll('table.download tbody tr:nth-child(odd)')", 796 | "title": "row.querySelector('td:nth-child(2) a') ? row.querySelector('td:nth-child(2) a').getAttribute('title') : ''", 797 | "peers": "row.querySelector('td:nth-child(8)') ? row.querySelector('td:nth-child(8)').textContent : ''", 798 | "seeds": "row.querySelector('td:nth-child(7)') ? row.querySelector('td:nth-child(7)').textContent : ''", 799 | "size": "row.querySelector('td:nth-child(6)') ? row.querySelector('td:nth-child(6)').textContent.replace(',','') : ''", 800 | "url": "row.querySelector('td:nth-child(1) a') ? row.querySelector('td:nth-child(1) a').getAttribute('href') : ''" 801 | }, 802 | "source_is_in_sub_page": false, 803 | "title_replacement": { 804 | ".": "", 805 | ":": "", 806 | "'": "", 807 | "&": "", 808 | "\"": "", 809 | "*": "" 810 | } 811 | }, 812 | "rutor": { 813 | "name": "RuTor", 814 | "enabled": true, 815 | "languages": [ 816 | "ru" 817 | ], 818 | "base_url": "http://rutor.info", 819 | "response_type": "text", 820 | "movie": { 821 | "query": "/search/{query}", 822 | "keywords": "{title} {year}" 823 | }, 824 | "episode": { 825 | "query": "/search/{query}", 826 | "keywords": [ 827 | "{title} {episodeCode}", 828 | "{title} {year} {episodeCode}" 829 | ] 830 | }, 831 | "html_parser": { 832 | "row": "doc.querySelectorAll('tbody tr')", 833 | "title": "row.querySelector('td:nth-child(2)').innerText", 834 | "peers": "row.querySelector('td:nth-last-child(1) span.green').innerText", 835 | "seeds": "row.querySelector('td:nth-last-child(1) span.red').innerText", 836 | "size": "row.querySelector('td:nth-last-child(2)').innerText", 837 | "url": "row.querySelector('td:nth-child(2) a:nth-child(2)').getAttribute('href')" 838 | }, 839 | "source_is_in_sub_page": false 840 | }, 841 | "nyaa": { 842 | "name": "Nyaa", 843 | "enabled": true, 844 | "languages": [ 845 | "en" 846 | ], 847 | "base_url": "https://nyaa.si", 848 | "fallback_urls": [], 849 | "response_type": "text", 850 | "movie": { 851 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 852 | "keywords": "{title} {year}" 853 | }, 854 | "episode": { 855 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 856 | "keywords": "{title} {absoluteNumber}" 857 | }, 858 | "season": { 859 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 860 | "keywords": [ 861 | "{title} {seasonCode}", 862 | "{title} season" 863 | ] 864 | }, 865 | "anime": { 866 | "query": "/?f=0&c=1_0&q={query}&s=seeders&o=desc", 867 | "keywords": [ 868 | "{title} {absoluteNumber}", 869 | "{title} {episode}" 870 | ] 871 | }, 872 | "separator": "+", 873 | "html_parser": { 874 | "row": "doc.querySelectorAll('.torrent-list tbody tr')", 875 | "title": "row.querySelector('td:nth-child(2) a:last-child').textContent", 876 | "peers": "row.querySelector('td:nth-child(7)').textContent", 877 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 878 | "size": "row.querySelector('td:nth-child(4)').textContent", 879 | "url": "row.querySelector('td:nth-child(3) a:nth-child(2)').getAttribute('href')" 880 | }, 881 | "source_is_in_sub_page": false, 882 | "title_replacement": { 883 | ".": "", 884 | ":": "", 885 | "'": "", 886 | "&": "", 887 | "\"": "", 888 | "*": "" 889 | } 890 | }, 891 | "nyaa2": { 892 | "name": "Nyaa2", 893 | "enabled": true, 894 | "languages": [ 895 | "en" 896 | ], 897 | "base_url": "https://nyaa.si", 898 | "fallback_urls": [], 899 | "response_type": "text", 900 | "movie": { 901 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 902 | "keywords": "{title} {year}" 903 | }, 904 | "episode": { 905 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 906 | "keywords": "{title} {episode}" 907 | }, 908 | "season": { 909 | "query": "/?f=0&c=1_0&q={query}&s=seeders&o=desc", 910 | "keywords": [ 911 | "{title} {seasonCode}", 912 | "{title} season" 913 | ] 914 | }, 915 | "anime": { 916 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 917 | "keywords": [ 918 | "{title} {absoluteNumber}", 919 | "{title} {episode}" 920 | ] 921 | }, 922 | "separator": "+", 923 | "html_parser": { 924 | "row": "doc.querySelectorAll('.table-responsive tbody > tr')", 925 | "title": "row.querySelector('td:nth-child(2) a').textContent", 926 | "peers": "row.querySelector('td:nth-child(7)').textContent.trim()", 927 | "seeds": "row.querySelector('td:nth-child(6)').textContent.trim()", 928 | "size": "row.querySelector('td:nth-child(4)').textContent.trim()", 929 | "url": "row.querySelector('td:nth-child(3) a:nth-child(2)').getAttribute('href')" 930 | }, 931 | "source_is_in_sub_page": false, 932 | "title_replacement": { 933 | ".": "", 934 | ":": "", 935 | "'": "", 936 | "&": "", 937 | "\"": "", 938 | "*": "" 939 | } 940 | }, 941 | "limetorrents": { 942 | "name": "LimeTorrents", 943 | "enabled": true, 944 | "languages": [ 945 | "en" 946 | ], 947 | "base_url": "https://www.limetorrents.pro", 948 | "fallback_urls": [ 949 | "https://www.limetorrents.asia", 950 | "https://www.limetorrents.zone", 951 | "https://www.limetorrents.co", 952 | "https://www.limetor.com", 953 | "https://www.limetor.pro", 954 | "https://www.limetorrents.info", 955 | "https://limetorrents.unblockit.uno" 956 | ], 957 | "response_type": "text", 958 | "separator": "-", 959 | "movie": { 960 | "query": "/search/movies/{query}/seeds/1/", 961 | "keywords": "{title} {year}" 962 | }, 963 | "episode": { 964 | "query": "/search/tv/{query}/seeds/1/", 965 | "keywords": [ 966 | "{title} {episodeCode}", 967 | "{title} {year} {episodeCode}" 968 | ] 969 | }, 970 | "season": { 971 | "query": "/search/tv/{query}/seeds/1/", 972 | "keywords": [ 973 | "{title} {seasonCode}", 974 | "{title} season", 975 | "{title} {year} {seasonCode}", 976 | "{title} {year} season" 977 | ] 978 | }, 979 | "anime": { 980 | "query": "/search/anime/{query}/seeds/1/", 981 | "keywords": [ 982 | "{title} {absoluteNumber}", 983 | "{title} {episode}" 984 | ] 985 | }, 986 | "html_parser": { 987 | "row": "doc.querySelectorAll('.table2 tbody tr:nth-child(n+2)')", 988 | "title": "row.querySelector('.tt-name').textContent", 989 | "peers": "row.querySelector('.tdseed').textContent.replace(',','')", 990 | "seeds": "row.querySelector('.tdleech').textContent.replace(',','')", 991 | "size": "row.querySelector('.tdnormal:nth-child(3)').textContent", 992 | "url": "row.querySelector('.tt-name a:nth-child(2)').getAttribute('href')" 993 | }, 994 | "source_is_in_sub_page": true, 995 | "title_replacement": { 996 | ".": "", 997 | ":": "", 998 | "'": "", 999 | "&": "", 1000 | "\"": "", 1001 | "*": "" 1002 | } 1003 | }, 1004 | "torrent9": { 1005 | "name": "Torrent9", 1006 | "enabled": true, 1007 | "languages": [ 1008 | "fr" 1009 | ], 1010 | "base_url": "https://torrent9.to", 1011 | "fallback_urls": [], 1012 | "response_type": "text", 1013 | "movie": { 1014 | "query": "/search_torrent/{query}.html", 1015 | "keywords": [ 1016 | "{title.fr} {year}", 1017 | "{title} {year}" 1018 | ] 1019 | }, 1020 | "episode": { 1021 | "query": "/search_torrent/{query}.html", 1022 | "keywords": [ 1023 | "{title} {episodeCode}", 1024 | "{title} {year} {episodeCode}" 1025 | ] 1026 | }, 1027 | "season": { 1028 | "query": "/search_torrent/{query}.html", 1029 | "keywords": [ 1030 | "{title} {seasonCode}", 1031 | "{title} season", 1032 | "{title} {year} {seasonCode}", 1033 | "{title} {year} season" 1034 | ] 1035 | }, 1036 | "html_parser": { 1037 | "row": "doc.querySelectorAll('.table-responsive tr')", 1038 | "title": "row.querySelector('td:nth-child(1) a').textContent", 1039 | "peers": "row.querySelector('td:nth-child(4)').textContent", 1040 | "seeds": "row.querySelector('td:nth-child(3)').textContent", 1041 | "size": "row.querySelector('td:nth-child(2)').textContent", 1042 | "url": "row.querySelector('td:nth-child(1) a').getAttribute('href')" 1043 | }, 1044 | "source_is_in_sub_page": true, 1045 | "title_replacement": { 1046 | ".": "", 1047 | ":": "", 1048 | "'": "", 1049 | "&": "", 1050 | "\"": "", 1051 | "*": "" 1052 | } 1053 | }, 1054 | "ilcorsaronero": { 1055 | "name": "IlCorsaroNero", 1056 | "enabled": true, 1057 | "languages": [ 1058 | "it" 1059 | ], 1060 | "base_url": "http://ilcorsaronero.link", 1061 | "fallback_urls": [ 1062 | "https://ilcorsaronero.pro", 1063 | "https://ilcorsaronero.fun" 1064 | ], 1065 | "response_type": "text", 1066 | "separator": "+", 1067 | "movie": { 1068 | "query": "/argh.php?search={query}", 1069 | "keywords": "{title} {year}" 1070 | }, 1071 | "episode": { 1072 | "query": "/argh.php?search={query}", 1073 | "keywords": [ 1074 | "{title.it} {episodeCode}", 1075 | "{title.original} {episodeCode}", 1076 | "{title.it} {year} {episodeCode}", 1077 | "{title.original} {year} {episodeCode}" 1078 | ] 1079 | }, 1080 | "season": { 1081 | "query": "/argh.php?search={query}", 1082 | "keywords": [ 1083 | "{title.it} {seasonCode}", 1084 | "{title.original} {seasonCode}", 1085 | "{title.it} season", 1086 | "{title.original} season", 1087 | "{title.it} {year} {seasonCode}", 1088 | "{title.original} {year} {seasonCode}", 1089 | "{title.it} {year} season", 1090 | "{title.original} {year} season" 1091 | ] 1092 | }, 1093 | "html_parser": { 1094 | "row": "doc.querySelectorAll('tr.odd, tr.odd2')", 1095 | "title": "row.querySelector('td:nth-child(2)').textContent", 1096 | "peers": "row.querySelector('td:nth-child(7)').textContent", 1097 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 1098 | "size": "row.querySelector('td:nth-child(3)').textContent", 1099 | "url": "'magnet:?xt=urn:btih:'+ row.querySelector('input').value" 1100 | }, 1101 | "source_is_in_sub_page": false, 1102 | "title_replacement": { 1103 | ".": "", 1104 | ":": "", 1105 | "'": "", 1106 | "&": "", 1107 | "\"": "", 1108 | "*": "" 1109 | } 1110 | }, 1111 | "_1337x": { 1112 | "name": "1337x", 1113 | "enabled": true, 1114 | "languages": [ 1115 | "en" 1116 | ], 1117 | "base_url": "https://1337x.to", 1118 | "fallback_urls": [ 1119 | "https://1337x.st", 1120 | "https://x1337x.ws", 1121 | "https://x1337x.eu", 1122 | "https://x1337x.se", 1123 | "https://1337x.unblockit.uno" 1124 | ], 1125 | "response_type": "text", 1126 | "movie": { 1127 | "query": "/category-search/{query}/Movies/1/", 1128 | "keywords": "{title} {year}" 1129 | }, 1130 | "episode": { 1131 | "query": "/sort-category-search/{query}/TV/size/desc/1/", 1132 | "keywords": [ 1133 | "{title} {episodeCode}", 1134 | "{title} {year} {episodeCode}" 1135 | ] 1136 | }, 1137 | "season": { 1138 | "query": "/sort-category-search/{query}/TV/size/desc/1/", 1139 | "keywords": [ 1140 | "{title} {seasonCode}", 1141 | "{title} season", 1142 | "{title} {year} {seasonCode}", 1143 | "{title} {year} season" 1144 | ] 1145 | }, 1146 | "anime": { 1147 | "query": "/category-search/{query}/Anime/1/", 1148 | "keywords": [ 1149 | "{title} {absoluteNumber}", 1150 | "{title} {episode}" 1151 | ] 1152 | }, 1153 | "separator": "+", 1154 | "html_parser": { 1155 | "row": "doc.querySelectorAll('tbody > tr')", 1156 | "title": "row.querySelector('a:nth-child(2)').innerHTML", 1157 | "peers": "row.querySelector('.leeches').innerHTML", 1158 | "seeds": "row.querySelector('.seeds').innerHTML", 1159 | "size": "row.querySelector('tbody > tr .size').textContent.split('B')[0] + 'B'", 1160 | "url": "row.querySelector('a:nth-child(2)').getAttribute('href')" 1161 | }, 1162 | "source_is_in_sub_page": true, 1163 | "title_replacement": { 1164 | ".": "", 1165 | ":": "", 1166 | "'": "", 1167 | "&": "", 1168 | "\"": "", 1169 | "*": "" 1170 | } 1171 | }, 1172 | "bitsearch": { 1173 | "name": "BitSearch", 1174 | "enabled": true, 1175 | "languages": [ 1176 | "en" 1177 | ], 1178 | "base_url": "https://bitsearch.to", 1179 | "response_type": "text", 1180 | "separator": "+", 1181 | "movie": { 1182 | "query": "/search?q={query}&sort=seeders", 1183 | "keywords": "{title} {year}" 1184 | }, 1185 | "episode": { 1186 | "query": "/search?q={query}&sort=seeders", 1187 | "keywords": [ 1188 | "{title} {episodeCode}", 1189 | "{title} {year} {episodeCode}" 1190 | ] 1191 | }, 1192 | "season": { 1193 | "query": "/search?q={query}&sort=seeders", 1194 | "keywords": [ 1195 | "{title} {seasonCode}", 1196 | "{title} season", 1197 | "{title} {year} {seasonCode}", 1198 | "{title} {year} season" 1199 | ] 1200 | }, 1201 | "anime": { 1202 | "query": "/search?q={query}&sort=seeders", 1203 | "keywords": [ 1204 | "{title} {absoluteNumber}", 1205 | "{title} {episode}" 1206 | ] 1207 | }, 1208 | "html_parser": { 1209 | "row": "doc.querySelectorAll('.search-result')", 1210 | "title": "row.querySelector('.title a').textContent", 1211 | "peers": "row.querySelector('.stats div:nth-child(4)').textContent.trim().replace('.','').replace('K','00')", 1212 | "seeds": "row.querySelector('.stats div:nth-child(3)').textContent.trim().replace('.','').replace('K','00')", 1213 | "size": "row.querySelector('.stats div:nth-child(2)').textContent", 1214 | "url": "row.querySelector('.dl-magnet').getAttribute('href')" 1215 | }, 1216 | "source_is_in_sub_page": false, 1217 | "title_replacement": { 1218 | ".": "", 1219 | ":": "", 1220 | "'": "", 1221 | "&": "", 1222 | "\"": "", 1223 | "*": "" 1224 | } 1225 | }, 1226 | "oxtorrent": { 1227 | "name": "OxTorrent", 1228 | "enabled": true, 1229 | "languages": [ 1230 | "fr" 1231 | ], 1232 | "base_url": "https://oxtorrent.pe", 1233 | "fallback_urls": [], 1234 | "response_type": "text", 1235 | "movie": { 1236 | "query": "/recherche/{query}", 1237 | "keywords": "{title} {year}" 1238 | }, 1239 | "episode": { 1240 | "query": "/recherche/{query}", 1241 | "keywords": [ 1242 | "{title} {episodeCode}", 1243 | "{title} {year} {episodeCode}" 1244 | ] 1245 | }, 1246 | "season": { 1247 | "query": "/recherche/{query}", 1248 | "keywords": [ 1249 | "{title} {seasonCode}", 1250 | "{title} season", 1251 | "{title} {year} {seasonCode}", 1252 | "{title} {year} season" 1253 | ] 1254 | }, 1255 | "anime": { 1256 | "query": "/recherche/{query}", 1257 | "keywords": [ 1258 | "{title} {absoluteNumber}", 1259 | "{title} {episode}" 1260 | ] 1261 | }, 1262 | "separator": "%20", 1263 | "html_parser": { 1264 | "row": "doc.querySelectorAll('tbody > tr')", 1265 | "title": "row.querySelector('a:nth-child(2)').innerHTML", 1266 | "peers": "row.querySelector(':nth-child(4)').textContent.trim()", 1267 | "seeds": "row.querySelector(':nth-child(3)').textContent.trim()", 1268 | "size": "row.querySelector('td:nth-child(2)').textContent.trim()", 1269 | "url": "row.querySelector('a:nth-child(2)').getAttribute('href')" 1270 | }, 1271 | "source_is_in_sub_page": true, 1272 | "title_replacement": { 1273 | ".": "", 1274 | ":": "", 1275 | "'": "", 1276 | "&": "", 1277 | "\"": "", 1278 | "*": "" 1279 | } 1280 | }, 1281 | "pirateiro": { 1282 | "name": "Pirateiro", 1283 | "enabled": true, 1284 | "languages": [ 1285 | "en" 1286 | ], 1287 | "base_url": "http://pirateiro.com", 1288 | "fallback_urls": [ 1289 | "https://pirateiro.unblockit.uno" 1290 | ], 1291 | "response_type": "text", 1292 | "movie": { 1293 | "query": "/torrents/?c300=1&search={query}&orderby=tamanho", 1294 | "keywords": "{title} {year}" 1295 | }, 1296 | "episode": { 1297 | "query": "/torrents/?search={query}&c700=1&qualityvideo=0&audiolanguage=0&subtitle=0&imdbrating=0", 1298 | "keywords": [ 1299 | "{title} {episodeCode}", 1300 | "{title} {year} {episodeCode}" 1301 | ] 1302 | }, 1303 | "season": { 1304 | "query": "/torrents/?search={query}&c700=1&qualityvideo=0&audiolanguage=0&subtitle=0&imdbrating=0", 1305 | "keywords": [ 1306 | "{title} {seasonCode}", 1307 | "{title} season", 1308 | "{title} {year} {seasonCode}", 1309 | "{title} {year} season" 1310 | ] 1311 | }, 1312 | "anime": { 1313 | "query": "/torrents/?search={query}&c100=1&c700=1&qualityvideo=0&audiolanguage=0&subtitle=0&imdbrating=0", 1314 | "keywords": [ 1315 | "{title} {absoluteNumber}", 1316 | "{title} {episode}" 1317 | ] 1318 | }, 1319 | "html_parser": { 1320 | "row": "doc.querySelectorAll('tr.impar')", 1321 | "title": "row.querySelector('a > b').textContent", 1322 | "peers": "row.querySelector('td:nth-child(6) > b > font').textContent.replace(' ', '')", 1323 | "seeds": "row.querySelector('b > font').textContent.replace(' ', '')", 1324 | "size": "row.querySelector('td > font').textContent", 1325 | "url": "row.querySelector('a.imagnet.icon16').getAttribute('href')" 1326 | }, 1327 | "source_is_in_sub_page": false 1328 | }, 1329 | "7torr": { 1330 | "name": "SevenTorrents", 1331 | "enabled": true, 1332 | "languages": [ 1333 | "en" 1334 | ], 1335 | "base_url": "http://7torr.com", 1336 | "fallback_urls": [ 1337 | "https://seventorrents.unblockit.uno" 1338 | ], 1339 | "response_type": "text", 1340 | "movie": { 1341 | "query": "/search?q={query}", 1342 | "keywords": "{title} {year}" 1343 | }, 1344 | "episode": { 1345 | "query": "/search?q={query}", 1346 | "keywords": [ 1347 | "{title} {episodeCode}", 1348 | "{title} {year} {episodeCode}" 1349 | ] 1350 | }, 1351 | "season": { 1352 | "query": "/search?q={query}", 1353 | "keywords": [ 1354 | "{title} {seasonCode}", 1355 | "{title} season", 1356 | "{title} {year} {seasonCode}", 1357 | "{title} {year} season" 1358 | ] 1359 | }, 1360 | "anime": { 1361 | "query": "/search?q={query}", 1362 | "keywords": [ 1363 | "{title} {absoluteNumber}", 1364 | "{title} {episode}" 1365 | ] 1366 | }, 1367 | "separator": "+", 1368 | "html_parser": { 1369 | "row": "doc.querySelectorAll('tbody tr.row')", 1370 | "title": "row.querySelector('td:nth-child(1) .rtitle a').textContent", 1371 | "peers": "row.querySelector('td:nth-child(5)').textContent", 1372 | "seeds": "row.querySelector('td:nth-child(4)').textContent", 1373 | "size": "row.querySelector('td:nth-child(2)').textContent", 1374 | "url": "row.querySelector('td:nth-child(6) a').getAttribute('href')" 1375 | }, 1376 | "source_is_in_sub_page": false, 1377 | "title_replacement": { 1378 | ".": "", 1379 | ":": "", 1380 | "'": "", 1381 | "&": "", 1382 | "\"": "", 1383 | "*": "" 1384 | } 1385 | }, 1386 | "AnimeTosho": { 1387 | "name": "AnimeTosho", 1388 | "enabled": true, 1389 | "languages": [ 1390 | "en" 1391 | ], 1392 | "base_url": "https://animetosho.org", 1393 | "fallback_urls": [], 1394 | "response_type": "text", 1395 | "movie": { 1396 | "query": "/search?q={query}", 1397 | "keywords": "{title} {year}" 1398 | }, 1399 | "episode": { 1400 | "query": "/search?q={query}", 1401 | "keywords": [ 1402 | "{title} {absoluteNumber}", 1403 | "{title} {episode}" 1404 | ] 1405 | }, 1406 | "season": { 1407 | "query": "/search?q={query}", 1408 | "keywords": [ 1409 | "{title} {seasonCode}", 1410 | "{title} season" 1411 | ] 1412 | }, 1413 | "anime": { 1414 | "query": "/search?q={query}", 1415 | "keywords": [ 1416 | "{title} {absoluteNumber}", 1417 | "{title} {episode}" 1418 | ] 1419 | }, 1420 | "separator": "+", 1421 | "html_parser": { 1422 | "row": "doc.querySelectorAll('.home_list_entry')", 1423 | "title": "row.querySelector('.link a').textContent", 1424 | "peers": "row.querySelector('span:nth-child(5)').textContent.match(/\\d+/g)[1]", 1425 | "seeds": "row.querySelector('span:nth-child(5)').textContent.match(/\\d+/g)[0]", 1426 | "size": "row.querySelector('.size').textContent", 1427 | "url": "row.querySelector('.links a:nth-child(4)').getAttribute('href')" 1428 | }, 1429 | "source_is_in_sub_page": false, 1430 | "title_replacement": { 1431 | ".": "", 1432 | ":": "", 1433 | "'": "", 1434 | "&": "", 1435 | "\"": "", 1436 | "*": "" 1437 | } 1438 | }, 1439 | "Torlock": { 1440 | "name": "TorLock", 1441 | "enabled": true, 1442 | "languages": [ 1443 | "en" 1444 | ], 1445 | "base_url": "https://www.torlock.com", 1446 | "fallback_urls": [ 1447 | "https://torlock.unblockit.uno" 1448 | ], 1449 | "response_type": "text", 1450 | "movie": { 1451 | "query": "/movie/torrents/{query}.html?", 1452 | "keywords": "{title} {year}" 1453 | }, 1454 | "episode": { 1455 | "query": "/television/torrents/{query}.html?", 1456 | "keywords": [ 1457 | "{title} {episodeCode}", 1458 | "{title} {year} {episodeCode}" 1459 | ] 1460 | }, 1461 | "season": { 1462 | "query": "/television/torrents/{query}.html?", 1463 | "keywords": [ 1464 | "{title} {seasonCode}", 1465 | "{title} season", 1466 | "{title} {year} {seasonCode}", 1467 | "{title} {year} season" 1468 | ] 1469 | }, 1470 | "anime": { 1471 | "query": "/anime/torrents/{query}.html?", 1472 | "keywords": [ 1473 | "{title} {absoluteNumber}", 1474 | "{title} {episode}" 1475 | ] 1476 | }, 1477 | "separator": "-", 1478 | "html_parser": { 1479 | "row": "doc.querySelectorAll('tbody tr')", 1480 | "title": "row.querySelector('td:nth-child(1) a b').textContent", 1481 | "peers": "row.querySelector('.tdl').textContent", 1482 | "seeds": "row.querySelector('.tul').textContent", 1483 | "size": "row.querySelector('.ts').textContent", 1484 | "url": "row.querySelector('td:nth-child(1) a').getAttribute('href')" 1485 | }, 1486 | "source_is_in_sub_page": true, 1487 | "title_replacement": { 1488 | ".": "", 1489 | ":": "", 1490 | "'": "", 1491 | "&": "", 1492 | "\"": "", 1493 | "*": "" 1494 | } 1495 | }, 1496 | "AniDex": { 1497 | "name": "AniDex", 1498 | "enabled": true, 1499 | "languages": [ 1500 | "en" 1501 | ], 1502 | "base_url": "https://anidex.info", 1503 | "fallback_urls": [], 1504 | "response_type": "text", 1505 | "movie": { 1506 | "query": "/?q={query}", 1507 | "keywords": "{title} {year}" 1508 | }, 1509 | "episode": { 1510 | "query": "/?q={query}", 1511 | "keywords": [ 1512 | "{title} {absoluteNumber}", 1513 | "{title} {episode}" 1514 | ] 1515 | }, 1516 | "season": { 1517 | "query": "/?q={query}", 1518 | "keywords": [ 1519 | "{title} {seasonCode}", 1520 | "{title} season" 1521 | ] 1522 | }, 1523 | "anime": { 1524 | "query": "/?q={query}", 1525 | "keywords": [ 1526 | "{title} {absoluteNumber}", 1527 | "{title} {episode}" 1528 | ] 1529 | }, 1530 | "separator": "+", 1531 | "html_parser": { 1532 | "row": "doc.querySelectorAll('tbody tr')", 1533 | "title": "row.querySelector('td:nth-child(3) a').textContent", 1534 | "peers": "row.querySelector('span:nth-child(10)').textContent", 1535 | "seeds": "row.querySelector('td:nth-child(9)').textContent", 1536 | "size": "row.querySelector('td:nth-child(7)').textContent", 1537 | "url": "row.querySelector('td:nth-child(6) a').getAttribute('href')" 1538 | }, 1539 | "source_is_in_sub_page": false, 1540 | "title_replacement": { 1541 | ".": "", 1542 | ":": "", 1543 | "'": "", 1544 | "&": "", 1545 | "\"": "", 1546 | "*": "" 1547 | } 1548 | } 1549 | } 1550 | -------------------------------------------------------------------------------- /ultra.txt: -------------------------------------------------------------------------------- 1 | { 2 | "extratorrent": { 3 | "name": "ExtraTorrent", 4 | "enabled": true, 5 | "languages": ["en"], 6 | "base_url": "https://extratorrent.st", 7 | "fallback_urls": [ 8 | "https://extratorrent2.unblockninja.com", 9 | "https://extratorrent.unblocked.nz", 10 | "https://extra.torrentbay.to" 11 | ], 12 | "response_type": "text", 13 | "movie": { 14 | "query": "/search/?search={query}&new=1&x=0&y=0", 15 | "keywords": "{title} {year}" 16 | }, 17 | "episode": { 18 | "query": "/search/?search={query}&new=1&x=0&y=0", 19 | "keywords": "{title} {episodeCode}" 20 | }, 21 | "season": { 22 | "query": "/search/?search={query}&new=1&x=0&y=0", 23 | "keywords": [ 24 | "{title} {seasonCode}", 25 | "{title} season" 26 | ] 27 | }, 28 | "anime": { 29 | "query": "/search/?search={query}&new=1&x=0&y=0", 30 | "keywords": "{title} {absoluteNumber}" 31 | }, 32 | "html_parser": { 33 | "row": "doc.querySelectorAll('table.tl tbody tr')", 34 | "title": "row.querySelector('td.tli > a').textContent", 35 | "peers": "row.querySelector('td:nth-child(7)').textContent", 36 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 37 | "size": "row.querySelector('td:nth-child(5)').textContent", 38 | "url": "row.querySelector('table.tl td:nth-child(1) > a').getAttribute('href')" 39 | }, 40 | "source_is_in_sub_page": false, 41 | "title_replacement": { 42 | ".": "", 43 | ":": "", 44 | "'": "", 45 | "&": "", 46 | "\"": "", 47 | "*": "" 48 | } 49 | }, 50 | 51 | "torrentapi": { 52 | "name": "RARBG", 53 | "enabled": true, 54 | "languages": ["en"], 55 | "base_url": "https://torrentapi.org", 56 | "fallback_urls": [], 57 | "response_type": "json", 58 | "time_to_wait_between_each_request_ms": 300, 59 | "time_to_wait_on_too_many_request_ms": 2000, 60 | "trust_results": true, 61 | "token": { 62 | "query": "/pubapi_v2.php?get_token=get_token&app_id=helios", 63 | "token_validity_time_ms": 840000, 64 | "token_format": { 65 | "token": "token" 66 | } 67 | }, 68 | "movie": { 69 | "query": "/pubapi_v2.php?mode=search&search_imdb={query}&category=movies&format=json_extended&app_id=helios&token={token}", 70 | "keywords": "{imdbId}" 71 | }, 72 | "episode": { 73 | "query": "/pubapi_v2.php?mode=search&search_string={query}&category=tv&format=json_extended&app_id=helios&token={token}", 74 | "keywords": "{title} {episodeCode}" 75 | }, 76 | "season": { 77 | "query": "/pubapi_v2.php?mode=search&search_string={query}&category=tv&format=json_extended&app_id=helios&token={token}", 78 | "keywords": [ 79 | "{title} {seasonCode}", 80 | "{title} season" 81 | ] 82 | }, 83 | "json_format": { 84 | "results": "torrent_results", 85 | "url": "download", 86 | "title": "title", 87 | "seeds": "seeders", 88 | "peers": "leechers", 89 | "size": "size" 90 | }, 91 | "title_replacement": { 92 | "'s": "s", 93 | "\"": "" 94 | } 95 | }, 96 | 97 | "bitlord": { 98 | "name": "BitLord", 99 | "enabled": true, 100 | "languages": ["en"], 101 | "base_url": "https://bitlordsearch.com", 102 | "fallback_urls": [], 103 | "response_type": "text", 104 | "movie": { 105 | "query": "/search?q={query}", 106 | "keywords": "{title} {year}" 107 | }, 108 | "episode": { 109 | "query": "/search?q={query}", 110 | "keywords": "{title} {episodeCode}" 111 | }, 112 | "season": { 113 | "query": "/search?q={query}", 114 | "keywords": [ 115 | "{title} {seasonCode}", 116 | "{title} season" 117 | ] 118 | }, 119 | "anime": { 120 | "query": "/search?q={query}", 121 | "keywords": "{title} {absoluteNumber}" 122 | }, 123 | "html_parser": { 124 | "row": "doc.querySelectorAll('#container table tbody tr.bls-row')", 125 | "title": "row.querySelector('.title').textContent", 126 | "peers": "row.querySelector('.peers').textContent", 127 | "seeds": "row.querySelector('.seeds').textContent", 128 | "size": "(row.querySelector('.size').textContent < 120 ? row.querySelector('.size').textContent * 1024 : (row.querySelector('.size').textContent > 122880 ? row.querySelector('.size').textContent / 1204 : row.querySelector('.size').textContent))+' MB'", 129 | "url": "row.querySelector('.magnet-button').getAttribute('href')" 130 | }, 131 | "title_replacement": { 132 | ".": "", 133 | ":": "", 134 | "'": "", 135 | "&": "" 136 | } 137 | }, 138 | 139 | "zooqle": { 140 | "name": "Zooqle", 141 | "enabled": true, 142 | "languages": ["en"], 143 | "base_url": "https://zooqle.com", 144 | "fallback_urls": [ 145 | "https://zooqle.t0r.club", 146 | "https://zooqle-com.unblocksites.fun", 147 | "https://zooqle.unblocked.win", 148 | "https://zooqle.nocensor.xyz", 149 | "https://zooqle.unblocked.llc", 150 | "https://zooqle.unblocked.krd", 151 | "https://zooqle.p4y.info" 152 | ], 153 | "response_type": "text", 154 | "separator": "+", 155 | "movie": { 156 | "query": "/search?q={query}", 157 | "keywords": "{title} {year}" 158 | }, 159 | "episode": { 160 | "query": "/search?q={query}", 161 | "keywords": "{title} {episodeCode}" 162 | }, 163 | "season": { 164 | "query": "/search?q={query}", 165 | "keywords": [ 166 | "{title} {seasonCode}", 167 | "{title} season" 168 | ] 169 | }, 170 | "anime": { 171 | "query": "/search?q={query}", 172 | "keywords": "{title} {absoluteNumber}" 173 | }, 174 | "html_parser": { 175 | "row": "doc.querySelectorAll('.table-torrents tbody tr')", 176 | "title": "row.querySelector('td:nth-child(2) a').textContent", 177 | "peers": "row.querySelector('td:nth-child(6) .progress-bar:nth-child(2)') ? row.querySelector('td:nth-child(6) .prog-r').textContent : 0", 178 | "seeds": "row.querySelector('td:nth-child(6) .progress-bar:nth-child(1)') ? row.querySelector('td:nth-child(6) .prog-l').textContent : 0", 179 | "size": "row.querySelector('td:nth-child(4) .progress-bar').textContent.replace('K','000')", 180 | "url": "row.querySelector('td:nth-child(3) li:nth-child(2) a').getAttribute('href')" 181 | }, 182 | "source_is_in_sub_page": false, 183 | "title_replacement": { 184 | ".": "", 185 | ":": "", 186 | "'": "", 187 | "&": "" 188 | } 189 | }, 190 | 191 | "piratebay": { 192 | "name": "PirateBay", 193 | "enabled": true, 194 | "languages": ["en"], 195 | "base_url": "https://apibay.org", 196 | "fallback_urls": [], 197 | "response_type": "json", 198 | "movie": { 199 | "query": "/q.php?q={query}&cat=207,202,201", 200 | "keywords": "{title} {year}" 201 | }, 202 | "episode": { 203 | "query": "/q.php?q={query}&cat=208,205", 204 | "keywords": [ 205 | "{title} {episodeCode}" 206 | ] 207 | }, 208 | "season": { 209 | "query": "/q.php?q={query}&cat=208,205", 210 | "keywords": [ 211 | "{title} {seasonCode}", 212 | "{title} season" 213 | ] 214 | }, 215 | "json_format": { 216 | "title": "name", 217 | "seeds": "seeders", 218 | "peers": "leechers", 219 | "size": "size", 220 | "hash": "info_hash" 221 | }, 222 | "title_replacement": { 223 | "'s": "s", 224 | "\"": "" 225 | } 226 | }, 227 | 228 | "torrentdownload": { 229 | "name": "TorrentDownload", 230 | "enabled": true, 231 | "languages": ["en"], 232 | "base_url": "https://www.torrentdownload.info", 233 | "fallback_urls": [], 234 | "response_type": "text", 235 | "separator": "+", 236 | "source_is_in_sub_page": true, 237 | "movie": { 238 | "query": "/search?q={query}", 239 | "keywords": "{title} {year}" 240 | }, 241 | "episode": { 242 | "query": "/search?q={query}", 243 | "keywords": "{title} {episodeCode}" 244 | }, 245 | "season": { 246 | "query": "/search?q={query}", 247 | "keywords": [ 248 | "{title} {seasonCode}", 249 | "{title} season" 250 | ] 251 | }, 252 | "anime": { 253 | "query": "/search?q={query}", 254 | "keywords": "{title} {absoluteNumber}" 255 | }, 256 | "html_parser": { 257 | "row": "doc.querySelectorAll('table:nth-of-type(2) tbody tr:not(:first-child)')", 258 | "title": "row.querySelector('.tt-name a').textContent", 259 | "peers": "row.querySelector('.tdleech').textContent.replace(',','')", 260 | "seeds": "row.querySelector('.tdseed').textContent.replace(',','')", 261 | "size": "row.querySelector('.tdnormal:nth-of-type(3)').textContent", 262 | "url": "row.querySelector('.tt-name a').getAttribute('href')" 263 | }, 264 | "title_replacement": { 265 | ".": "", 266 | ":": "", 267 | "'": "", 268 | "&": "" 269 | } 270 | }, 271 | 272 | "torrentdownloads": { 273 | "name": "TorrentDownloads", 274 | "enabled": true, 275 | "languages": ["en"], 276 | "base_url": "https://www.torrentdownloads.me", 277 | "fallback_urls": [ 278 | "https://www.torrentdownloads.info", 279 | "http://torrentdownloads.d4.re" 280 | ], 281 | "response_type": "text", 282 | "separator": "+", 283 | "source_is_in_sub_page": true, 284 | "movie": { 285 | "query": "/search/?search={query}", 286 | "keywords": "{title} {year}" 287 | }, 288 | "episode": { 289 | "query": "/search/?search={query}", 290 | "keywords": "{title} {episodeCode}" 291 | }, 292 | "season": { 293 | "query": "/search/?search={query}", 294 | "keywords": [ 295 | "{title} {seasonCode}", 296 | "{title} season" 297 | ] 298 | }, 299 | "anime": { 300 | "query": "/search/?search={query}", 301 | "keywords": "{title} {absoluteNumber}" 302 | }, 303 | "html_parser": { 304 | "row": "doc.querySelectorAll('.inner_container')[1].querySelectorAll('.grey_bar3')", 305 | "title": "row.querySelector('p a').textContent", 306 | "peers": "row.querySelector('span:nth-child(3)').textContent", 307 | "seeds": "row.querySelector('span:nth-child(4)').textContent", 308 | "size": "row.querySelector('span:nth-child(5)').textContent", 309 | "url": "row.querySelector('p a').getAttribute('href').match('http') || row.querySelector('p a').getAttribute('href').match('php') ? null : row.querySelector('p a').getAttribute('href')" 310 | }, 311 | "title_replacement": { 312 | ".": "", 313 | ":": "", 314 | "'": "", 315 | "&": "" 316 | } 317 | }, 318 | 319 | "kickass": { 320 | "name": "Kickass Torrents", 321 | "enabled": true, 322 | "languages": ["en"], 323 | "base_url": "https://kickass-kat.com", 324 | "fallback_urls": [ 325 | "https://kickass.vc", 326 | "https://kat.how", 327 | "https://kat.li", 328 | "https://kickass.cm", 329 | "https://kickass2.st", 330 | "https://kat.sx", 331 | "https://thekat.info", 332 | "https://kickass.unblocked.llc" 333 | ], 334 | "response_type": "text", 335 | "separator": "%20", 336 | "movie": { 337 | "query": "/usearch/{query}/?field=seeders&sorder=desc", 338 | "keywords": "{title} {year}" 339 | }, 340 | "episode": { 341 | "query": "/usearch/{query}/?field=seeders&sorder=desc", 342 | "keywords": "{title} {episodeCode}" 343 | }, 344 | "season": { 345 | "query": "/usearch/{query}/?field=seeders&sorder=desc", 346 | "keywords": [ 347 | "{title} {seasonCode}", 348 | "{title} season" 349 | ] 350 | }, 351 | "anime": { 352 | "query": "/usearch/{query}/?field=seeders&sorder=desc", 353 | "keywords": "{title} {absoluteNumber}" 354 | }, 355 | "html_parser": { 356 | "row": "doc.querySelectorAll('.data tbody tr:not(.firstr)')", 357 | "title": "row.querySelector('td:nth-child(1) .torrentname .torType a').textContent", 358 | "peers": "row.querySelectorAll('.green').textContent", 359 | "seeds": "row.querySelectorAll('.red').textContent", 360 | "size": "row.querySelector('.nobr').textContent", 361 | "url": "decodeURIComponent(row.querySelector('td:nth-child(1) div:nth-child(1) a:nth-last-child(2)').getAttribute('href').replace('https://mylink.cx/?url=', '').trim())" 362 | }, 363 | "title_replacement": { 364 | ".": "", 365 | ":": "", 366 | "'": "", 367 | "&": "" 368 | } 369 | }, 370 | 371 | "torrentgalaxy": { 372 | "name": "TorrentGalaxy", 373 | "enabled": true, 374 | "languages": ["en"], 375 | "base_url": "https://torrentgalaxy.to", 376 | "fallback_urls": [ 377 | "https://torrentgalaxy.org", 378 | "https://torrentgalaxy.pw" 379 | ], 380 | "response_type": "text", 381 | "separator": "+", 382 | "movie": { 383 | "query": "/torrents.php?search={query}", 384 | "keywords": "{title} {year}" 385 | }, 386 | "episode": { 387 | "query": "/torrents.php?search={query}", 388 | "keywords": "{title} {episodeCode}" 389 | }, 390 | "season": { 391 | "query": "/torrents.php?search={query}", 392 | "keywords": [ 393 | "{title} {seasonCode}", 394 | "{title} season" 395 | ] 396 | }, 397 | "anime": { 398 | "query": "/torrents.php?search={query}", 399 | "keywords": "{title} {absoluteNumber}" 400 | }, 401 | "html_parser": { 402 | "row": "doc.querySelectorAll('.tgxtable .tgxtablerow')", 403 | "title": "row.querySelector('.tgxtablecell:nth-child(4) a:nth-child(1)').getAttribute('title')", 404 | "peers": "row.querySelector('.tgxtablecell:nth-child(11) span font:nth-child(2)').textContent", 405 | "seeds": "row.querySelector('.tgxtablecell:nth-child(11) span font:nth-child(1)').textContent", 406 | "size": "row.querySelector('.tgxtablecell:nth-child(8)').textContent", 407 | "url": "row.querySelector('.tgxtablecell:nth-child(5) a:nth-child(2)').getAttribute('href')" 408 | }, 409 | "title_replacement": { 410 | ".": "", 411 | ":": "", 412 | "'": "", 413 | "&": "" 414 | } 415 | }, 416 | 417 | "eztv": { 418 | "name": "EZTV", 419 | "enabled": true, 420 | "languages": ["en"], 421 | "base_url": "https://eztv.io", 422 | "fallback_urls": [ 423 | "https://eztv.re", 424 | "https://eztv.ag", 425 | "https://eztv.it", 426 | "https://eztv.ch" 427 | ], 428 | "response_type": "text", 429 | "episode": { 430 | "query": "/search/{query}", 431 | "keywords": "{title} {episodeCode}" 432 | }, 433 | "season": { 434 | "query": "/search/{query}", 435 | "keywords": [ 436 | "{title} {seasonCode}", 437 | "{title} season" 438 | ] 439 | }, 440 | "html_parser": { 441 | "row": "doc.querySelectorAll('tr.forum_header_border')", 442 | "title": "row.querySelector('td:nth-child(2)').textContent", 443 | "peers": "row.querySelector('td:nth-child(6)').textContent", 444 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 445 | "size": "row.querySelector('td:nth-child(4)').textContent", 446 | "url": "row.querySelector('td:nth-child(3) a').getAttribute('href')" 447 | }, 448 | "title_replacement": { 449 | "'s": "s", 450 | "\"": "" 451 | } 452 | }, 453 | 454 | "skytorrents": { 455 | "name": "SkyTorrents", 456 | "enabled": true, 457 | "languages": ["en"], 458 | "base_url": "https://www.skytorrents.to", 459 | "fallback_urls": [], 460 | "response_type": "text", 461 | "separator": "%20", 462 | "movie": { 463 | "query": "/?search={query}&sort=seeders", 464 | "keywords": "{title} {year}" 465 | }, 466 | "episode": { 467 | "query": "/?search={query}&sort=seeders", 468 | "keywords": "{title} {episodeCode}" 469 | }, 470 | "season": { 471 | "query": "/?search={query}&sort=seeders", 472 | "keywords": [ 473 | "{title} {seasonCode}", 474 | "{title} season" 475 | ] 476 | }, 477 | "html_parser": { 478 | "row": "doc.querySelectorAll('tbody .result')", 479 | "title": "row.querySelector('td:nth-child(1) a').textContent", 480 | "peers": "row.querySelector('td:nth-child(6)').textContent", 481 | "seeds": "row.querySelector('td:nth-child(5)').textContent", 482 | "size": "row.querySelector('td:nth-child(2)').textContent", 483 | "url": "row.querySelectorAll('td:nth-child(1) a')[2].getAttribute('href')" 484 | }, 485 | "title_replacement": { 486 | ".": "", 487 | ":": "", 488 | "'": "", 489 | "&": "" 490 | } 491 | }, 492 | 493 | "glodls": { 494 | "name": "GloTorrents", 495 | "enabled": true, 496 | "languages": ["en"], 497 | "base_url": "https://glodls.to", 498 | "fallback_urls": [], 499 | "response_type": "text", 500 | "separator": "+", 501 | "movie": { 502 | "query": "/search_results.php?search={query}&cat=1&incldead=0&inclexternal=0&lang=1&sort=size&order=desc", 503 | "keywords": "{title} {year}" 504 | }, 505 | "episode": { 506 | "query": "/search_results.php?search={query}&cat=41&incldead=0&inclexternal=0&lang=1&sort=seeders&order=desc", 507 | "keywords": "{title} {episodeCode}" 508 | }, 509 | "season": { 510 | "query": "/search_results.php?search={query}&cat=41&incldead=0&inclexternal=0&lang=1&sort=seeders&order=desc", 511 | "keywords": [ 512 | "{title} {seasonCode}", 513 | "{title} season" 514 | ] 515 | }, 516 | "html_parser": { 517 | "row": "doc.querySelectorAll('table.ttable_headinner tbody tr.t-row:nth-child(odd)')", 518 | "title": "row.querySelector('td:nth-child(2) a:nth-child(2)').textContent", 519 | "peers": "row.querySelector('td:nth-child(7)').textContent", 520 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 521 | "size": "row.querySelector('td:nth-child(5)').textContent", 522 | "url": "row.querySelector('td:nth-child(4) a').getAttribute('href')" 523 | }, 524 | "title_replacement": { 525 | ".": "", 526 | ":": "", 527 | "'": "", 528 | "&": "" 529 | } 530 | }, 531 | 532 | "magnetdl": { 533 | "name": "MagnetDL", 534 | "enabled": true, 535 | "languages": ["en"], 536 | "base_url": "https://www.magnetdl.com", 537 | "fallback_urls": [ 538 | "https://torrentquest.com" 539 | ], 540 | "response_type": "text", 541 | "separator": "-", 542 | "movie": { 543 | "query": "/{titleFirstLetter}/{query}/", 544 | "keywords": "{title} {year}" 545 | }, 546 | "episode": { 547 | "query": "/{titleFirstLetter}/{query}/", 548 | "keywords": "{title} {episodeCode}" 549 | }, 550 | "season": { 551 | "query": "/{titleFirstLetter}/{query}/", 552 | "keywords": [ 553 | "{title} {seasonCode}", 554 | "{title} season" 555 | ] 556 | }, 557 | "html_parser": { 558 | "row": "doc.querySelectorAll('table.download tbody tr:nth-child(odd)')", 559 | "title": "row.querySelector('td:nth-child(2) a') ? row.querySelector('td:nth-child(2) a').getAttribute('title') : ''", 560 | "peers": "row.querySelector('td:nth-child(8)') ? row.querySelector('td:nth-child(8)').textContent : ''", 561 | "seeds": "row.querySelector('td:nth-child(7)') ? row.querySelector('td:nth-child(7)').textContent : ''", 562 | "size": "row.querySelector('td:nth-child(6)') ? row.querySelector('td:nth-child(6)').textContent.replace(',','') : ''", 563 | "url": "row.querySelector('td:nth-child(1) a') ? row.querySelector('td:nth-child(1) a').getAttribute('href') : ''" 564 | }, 565 | "title_replacement": { 566 | "'s": "s", 567 | "\"": "" 568 | } 569 | }, 570 | 571 | "btdb": { 572 | "name": "BTDB", 573 | "enabled": true, 574 | "languages": ["en"], 575 | "base_url": "https://btdb.eu", 576 | "fallback_urls": [], 577 | "response_type": "text", 578 | "separator": "%20", 579 | "movie": { 580 | "query": "/search/{query}/0/?sort=popular", 581 | "keywords": "{title} {year}" 582 | }, 583 | "episode": { 584 | "query": "/search/{query}/0/?sort=popular", 585 | "keywords": "{title} {episodeCode}" 586 | }, 587 | "season": { 588 | "query": "/search/{query}/0/?sort=popular", 589 | "keywords": [ 590 | "{title} {seasonCode}", 591 | "{title} season" 592 | ] 593 | }, 594 | "anime": { 595 | "query": "/search/{query}/0/?sort=popular", 596 | "keywords": "{title} {absoluteNumber}" 597 | }, 598 | "html_parser": { 599 | "row": "doc.querySelectorAll('.card-body .media')", 600 | "title": "row.querySelector('.media-body .item-title').textContent", 601 | "peers": "row.querySelector('.item-meta-info small:nth-child(4) strong').textContent", 602 | "seeds": "row.querySelector('.item-meta-info small:nth-child(3) strong').textContent", 603 | "size": "row.querySelector('.item-meta-info small:nth-child(1) strong').textContent", 604 | "url": "row.querySelector('.media-right a:nth-child(1)').getAttribute('href')" 605 | }, 606 | "source_is_in_sub_page": false, 607 | "title_replacement": { 608 | ".": "", 609 | ":": "", 610 | "'": "", 611 | "&": "" 612 | } 613 | }, 614 | 615 | "solidtorrents": { 616 | "name": "SolidTorrents", 617 | "enabled": true, 618 | "languages": ["en"], 619 | "base_url": "https://solidtorrents.net/api/v1/search?q={query}&category=video&sort=seeders", 620 | "fallback_urls": [], 621 | "response_type": "json", 622 | "separator": "%20", 623 | "movie": { 624 | "query": "", 625 | "keywords": "{title} {year}" 626 | }, 627 | "episode": { 628 | "query": "", 629 | "keywords": "{title} {episodeCode}" 630 | }, 631 | "season": { 632 | "query": "", 633 | "keywords": [ 634 | "{title} {seasonCode}", 635 | "{title} season" 636 | ] 637 | }, 638 | "anime": { 639 | "query": "", 640 | "keywords": "{title} {absoluteNumber}" 641 | }, 642 | "json_format": { 643 | "results": "results", 644 | "url": "magnet", 645 | "title": "title", 646 | "seeds": "swarm.seeders", 647 | "peers": "swarm.leechers", 648 | "size": "size", 649 | "hash": "info_hash" 650 | }, 651 | "title_replacement": { 652 | ".": "", 653 | ":": "", 654 | "'": "", 655 | "&": "" 656 | } 657 | }, 658 | 659 | "limetorrents": { 660 | "name": "LimeTorrents", 661 | "enabled": true, 662 | "languages": ["en"], 663 | "base_url": "https://www.limetorrents.info", 664 | "fallback_urls": [ 665 | "https://www.limetorrents.asia", 666 | "https://www.limetorrents.zone" 667 | ], 668 | "response_type": "text", 669 | "separator": "-", 670 | "movie": { 671 | "query": "/search/movies/{query}/seeds/1/", 672 | "keywords": "{title} {year}" 673 | }, 674 | "episode": { 675 | "query": "/search/tv/{query}/seeds/1/", 676 | "keywords": "{title} {episodeCode}" 677 | }, 678 | "season": { 679 | "query": "/search/tv/{query}/seeds/1/", 680 | "keywords": "{title} {seasonCode}" 681 | }, 682 | "anime": { 683 | "query": "/search/anime/{query}/seeds/1/", 684 | "keywords": "{title} {absoluteNumber}" 685 | }, 686 | "html_parser": { 687 | "row": "doc.querySelectorAll('.table2 tbody tr:nth-child(n+2)')", 688 | "title": "row.querySelector('.tt-name').textContent", 689 | "peers": "row.querySelector('.tdseed').textContent.replace(',','')", 690 | "seeds": "row.querySelector('.tdleech').textContent.replace(',','')", 691 | "size": "row.querySelector('.tdnormal:nth-child(3)').textContent", 692 | "url": "row.querySelector('.tt-name a:nth-child(2)').getAttribute('href')" 693 | }, 694 | "source_is_in_sub_page": true, 695 | "title_replacement": { 696 | ".": "", 697 | ":": "", 698 | "'": "", 699 | "&": "" 700 | } 701 | }, 702 | 703 | "leet": { 704 | "name": "1337x", 705 | "enabled": true, 706 | "languages": ["en"], 707 | "base_url": "https://1337x.to", 708 | "fallback_urls": [ 709 | "https://1337x.st", 710 | "https://1337x.is", 711 | "https://1337x.gd", 712 | "https://1337x.am", 713 | "https://x1337x.ws", 714 | "https://x1337x.eu", 715 | "https://x1337x.se", 716 | "https://1337x.unblocked.llc", 717 | "https://1337x.unblocker.cc", 718 | "https://1337x.unblockall.org" 719 | ], 720 | "response_type": "text", 721 | "movie": { 722 | "query": "/category-search/{query}/Movies/1/", 723 | "keywords": "{title} {year}" 724 | }, 725 | "episode": { 726 | "query": " ", 727 | "keywords": "{title} {episodeCode}" 728 | }, 729 | "season": { 730 | "query": "/sort-category-search/{query}/TV/size/desc/1/", 731 | "keywords": [ 732 | "{title} {seasonCode}", 733 | "{title} season" 734 | ] 735 | }, 736 | "anime": { 737 | "query": "/category-search/{query}/Anime/1/", 738 | "keywords": "{title} {episode}" 739 | }, 740 | "separator": "+", 741 | "html_parser": { 742 | "row": "doc.querySelectorAll('tbody > tr')", 743 | "title": "row.querySelector('a:nth-child(2)').innerHTML", 744 | "peers": "row.querySelector('.leeches').innerHTML", 745 | "seeds": "row.querySelector('.seeds').innerHTML", 746 | "size": "row.querySelector('tbody > tr .size').textContent.split('B')[0] + 'B'", 747 | "url": "row.querySelector('a:nth-child(2)').getAttribute('href')" 748 | }, 749 | "source_is_in_sub_page": true, 750 | "title_replacement": { 751 | "'s": "s", 752 | "\"": "" 753 | } 754 | }, 755 | 756 | "pirateiro": { 757 | "name": "Pirateiro", 758 | "enabled": true, 759 | "languages": ["en"], 760 | "base_url": "http://pirateiro.com", 761 | "fallback_urls": [ 762 | "https://pirateiro.unblocked.nz" 763 | ], 764 | "response_type": "text", 765 | "movie": { 766 | "query": "/torrents/?c300=1&search={query}&orderby=tamanho", 767 | "keywords": "{title} {year}" 768 | }, 769 | "episode": { 770 | "query": "/torrents/?search={query}&c700=1&qualityvideo=0&audiolanguage=0&subtitle=0&imdbrating=0", 771 | "keywords": "{title} {episodeCode}" 772 | }, 773 | "season": { 774 | "query": "/torrents/?search={query}&c700=1&qualityvideo=0&audiolanguage=0&subtitle=0&imdbrating=0", 775 | "keywords": [ 776 | "{title} {seasonCode}", 777 | "{title} season" 778 | ] 779 | }, 780 | "anime": { 781 | "query": "/torrents/?search={query}&c100=1&c700=1&qualityvideo=0&audiolanguage=0&subtitle=0&imdbrating=0", 782 | "keywords": "{title} {absoluteNumber}" 783 | }, 784 | "html_parser": { 785 | "row": "doc.querySelectorAll('tr.impar')", 786 | "title": "row.querySelector('a > b').textContent", 787 | "peers": "row.querySelector('td:nth-child(6) > b > font').textContent.replace(' ', '')", 788 | "seeds": "row.querySelector('b > font').textContent.replace(' ', '')", 789 | "size": "row.querySelector('td > font').textContent", 790 | "url": "row.querySelector('a.imagnet.icon16').getAttribute('href')" 791 | }, 792 | "source_is_in_sub_page": false 793 | }, 794 | 795 | "7torr": { 796 | "name": "SevenTorrents", 797 | "enabled": true, 798 | "languages": ["en"], 799 | "base_url": "http://7torr.com", 800 | "fallback_urls": [], 801 | "response_type": "text", 802 | "movie": { 803 | "query": "/search?q={query}", 804 | "keywords": "{title} {year}" 805 | }, 806 | "episode": { 807 | "query": "/search?q={query}", 808 | "keywords": "{title} {episodeCode}" 809 | }, 810 | "season": { 811 | "query": "/search?q={query}", 812 | "keywords": [ 813 | "{title} {seasonCode}", 814 | "{title} season" 815 | ] 816 | }, 817 | "anime": { 818 | "query": "/search?q={query}", 819 | "keywords": "{title} {episode}" 820 | }, 821 | "separator": "+", 822 | "html_parser": { 823 | "row": "doc.querySelectorAll('tbody tr')", 824 | "title": "row.querySelector('td:nth-child(1) .rtitle a').textContent", 825 | "peers": "row.querySelector('td:nth-child(5)').textContent", 826 | "seeds": "row.querySelector('td:nth-child(4)').textContent", 827 | "size": "row.querySelector('td:nth-child(2)').textContent", 828 | "url": "row.querySelector('td:nth-child(6) a').getAttribute('href')" 829 | }, 830 | "source_is_in_sub_page": false, 831 | "title_replacement": { 832 | "'s": "s", 833 | "\"": "" 834 | } 835 | }, 836 | 837 | "yourbittorrent": { 838 | "name": "YourBittorent", 839 | "enabled": true, 840 | "languages": ["en"], 841 | "base_url": "https://yourbittorrent.com", 842 | "fallback_urls": [ 843 | "https://yourbittorrent2.com" 844 | ], 845 | "response_type": "text", 846 | "movie": { 847 | "keywords": "{title} {year}", 848 | "query": "/?v=&c=1&q={query}" 849 | }, 850 | "episode": { 851 | "keywords": "{title} {episodeCode}", 852 | "query": "/?v=&c=3&q={query}" 853 | }, 854 | "season": { 855 | "keywords": "{title} {seasonCode}", 856 | "query": "/?v=&c=3&q={query}" 857 | }, 858 | "anime": { 859 | "keywords": "{title} {episode}", 860 | "query": "/?v=&c=&q={query}" 861 | }, 862 | "html_parser": { 863 | "row": "doc.querySelectorAll('tr.table-default')", 864 | "title": "row.querySelector('td:nth-child(2)').textContent", 865 | "peers": "row.querySelector('td:nth-child(6)').textContent", 866 | "seeds": "row.querySelector('td:nth-child(7)').textContent", 867 | "size": "row.querySelector('td:nth-child(4)').textContent", 868 | "url": "row.querySelector('td:nth-child(3) a:nth-child(3)').getAttribute('href')" 869 | }, 870 | "title_replacement": { 871 | "&": "", 872 | "'": "", 873 | ".": "", 874 | ":": "" 875 | } 876 | }, 877 | 878 | "oxtorrent": { 879 | "name": "oxtorrent", 880 | "enabled": true, 881 | "languages": ["fr"], 882 | "base_url": "https://www.oxtorrent.com", 883 | "fallback_urls": [], 884 | "response_type": "text", 885 | "movie": { 886 | "query": "/recherche/{query}", 887 | "keywords": "{title} {year}" 888 | }, 889 | "episode": { 890 | "query": "/recherche/{query}", 891 | "keywords": "{title} {episodeCode}" 892 | }, 893 | "season": { 894 | "query": "/recherche/{query}", 895 | "keywords": [ 896 | "{title} {seasonCode}", 897 | "{title} season" 898 | ] 899 | }, 900 | "anime": { 901 | "query": "/recherche/{query}", 902 | "keywords": "{title} {episode}" 903 | }, 904 | "separator": "%20", 905 | "html_parser": { 906 | "row": "doc.querySelectorAll('tbody > tr')", 907 | "title": "row.querySelector('a:nth-child(2)').innerHTML", 908 | "peers": "row.querySelector(':nth-child(4)').textContent.trim()", 909 | "seeds": "row.querySelector(':nth-child(3)').textContent.trim()", 910 | "size": "row.querySelector('td:nth-child(2)').textContent.trim()", 911 | "url": "row.querySelector('a:nth-child(2)').getAttribute('href')" 912 | }, 913 | "source_is_in_sub_page": true, 914 | "title_replacement": { 915 | "'s": "s", 916 | "\"": "" 917 | } 918 | }, 919 | 920 | "torrent9": { 921 | "name": "Torrent9", 922 | "enabled": true, 923 | "languages": ["fr"], 924 | "base_url": "https://ww1.torrent9.to", 925 | "fallback_urls": [], 926 | "response_type": "text", 927 | "movie": { 928 | "query": "/search_torrent/{query}.html", 929 | "keywords": [ 930 | "{title.fr}", 931 | "{title}" 932 | ] 933 | }, 934 | "episode": { 935 | "query": "/search_torrent/{query}.html", 936 | "keywords": "{title} {episodeCode}" 937 | }, 938 | "season": { 939 | "query": "/search_torrent/{query}.html", 940 | "keywords": "{title} {seasonCode}" 941 | }, 942 | "html_parser": { 943 | "row": "doc.querySelectorAll('.table-responsive tr')", 944 | "title": "row.querySelector('td:nth-child(1) a').textContent", 945 | "peers": "row.querySelector('td:nth-child(4)').textContent", 946 | "seeds": "row.querySelector('td:nth-child(3)').textContent", 947 | "size": "row.querySelector('td:nth-child(2)').textContent", 948 | "url": "'https://ww1.torrent9.to'+row.querySelector('td:nth-child(1) a').getAttribute('href')" 949 | }, 950 | "source_is_in_sub_page": true, 951 | "title_replacement": { 952 | "\"": "", 953 | "'s": "s" 954 | } 955 | }, 956 | 957 | "ilcorsaronero": { 958 | "name": "ilCorSaRoNeRo", 959 | "enabled": true, 960 | "languages": ["it"], 961 | "base_url": "http://ilcorsaronero.link", 962 | "fallback_urls": [], 963 | "response_type": "text", 964 | "separator": "+", 965 | "movie": { 966 | "query": "/argh.php?search={query}", 967 | "keywords": "{title} {year}" 968 | }, 969 | "episode": { 970 | "query": "/argh.php?search={query}", 971 | "keywords": [ 972 | "{title.it} {episodeCode}", 973 | "{title.original} {episodeCode}" 974 | ] 975 | }, 976 | "season": { 977 | "query": "/argh.php?search={query}", 978 | "keywords": [ 979 | "{title.it} {seasonCode}", 980 | "{title.original} {seasonCode}" 981 | ] 982 | }, 983 | "html_parser": { 984 | "row": "doc.querySelectorAll('tr.odd, tr.odd2')", 985 | "title": "row.querySelector('td:nth-child(2)').textContent", 986 | "peers": "row.querySelector('td:nth-child(7 )').textContent", 987 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 988 | "size": "row.querySelector('td:nth-child(3)').textContent", 989 | "url": "'magnet:?xt=urn:btih:'+ row.querySelector('input').value" 990 | }, 991 | "title_replacement": { 992 | "'s": "s", 993 | "\"": "" 994 | } 995 | }, 996 | 997 | "rutor": { 998 | "name": "RuTor", 999 | "enabled": true, 1000 | "languages": ["ru"], 1001 | "base_url": "http://rutor.info", 1002 | "fallback_urls": [], 1003 | "response_type": "text", 1004 | "movie": { 1005 | "query": "/search/{query}", 1006 | "keywords": "{title} {year}" 1007 | }, 1008 | "episode": { 1009 | "query": "/search/{query}", 1010 | "keywords": "{title} {season}" 1011 | }, 1012 | "html_parser": { 1013 | "row": "doc.querySelectorAll('tbody tr')", 1014 | "title": "row.querySelector('td:nth-child(2)').innerText", 1015 | "peers": "row.querySelector('td:nth-last-child(1) span.green').innerText", 1016 | "seeds": "row.querySelector('td:nth-last-child(1) span.red').innerText", 1017 | "size": "row.querySelector('td:nth-last-child(2)').innerText", 1018 | "url": "row.querySelector('td:nth-child(2) a:nth-child(2)').getAttribute('href')" 1019 | } 1020 | }, 1021 | 1022 | "anirena": { 1023 | "name": "AniRena", 1024 | "enabled": true, 1025 | "languages": ["en"], 1026 | "base_url": "https://www.anirena.com", 1027 | "fallback_urls": [], 1028 | "response_type": "text", 1029 | "separator": "+", 1030 | "movie": { 1031 | "query": "/?s={query}", 1032 | "keywords": "{title}" 1033 | }, 1034 | "episode": { 1035 | "query": "/?s={query}", 1036 | "keywords": [ 1037 | "{title} {absoluteNumber}", 1038 | "{title} {episode}" 1039 | ] 1040 | }, 1041 | "season": { 1042 | "query": "/?s={query}", 1043 | "keywords": [ 1044 | "{title} {seasonCode}", 1045 | "{title} season" 1046 | ] 1047 | }, 1048 | "anime": { 1049 | "query": "/?s={query}", 1050 | "keywords": "{title} {absoluteNumber}" 1051 | }, 1052 | "html_parser": { 1053 | "row": "doc.querySelectorAll('div.full2')", 1054 | "title": "row.querySelector('table tbody tr .torrents_small_info_data1 a:nth-child(2)').textContent", 1055 | "peers": "row.querySelector('table tbody tr .torrents_small_leechers_data1').textContent", 1056 | "seeds": "row.querySelector('table tbody tr .torrents_small_seeders_data1').textContent", 1057 | "size": "row.querySelector('table tbody tr .torrents_small_size_data1').textContent", 1058 | "url": "row.querySelector('table tbody tr .torrents_small_info_data2 a:nth-child(2)').getAttribute('href')" 1059 | }, 1060 | "title_replacement": { 1061 | ".": "", 1062 | ":": "", 1063 | "'": "", 1064 | "&": "" 1065 | } 1066 | }, 1067 | 1068 | "nyaa_episode": { 1069 | "name": "Nyaa", 1070 | "enabled": true, 1071 | "languages": ["en"], 1072 | "base_url": "https://nyaa.si", 1073 | "fallback_urls": [], 1074 | "response_type": "text", 1075 | "movie": { 1076 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 1077 | "keywords": "{title} {year}" 1078 | }, 1079 | "episode": { 1080 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 1081 | "keywords": "{title} {episode}" 1082 | }, 1083 | "season": { 1084 | "query": "/?f=0&c=1_0&q={query}&s=seeders&o=desc", 1085 | "keywords": [ 1086 | "{title} {seasonCode}", 1087 | "{title} season" 1088 | ] 1089 | }, 1090 | "anime": { 1091 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 1092 | "keywords": "{title} {episode}" 1093 | }, 1094 | "separator": "+", 1095 | "html_parser": { 1096 | "row": "doc.querySelectorAll('.table-responsive tbody > tr')", 1097 | "title": "row.querySelector('td:nth-child(2) a').textContent", 1098 | "peers": "row.querySelector('td:nth-child(7)').textContent.trim()", 1099 | "seeds": "row.querySelector('td:nth-child(6)').textContent.trim()", 1100 | "size": "row.querySelector('td:nth-child(4)').textContent.trim()", 1101 | "url": "row.querySelector('td:nth-child(3) a:nth-child(2)').getAttribute('href')" 1102 | }, 1103 | "source_is_in_sub_page": false, 1104 | "title_replacement": { 1105 | "'s": "s", 1106 | "\"": "" 1107 | } 1108 | }, 1109 | 1110 | "nyaa_absolute": { 1111 | "name": "Nyaa", 1112 | "enabled": true, 1113 | "languages": ["en"], 1114 | "base_url": "https://nyaa.si", 1115 | "fallback_urls": [], 1116 | "response_type": "text", 1117 | "movie": { 1118 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 1119 | "keywords": "{title} {year}" 1120 | }, 1121 | "episode": { 1122 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 1123 | "keywords": "{title} {absoluteNumber}" 1124 | }, 1125 | "season": { 1126 | "query": "/?f=0&c=0_0&q={query}&s=seeders&o=desc", 1127 | "keywords": [ 1128 | "{title} {seasonCode}", 1129 | "{title} season" 1130 | ] 1131 | }, 1132 | "anime": { 1133 | "query": "/?f=0&c=1_0&q={query}&s=seeders&o=desc", 1134 | "keywords": "{title} {absoluteNumber}" 1135 | }, 1136 | "separator": "+", 1137 | "html_parser": { 1138 | "row": "doc.querySelectorAll('.torrent-list tbody tr')", 1139 | "title": "row.querySelector('td:nth-child(2) a:last-child').textContent", 1140 | "peers": "row.querySelector('td:nth-child(7)').textContent", 1141 | "seeds": "row.querySelector('td:nth-child(6)').textContent", 1142 | "size": "row.querySelector('td:nth-child(4)').textContent", 1143 | "url": "row.querySelector('td:nth-child(3) a:nth-child(2)').getAttribute('href')" 1144 | }, 1145 | "source_is_in_sub_page": false, 1146 | "title_replacement": { 1147 | "'s": "s", 1148 | "\"": "" 1149 | } 1150 | }, 1151 | 1152 | "animetosho": { 1153 | "name": "AnimeTosho", 1154 | "enabled": true, 1155 | "languages": ["en"], 1156 | "base_url": "https://animetosho.org", 1157 | "fallback_urls": [], 1158 | "response_type": "text", 1159 | "movie": { 1160 | "query": "/search?q={query}", 1161 | "keywords": "{title} {year}" 1162 | }, 1163 | "episode": { 1164 | "query": "/search?q={query}", 1165 | "keywords": [ 1166 | "{title} {absoluteNumber}", 1167 | "{title} {episode}" 1168 | ] 1169 | }, 1170 | "season": { 1171 | "query": "/search?q={query}", 1172 | "keywords": [ 1173 | "{title} {seasonCode}", 1174 | "{title} season" 1175 | ] 1176 | }, 1177 | "anime": { 1178 | "query": "/search?q={query}", 1179 | "keywords": [ 1180 | "{title} {absoluteNumber}", 1181 | "{title} {episode}" 1182 | ] 1183 | }, 1184 | "separator": "+", 1185 | "html_parser": { 1186 | "row": "doc.querySelectorAll('.home_list_entry')", 1187 | "title": "row.querySelector('.link a').textContent", 1188 | "peers": "row.querySelector('span:nth-child(5)').textContent.match(/\\d+/g)[1]", 1189 | "seeds": "row.querySelector('span:nth-child(5)').textContent.match(/\\d+/g)[0]", 1190 | "size": "row.querySelector('.size').textContent", 1191 | "url": "row.querySelector('.links a:nth-child(4)').getAttribute('href')" 1192 | }, 1193 | "source_is_in_sub_page": false, 1194 | "title_replacement": { 1195 | "'s": "s", 1196 | "\"": "" 1197 | } 1198 | } 1199 | } --------------------------------------------------------------------------------