dgtlmoon / changedetection.io

The best and simplest free open source web page change detection, website watcher, restock monitor and notification service. Restock Monitor, change detection. Designed for simplicity - Simply monitor which websites had a text change for free. Free Open source web page change detection, Website defacement monitoring, Price change notification
https://changedetection.io
Apache License 2.0
15.79k stars 883 forks source link

Flaresolverr proxy returns Exception: net::ERR_TUNNEL_CONNECTION_FAILED #2444

Closed r3ps4J closed 1 week ago

r3ps4J commented 1 week ago

Describe the bug I'm trying to use a proxy, Flaresolverr, to get around clouflare protection. I've set it all up and the proxy is reachable from within the container, but when I try to check a site it shows "Exception: net::ERR_TUNNEL_CONNECTION_FAILED at ". This also shows in the docker logs:

changedetection  | 2024-06-26 12:01:27.926 | ERROR    | changedetectionio.update_worker:run:463 - net::ERR_TUNNEL_CONNECTION_FAILED at https://<url>

I set the logging to the TRACE level.

Additionally, I get this for the first default watch that's in it with flaresolverr as default proxy still enabled: Exception: HTTPSConnectionPool(host='news.ycombinator.com', port=443): Max retries exceeded with url: / (Caused by ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 404 Not Found')))

And in docker logs:

changedetection  | 2024-06-26 12:06:13.619 | ERROR    | changedetectionio.update_worker:run:463 - HTTPSConnectionPool(host='news.ycombinator.com', port=443): Max retries exceeded with url: / (Caused by ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 404 Not Found')))

Version v0.45.24

To Reproduce

Steps to reproduce the behavior:

  1. Set up flaresolverr, I used the docker compose file here https://github.com/FlareSolverr/FlareSolverr/blob/master/docker-compose.yml and added the service to the services list of changedetection.
  2. Go to settings -> CAPTCHA & Proxies.
  3. Add flaresolverr as a proxy, I used http://flaresolverr:8191 as the address. (With a direct IP it gives the same error)
  4. Create a watch that uses the new flaresolverr proxy under the request tab.
  5. Wait for it to trigger or trigger the check yourself.
  6. See the error.

! ALWAYS INCLUDE AN EXAMPLE URL WHERE IT IS POSSIBLE TO RE-CREATE THE ISSUE - USE THE 'SHARE WATCH' FEATURE AND PASTE IN THE SHARE-LINK! https://changedetection.io/share/1L-JtXxNAf8a

Expected behavior It should just work with the flaresolverr proxy, I don't think it's different than other proxies (I might be wrong, apologies if so) and it works with other services correctly.

Screenshots If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

Smartphone (please complete the following information): Didn't use, also not applicable I think for this problem just like desktop.

Additional context I'm using playwright-chrome, but as explained earlier the default watch gets a similar error which uses the default watcher.

If I just did something stupid or forgot a config variable somewhere, sorry! Just discovered this project and I'm trying to set it up to keep track of some good deals. It looks very promising so far, so thanks for making this!

Let me know if I need to provide anything else!