Giter VIP home page Giter VIP logo

Comments (10)

xfouloux avatar xfouloux commented on May 18, 2024

So trying via jackett like this

docker network create --attachable torrent

docker run -d \
  --name jackett \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Europe/London \
  -e AUTO_UPDATE=true \
  -p 9117:9117 \
  -v "$(pwd)/jackett-dev/conf:/config" \
  --restart unless-stopped \
  --net=torrent \
  ghcr.io/linuxserver/jackett
  
docker build -t flaresolverr:test .
  
docker run -d --name flaresolverr \
  -e CAPTCHA_SOLVER=anticaptcha \
  -e ANTI_CAPTCHA_APIKEY=xxxxxx \
  -e LOG_LEVEL=debug \
  --net=torrent \
  flaresolverr:test

result when adding YGGTorrent indexer

result :

2020-12-16T03:30:30.067Z INFO REQ-0 FlareSolverr v1.2.0 listening on http://0.0.0.0:8191
2020-12-16T03:31:52.409Z INFO REQ-1 Incoming request: POST /v1
2020-12-16T03:31:52.417Z INFO REQ-1 Params: {"maxTimeout":60000,"cmd":"request.get","url":"https://www.yggtorrent.si/","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36"}
2020-12-16T03:31:52.420Z DEBUG REQ-1 Launching headless browser...
2020-12-16T03:31:53.032Z DEBUG REQ-1 Using custom UA: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
2020-12-16T03:31:53.040Z DEBUG REQ-1 Adding custom headers: {}
2020-12-16T03:31:53.040Z DEBUG REQ-1 { headers: [Function (anonymous)] }
2020-12-16T03:31:53.053Z DEBUG REQ-1 Navigating to... https://www.yggtorrent.si/
2020-12-16T03:31:53.084Z DEBUG REQ-1 {
  headers: {
    'upgrade-insecure-requests': '1',
    'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36'
  }
}
2020-12-16T03:31:53.318Z INFO REQ-1 Cloudflare detected
2020-12-16T03:31:53.377Z DEBUG REQ-1 Waiting for Cloudflare challenge...
2020-12-16T03:31:59.760Z DEBUG REQ-1 Validating HTML code...
2020-12-16T03:32:00.137Z INFO REQ-1 Successful response in 7.728 s
2020-12-16T03:32:37.332Z INFO REQ-2 Incoming request: POST /v1
2020-12-16T03:32:37.333Z INFO REQ-2 Params: {"maxTimeout":60000,"cmd":"request.get","url":"https://www2.yggtorrent.si/engine/search?category=all&name=&description=&file=&uploader=&sub_category=&do=search&order=desc&sort=publish_date&attempt=1","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36"}
2020-12-16T03:32:37.334Z DEBUG REQ-2 Launching headless browser...
2020-12-16T03:32:38.219Z DEBUG REQ-2 Using custom UA: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
2020-12-16T03:32:38.229Z DEBUG REQ-2 Adding custom headers: {}
2020-12-16T03:32:38.230Z DEBUG REQ-2 { headers: [Function (anonymous)] }
2020-12-16T03:32:38.232Z DEBUG REQ-2 Navigating to... https://www2.yggtorrent.si/engine/search?category=all&name=&description=&file=&uploader=&sub_category=&do=search&order=desc&sort=publish_date&attempt=1
2020-12-16T03:32:38.272Z DEBUG REQ-2 {
  headers: {
    'upgrade-insecure-requests': '1',
    'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36'
  }
}
2020-12-16T03:32:38.586Z INFO REQ-2 Cloudflare detected
2020-12-16T03:32:38.681Z DEBUG REQ-2 Waiting for Cloudflare challenge...
2020-12-16T03:32:44.716Z DEBUG REQ-2 Validating HTML code...
2020-12-16T03:32:44.749Z INFO REQ-2 Successful response in 7.417 s
2020-12-16T03:32:45.682Z INFO REQ-3 Incoming request: POST /v1
2020-12-16T03:32:45.683Z INFO REQ-3 Params: {"maxTimeout":60000,"cmd":"request.get","url":"https://www.yggtorrent.si/","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36"}
2020-12-16T03:32:45.683Z DEBUG REQ-3 Launching headless browser...
2020-12-16T03:32:46.120Z DEBUG REQ-3 Using custom UA: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
2020-12-16T03:32:46.124Z DEBUG REQ-3 Adding custom headers: {}
2020-12-16T03:32:46.124Z DEBUG REQ-3 { headers: [Function (anonymous)] }
2020-12-16T03:32:46.130Z DEBUG REQ-3 Navigating to... https://www.yggtorrent.si/
2020-12-16T03:32:46.157Z DEBUG REQ-3 {
  headers: {
    'upgrade-insecure-requests': '1',
    'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36'
  }
}
2020-12-16T03:32:46.364Z INFO REQ-3 Cloudflare detected
2020-12-16T03:32:46.411Z DEBUG REQ-3 Waiting for Cloudflare challenge...
2020-12-16T03:32:52.702Z DEBUG REQ-3 Validating HTML code...
2020-12-16T03:32:53.066Z INFO REQ-3 Successful response in 7.384 s
2020-12-16T03:32:56.551Z INFO REQ-4 Incoming request: POST /v1
2020-12-16T03:32:56.551Z INFO REQ-4 Params: {"maxTimeout":60000,"cmd":"request.get","url":"https://www2.yggtorrent.si/engine/search?category=all&name=&description=&file=&uploader=&sub_category=&do=search&order=desc&sort=publish_date&attempt=1","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36"}
2020-12-16T03:32:56.552Z DEBUG REQ-4 Launching headless browser...
2020-12-16T03:32:56.961Z DEBUG REQ-4 Using custom UA: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
2020-12-16T03:32:56.967Z DEBUG REQ-4 Adding custom headers: {}
2020-12-16T03:32:56.967Z DEBUG REQ-4 { headers: [Function (anonymous)] }
2020-12-16T03:32:56.969Z DEBUG REQ-4 Navigating to... https://www2.yggtorrent.si/engine/search?category=all&name=&description=&file=&uploader=&sub_category=&do=search&order=desc&sort=publish_date&attempt=1
2020-12-16T03:32:56.999Z DEBUG REQ-4 {
  headers: {
    'upgrade-insecure-requests': '1',
    'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36'
  }
}
2020-12-16T03:32:57.211Z INFO REQ-4 Cloudflare detected
2020-12-16T03:32:57.279Z DEBUG REQ-4 Waiting for Cloudflare challenge...
2020-12-16T03:33:07.922Z DEBUG REQ-4 Reloaded page...
2020-12-16T03:33:13.938Z DEBUG REQ-4 Validating HTML code...
2020-12-16T03:33:13.971Z INFO REQ-4 Successful response in 17.42 s

