Hi; Philip @qqilihq
I need help with a Cloudflare verification issue. I can’t pass verification when opening a website. It didn’t happen either with registered profile or normal operation. Is there a solution or example that you can give me advice to solve this problem?
Being marked does not allow progress, it requires re-verification and again… I cannot pass.
difficult to give any universal advice here. Passing the Cloudflare checks is definitely no easy and will always stand on shaky grounds and involve trial and error. Some ideas given in the article might work in conjunction with the Selenium Nodes. I would try as follows, starting easy:
Switch to a different browser (e.g. if you’re currently using the included “Chrome for Testing”, switch to Firefox to see if it makes a difference)
Switch off headless mode
Run the workflow until the challenge occurs - try to solve it manually - continue execution
You might see if the Solve CAPTCHA node can help with the Cloudflare challenges - I’m not sure to be honest, but it’s worth a try
Use rotating proxies - personally, I have recently used Crawlbase successfully for a larger crawling project. The proxies were reliable and the pricing seems fair. There’s plenty of other providers, too.
@umutcankurt Additionally, could you share the URL you’re trying to access with me, so that I can try it myself once I have time? (you can also share it by email if you don’t want to post it here).
Thank you for the information and the feedback, @umutcankurt
The background, in a nutshell: The verification box which you show above is from Cloudflare, and colloquially called the “Turnstile” to verify that you are “human”. What makes it different from the more traditional CAPTCHAS which waste your time by giving you stupid tasks (and which can be worked around using the Solve CAPTCHA node): All you need to do is click a checkbox - seemingly easy.
Except when you automate a browser using WebDriver or CDP. Then you can keep clicking and clicking and clicking and you will not pass.
How can you interact with a website in such a case? There’s a simple way: Stop the auto pilot temporarily, let the human side take over (if needed) to submissively proof your unconditional good intentions, and then continue with your workflow.
The good news: The brand new Selenium Nodes v5.5 provide an additional plugin for that - you can install it through the “Install KNIME Extensions” dialog by selecting “Selenium Nodes for KNIME: Undetected Chrome Utilities”. The plugin contains a modified WebDriver (select Chrome for Testing (bundled, undetected) [BETA] in the Start resp. WebDriver Factory node). You can then make use of three new nodes which you find under Selenium → Utilities → Undetected [BETA].
For sites which show the Turnstile when you navigate to a specific page: Schedule the navigation using a JavaScript setTimeout, disconnect the WebDriver, let the navigation happen, reconnect the WebDriver.
For sites which insist on clicking the Turnstile: Navigate, disconnect the WebDriver, pause the workflow, confirm the Turnstile (you must do that manually based on my current knowledge), then reconnect the WebDriver.
Not sure if these approaches will work for any imaginable scenario and they might require some additional MacGyver skills - yet they are hopefully a valuable addition in your toolbox to regain the control over your workflows.
Hi; @qqilihq
Thank you very much for this detailed solution you provided in a short time. I have been using selenium nodes for years and what I like most is that they are constantly renewing, improving and providing dynamic solutions. Thank you very much again Philipp for all your support and help.