💾 DownloadsGitHub Release: ollama/ollama v0.34.2-rc3 (17.09.2026)(17.09.2026 um 20:49 Uhr)
💾 DownloadsGitHub Release: anomalyco/opencode v2.0.7 (17.09.2026)(17.09.2026 um 21:29 Uhr)
🔧 AI Nachrichten OpenAI: ChatGPT for Word is now available(17.09.2026 um 21:12 Uhr)
🍏 iOS / Mac OSSiri AI Hits and Misses(17.09.2026 um 21:02 Uhr)
🔧 ProgrammierungWhy client SDK generation belongs in the open(17.09.2026 um 21:18 Uhr)
💾 DownloadsGitHub Release: ollama/ollama v0.34.2-rc3 (17.09.2026)(17.09.2026 um 20:49 Uhr)
💾 DownloadsGitHub Release: anomalyco/opencode v2.0.7 (17.09.2026)(17.09.2026 um 21:29 Uhr)
🔧 AI Nachrichten OpenAI: ChatGPT for Word is now available(17.09.2026 um 21:12 Uhr)
🍏 iOS / Mac OSSiri AI Hits and Misses(17.09.2026 um 21:02 Uhr)
🔧 ProgrammierungWhy client SDK generation belongs in the open(17.09.2026 um 21:18 Uhr)
🔧 Programmierung 🕛 vor 4 Monaten 2 Min Lesezeit
0

We got tired of broken chromedriver and built our own — with SOCKS5, multiprocessing, and captcha support

↗ Quelle (dev.to)
🗣️ Stimme:
📑 Inhaltsübersicht




How it started



We needed web scraping. Simple enough, right? Just grab Selenium and go.



Except reality had other plans: CloudFlare blocked us within seconds, Chrome couldn't handle SOCKS5 proxies with authentication, and running multiple processes caused them to crash each other.



We found undetected-chromedriver — it bypassed bot detection, which was exactly what we needed. But the maintainer had abandoned it, and it was broken in all the places that mattered to us.



So we decided: let's fork it and fix it ourselves.






What we added






SOCKS5 with authentication



Chrome doesn't natively support SOCKS5 proxies that require login credentials. Our solution: spin up a local proxy server inside the library itself. Chrome thinks it's talking to localhost with no auth — our proxy quietly adds the credentials and forwards everything.




CODE
driver = uc.Chrome(proxy={
"host": "1.2.3.4",
"port": 1080,
"user": "my_login",
"pass": "my_password"
})









Multiprocessing without headaches



The original library with multiple workers was like one bathroom shared by the entire apartment building — everyone fighting for the same door. Each new process restarted chromedriver, crashing all previous workers.



Our fix: one master (patched) copy of the driver exists, and each worker gets its own isolated copy. When the worker finishes, the copy is deleted. We also added inter-process locking — 100 workers won't trigger 100 driver downloads.




CODE
from multiprocessing import Pool
import rtfox_browser as uc

def run_worker(worker_id):
driver = uc.Chrome(worker_id=worker_id, proxy={...})
driver.get("https://example.com")
driver.quit()

with Pool(4) as pool:
pool.map(run_worker, ["w1", "w2", "w3", "w4"])









Captcha module — just drop a file in a folder



We wanted a system where adding new solvers required zero changes to the library itself. The result: write a class, drop the .py file into the solvers/ folder, and the method automatically appears in CaptchaService.




CODE
captcha = CaptchaService(api_key="YOUR_KEY", driver=driver)
print(captcha.available()) # ['ebay_hcaptcha', 'aws_image']
captcha.ebay_hcaptcha()









Wrapping up



Three problems, three solutions. The library is called rtfox-browser and it's available on PyPI:



pip install rtfox-browser



If you're into scraping and have run into the same walls — give it a try. Feedback is very welcome!






Links



Vollständiger Original-Artikel
Den kompletten Beitrag mit allen Details direkt auf dev.to lesen.
↗ Original-Artikel auf dev.to lesen
Wie bewertest du diesen Beitrag?
1 Klick Feedback
Teilen mit Netzwerk & Team:

Community-Analysen & Experten-Meinungen 0

Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf Eigene Analyse verfassen“!
Community Pulse: Relevanz-Einschätzung
1 Klick Experten-Votum
🔴 Akute Relevanz 0%
🟡 In Evaluierung 0%
🟢 Keine Auswirkung 0%
Spannende Innovation 0%
Verwandte Story-Cluster & Quellen (Vektor-KI)
Port 8095 Engine
1 Quelle
China's FamousSparrow APT Spies on US Politics in Latin America
1 Quelle
Researchers find way to listen in on headphones from afar
1 Quelle
Roku rolls out over 30 subscription bundles for up to 30% off, plus a new Labs feature
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten We got tired of broken chromedriver and built our own — with SOCKS5, multiprocessing, and captcha support

Thematisch verwandte Begriffe: tired, broken, chromedriver, built · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...