i got results, but i'm not sure i'm really using my captcha solver

from flaresolverr.

xfouloux avatar xfouloux commented on May 18, 2024

i managed to make a test using Cpasbien

2020-12-16T05:22:22.251Z ERROR REQ-6 TypeError: Cannot destructure property 'sitekey' of 'undefined' as it is undefined.
    at solve (/home/node/flaresolverr/dist/captcha/anticaptcha.js:7:33)
    at resolveChallenge (/home/node/flaresolverr/dist/routes.js:148:41)
    at processTicksAndRejections (node:internal/process/task_queues:93:5)
    at async browserRequest (/home/node/flaresolverr/dist/routes.js:290:22)
    at async request.get (/home/node/flaresolverr/dist/routes.js:330:9)
    at async Object.Router [as default] (/home/node/flaresolverr/dist/routes.js:351:16)
2020-12-16T05:22:22.254Z ERROR REQ-6 Unable to process browser request. Error: TypeError: Cannot destructure property 'sitekey' of 'undefined' as it is undefined.

well i think i found my issue, methods for anticaptcha needs to be passed with the sitekey, and i'm using type to switch(case)

so i needed to modify the export to be :

export default async function solve({ url, type, sitekey }: SolverOptions): Promise<string> {

now, i'm having trouble finding a site with the challenge, because now cpasbien respond this to me

image

from flaresolverr.

abeloin avatar abeloin commented on May 18, 2024

For the error 1020, look in the returned headers, there should be one with a timestamp indicating how long the ban is.

Also makes sure you call the page with a referer in the header

from flaresolverr.

abeloin avatar abeloin commented on May 18, 2024

A forgot to mention, it's already passing the sitekey:

export interface SolverOptions {
  url: string
  sitekey: string
  type: CaptchaType
}

also in route.ts:

log.info('Waiting to receive captcha token to bypass challenge...')
const token = await captchaSolver({
  url,
  sitekey,
  type: captchaType
})

from flaresolverr.

ngosang avatar ngosang commented on May 18, 2024

You can test with this site. I get hCaptcha 100% of the time:
https://pirateiro.com/torrents/?search=

from flaresolverr.

xfouloux avatar xfouloux commented on May 18, 2024

i'm having a bit of an issue there :

related : NoahCardoza/CloudProxy#18

code is

import log from '../log'

import { SolverOptions } from '.'
/*
    This method uses the @antiadmin/anticaptchaofficial project:
        https://github.com/AdminAnticaptcha/anticaptcha-npm
    TODO: 
    ENV:
        
*/

const solveCaptcha = require('@antiadmin/anticaptchaofficial');
let task = "";

export default async function solve({ url, sitekey, type }: SolverOptions): Promise<string> {
  try {
    log.debug(`Using anti-captcha solver with params`);
    log.debug(`url ${url}`);
    log.debug(`type ${type}`);
    log.debug(`sitekey ${sitekey}`);

    solveCaptcha.setAPIKey('xxxxxxxxxx')
    
    solveCaptcha.getBalance()
     .then(
       (balance: string) => console.log('my anti-captcha balance is $'+balance)
     )
     .catch((error: string) => console.log('received error '+error))
    //switch between functions given captchatype
    
    switch(type) {
      case 'funCaptcha':
        task = await solveCaptcha.solveFunCaptchaProxyless(url, sitekey)
        .then((gresponse: string) => {
            console.log('result: '+gresponse);
        })
        .catch((error: string) => console.log('test received error '+error));
        break;
      case 'reCaptcha':
        task = await solveCaptcha.solveRecaptchaV3(url,
            sitekey,
            0.3, //minimum score required: 0.3, 0.7 or 0.9
            'PAGE_ACTION_CAN_BE_EMPTY')
            .then((gresponse: string) => {
                console.log('g-response: '+gresponse);
            })
            .catch((error: string) => console.log('test received error '+error));
        break;
      case 'hCaptcha':
        task = await solveCaptcha.solveHCaptchaProxyless(url, sitekey)
            .then((gresponse: string) => {
            console.log('g-response: '+gresponse);
            })
            .catch((error: string) => console.log('test received error '+error));
        break;
      default:
        // code block
    }
    console.log('task result:' + task)
    return task
  } catch (e) {
    console.error(e)
    return null
  }
}

but result give that sitekey is not being sent

2020-12-17T01:17:27.415Z INFO REQ-1 Cloudflare detected
2020-12-17T01:17:27.478Z DEBUG REQ-1 No '#trk_jschal_js' challenge element detected.
2020-12-17T01:17:27.501Z DEBUG REQ-1 No '.ray_id' challenge element detected.
2020-12-17T01:17:27.516Z DEBUG REQ-1 No '.attack-box' challenge element detected.
2020-12-17T01:17:27.577Z INFO REQ-1 Waiting to receive captcha token to bypass challenge...
2020-12-17T01:17:27.580Z DEBUG REQ-1 Using anti-captcha solver with params
2020-12-17T01:17:27.581Z DEBUG REQ-1 url https://pirateiro.com/torrents/?search=
2020-12-17T01:17:27.583Z DEBUG REQ-1 type hCaptcha
2020-12-17T01:17:27.584Z DEBUG REQ-1 sitekey null
my anti-captcha balance is $5.00181
Received API error ERROR_INCORRECT_SESSION_DATA: Some of the required values for successive user emulation are missing. Missing property 'websiteKey'
test received error ERROR_INCORRECT_SESSION_DATA
task result:undefined
2020-12-17T01:17:28.999Z ERROR REQ-1 Token solver failed to return a token.

i think it's because in route.ts there is

if (captchaType != 'hCaptcha' && process.env.CAPTCHA_SOLVER != 'hcaptcha-solver') {
  const sitekeyElem = await page.$('*[data-sitekey]')
  if (!sitekeyElem) { return ctx.errorResponse('Could not find sitekey!') }
  sitekey = await sitekeyElem.evaluate((e) => e.getAttribute('data-sitekey'))
}

but it is a hcaptcha and hcaptcha have sitekey, So i commented out the if, and it confirms what i was not seeing in page code, it seems the page do not have a data-sitekey
moreover, anti captcha function asks for sitekey

    solveHCaptchaProxyless(websiteURL, websiteKey) {
        return new Promise((resolve, reject) => {
            this.JSONRequest('createTask', {
                'clientKey' : this.settings.clientKey,
                'task' : {
                    type:                   'HCaptchaTaskProxyless',
                    websiteURL:             websiteURL,
                    websiteKey:             websiteKey
                }
            })
                .then(res => {
                    this.settings.taskId = res.taskId;
                    return this.waitForResult(res.taskId);
                })
                .then(solution => {
                    resolve(solution.gRecaptchaResponse)
                })
                .catch(err => reject(err));
        });
    },

from flaresolverr.

xfouloux avatar xfouloux commented on May 18, 2024

using another website https://www.spacetorrent.cloud/

i get this html code

i need to get the sitekey from the div at bottom i guess, because it's not in a 'data-sitekey=' in an html element but in the iframe address

<div id="cf-hcaptcha-container"><iframe src="https://assets.hcaptcha.com/captcha/v1/6c04760/static/hcaptcha-checkbox.html#id=0vupeb0hr4yi&amp;host=www.spacetorrent.cloud&amp;sentry=true&amp;reportapi=https%3A%2F%2Faccounts.hcaptcha.com&amp;recaptchacompat=off&amp;sitekey=f9630567-8bfa-4fc9-8ee5-9c91c6276dff" title="widget containing checkbox for hCaptcha security challenge" tabindex="0" frameborder="0" scrolling="no" data-hcaptcha-widget-id="0vupeb0hr4yi" data-hcaptcha-response="" style="width: 303px; height: 78px; overflow: hidden;"></iframe><textarea id="h-captcha-response-0vupeb0hr4yi" name="h-captcha-response" style="display: none;"></textarea></div>

full html

<form class="challenge-form" id="challenge-form" action="/?__cf_chl_captcha_tk__=4ebc2981f3fbf0d5d93ff1c4eb5834f8c69d22b3-1608178191-0-AXIhkAVx2nN4qufDoqsY83A0UWr-eCgsgXm3ojSNXAv_NnLUpmaTHlnF2vQIPSjbOuHSVHtxF8rfFXDPNrF894T5WuB-J5keoojx_hpXK_YkxoCj-EobF3b-ehE1RTCZbgZI9vvxPXYoi3YmayQLxvOBqbbFm8h0xt8qJPPRsDPPBDaHxasmwdjjzMgeXk0x1rHjWJy15RIWK7D4JwjMBWGLlimbVuZ_FIwKN403y0HbkB5653omsTB2JRVPPJ7PX6AELO2w7FgcG5wT3frkzA9iqrmVvjg3jVGqWDx4z0Mss_dWLaByH5Gmv0xQEadTEktS9zXnC8PpkU1BgErnAJxPsa1oOxCbO31UNJqIUT-WanM-VqbIv-OpIhDnfk47wT0LphzOthPVSaoA536sE2sPqI_velqjC6K_-pm7fcZz9g7Q_4o0XmSkDB8AdQqQCj4y8M6pdX5hLbOPanNyHjoucX9BHL5i473jm6v8WfZ9YKOT7ebQMWHquHFGlRsJJrzWFmYBSxNZLom0s7kQW2gPNvFIbSNyguBY9duk_vsue2INxVQ4WjxPsOIlgFfQnOX9jmqzDrrIBbpao05GTVqfvX7YHXYesE9A4s75OP6K" method="POST" enctype="application/x-www-form-urlencoded">
  
    <div id="cf-please-wait" style="display: none;">
      <div id="spinner">
        <div id="cf-bubbles">
            <div class="bubbles"></div>
            <div class="bubbles"></div>
            <div class="bubbles"></div>
        </div>
      </div>
      <p data-translate="please_wait" id="cf-spinner-please-wait">Please stand by, while we are checking your browser...</p>
      </div>
  
  <input type="hidden" name="r" value="20ba2dc8dfe7ee245ece2910d201f37f5591315e-1608178191-0-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">
  <input type="hidden" name="cf_captcha_kind" value="h">
  <input type="hidden" name="vc" value="8d74b186a819606b81875770fac75dd6">
  
  <noscript id="cf-captcha-bookmark" class="cf-captcha-info">
  <h1 data-translate="turn_on_js" style="color:#bd2426;">Please turn JavaScript on and reload the page.</h1>
  </noscript>
    <div id="no-cookie-warning" class="cookie-warning" data-translate="turn_on_cookies" style="display:none">
      <p data-translate="turn_on_cookies" style="color: rgb(189, 36, 38); --darkreader-inline-color:#de5052;" data-darkreader-inline-color="">Please enable Cookies and reload the page.</p>
    </div>
  <script type="text/javascript">
  //<![CDATA[
    var a = function() {try{return !!window.addEventListener} catch(e) {return !1} },
      b = function(b, c) {a() ? document.addEventListener("DOMContentLoaded", b, c) : document.attachEvent("onreadystatechange", b)};
      b(function(){
        var cookiesEnabled=(navigator.cookieEnabled)? true : false;
        if(!cookiesEnabled){
          var q = document.getElementById('no-cookie-warning');q.style.display = 'block';
        }
      });
  //]]>
  </script>
  <div id="trk_captcha_js" style="background-image:url('/cdn-cgi/images/trace/captcha/nojs/h/transparent.gif?ray=602dca828ee816b1')"></div>
<div id="cf-hcaptcha-container"><iframe src="https://assets.hcaptcha.com/captcha/v1/6c04760/static/hcaptcha-checkbox.html#id=0vupeb0hr4yi&amp;host=www.spacetorrent.cloud&amp;sentry=true&amp;reportapi=https%3A%2F%2Faccounts.hcaptcha.com&amp;recaptchacompat=off&amp;sitekey=f9630567-8bfa-4fc9-8ee5-9c91c6276dff" title="widget containing checkbox for hCaptcha security challenge" tabindex="0" frameborder="0" scrolling="no" data-hcaptcha-widget-id="0vupeb0hr4yi" data-hcaptcha-response="" style="width: 303px; height: 78px; overflow: hidden;"></iframe><textarea id="h-captcha-response-0vupeb0hr4yi" name="h-captcha-response" style="display: none;"></textarea></div></form>

from flaresolverr.

abeloin avatar abeloin commented on May 18, 2024

if (captchaType != 'hCaptcha' && process.env.CAPTCHA_SOLVER != 'hcaptcha-solver')

This should run if hcaptcha and your solver isn't 'hcaptcha-solver'

Yes, you will have to modify the code in route.ts to make it work as Cloudflare + hcaptcha change a few month ago.

See this for more info: https://github.com/scaredos/cfresearch

from flaresolverr.

xfouloux avatar xfouloux commented on May 18, 2024

well yeah this is way above what i know to do =) !
Right now i'm having a timeout on https://www.spacetorrent.cloud/ because it won't follow the redirection with the cf_chl_jschl_tk token

i don't know if i can manage to do anything about the new way to get/solve etc... i'll try but don't expect much :/

from flaresolverr.

Zelak312 avatar Zelak312 commented on May 18, 2024

I see that this PR to implement Anti-captcha got dropped. I recently implemented the Anti-captcha addon in a playwright application. If it's fine to implement it via the addon instead of the API, I wouldn't mind trying to add it to FlareSolverr. I am just not really sure how the setup will work, if for example we package the addon within FlareSolverr or we let the user download and set it up?

from flaresolverr.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.