thaiporntv: rewrite provider for Tailwind redesign and fix base64 decode

The site was redesigned from old HTML classes to Tailwind CSS, breaking all
selectors. Also fixes a base64 space-padding bug that corrupted the XOR cipher
decryption of data-enc attributes (video stream URLs).

Key changes:
- New parse_card() using updated Tailwind CSS selectors (div.group, a.playthumb,
  a.text-brand-pink, etc.) to match the redesigned page structure
- Fixed base64 padding from spaces to = characters in both provider and proxy
- Fixed proxy route (/proxy/thaiporntv/{endpoint}* was double-prefixed and used
  wrong capture group name)
- Updated load_tags() to use a.group[href*='/tags/'] with h2 child selector
- Added CDN base URL constant (web.techvids.top) for thumbnail and HLS paths
- Preview GIF URLs populated from data-id attribute

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Simon
2026-05-18 18:10:56 +00:00
parent aea2cda627
commit dc14adbb2e
3 changed files with 152 additions and 172 deletions

View File

@@ -131,11 +131,11 @@ pub fn config(cfg: &mut web::ServiceConfig) {
.route(web::get().to(crate::proxies::pornhubthumb::get_image)),
);
cfg.service(
web::resource("/proxy/thaiporntv/{tail:.*}")
web::resource("/thaiporntv/{endpoint}*")
.route(web::post().to(proxy2redirect))
.route(web::get().to(proxy2redirect)),
);
}
}
async fn proxy2redirect(
req: HttpRequest,