Replies: 1 comment
-
|
opened a draft PR with the proposal doc: #1305 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
captcha/empty-response is the recurring pain (the README lists CaptchaException + EmptyResponseException under common issues, and the empty-response path in tiktok.py already tells users "they are detecting you're a bot, try headless=False, browser='webkit'"). that instinct to swap the engine is right, and the api already supports it: create_sessions takes browser= (firefox/chromium/webkit) and executable_path=.
so pointing the api at a fingerprint-patched firefox is almost free here:
the patched binary (feder-cr/invisible_firefox, MPL-2) applies the spoof at the c++ source level: canvas readback, webgl getParameter, font metrics, audio, navigator, system colors. no js shim, no CDP attach signature, values come back through normal gecko paths, so there's nothing for tiktok's detector to enumerate the way it can with stock chromium.
the one gap is firefox_user_prefs: the binary is fully pref-driven, but the firefox.launch(...) call in tiktok.py doesn't currently forward a firefox_user_prefs kwarg. forwarding that one argument on the firefox branch is the whole change. opened a draft PR with a proposal doc.
honest caveats: this helps the fingerprint/engine layer only, not IP reputation or a per-account ban once flagged. the only code change is the firefox_user_prefs passthrough; sessions / ms_tokens / contexts are untouched. if forwarding it + a docs example is in scope i'll wire it, otherwise happy to close.
Beta Was this translation helpful? Give feedback.
All reactions