From ef3f687db0f53f026e808c4284e084255c9e9dd5 Mon Sep 17 00:00:00 2001 From: Andrew Opalach Date: Wed, 17 Jun 2026 15:08:30 -0400 Subject: Update portal to avoid TLS fingerprinting Signed-off-by: Andrew Opalach --- src/portal/py/modules/pixiv_web.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'src/portal/py/modules/pixiv_web.py') diff --git a/src/portal/py/modules/pixiv_web.py b/src/portal/py/modules/pixiv_web.py index 43d017f..9150c71 100644 --- a/src/portal/py/modules/pixiv_web.py +++ b/src/portal/py/modules/pixiv_web.py @@ -1,13 +1,12 @@ import log import json -import httpx import urllib.parse from typing import Optional, Any from json.decoder import JSONDecodeError -from base import USER_AGENT, Search, Module, Method, ParsedJson +from base import USER_AGENT, HttpResponse, Search, Module, Method, ParsedJson from post import Url, PostType, Date, DateType, DateMeta, Post, User, Media, Image, Animation, Tag, TagType from query_parser import QueryParser -from modules.common import reformat_pixiv_date, get_current_utc_time +from modules.common import parse_pixiv_date, get_current_utc_time BASE_URL = 'https://www.pixiv.net/ajax' LANG = 'en' @@ -18,7 +17,7 @@ class PixivWebBase(Search): super().__init__() self.module: PixivWebModule = userdata - def check_api_response(self, response: Optional[httpx.Response]) -> Optional[ParsedJson]: + def check_api_response(self, response: Optional[HttpResponse]) -> Optional[ParsedJson]: if not response: return None try: @@ -72,14 +71,14 @@ class PixivWebBase(Search): kwargs['raw_responses'] = {} kwargs['raw_responses']['api'] = json.dumps(data, separators=(',', ':'), indent=None) kwargs['url'] = f'https://www.pixiv.net/{LANG}/artworks/{data['illustId']}' - create_date = reformat_pixiv_date(data['createDate']).timestamp() + create_date = parse_pixiv_date(data['createDate']).timestamp() if not retrieved_date: retrieved_date = get_current_utc_time().timestamp() kwargs['dates'] = [ Date(DateType.CREATED, (create_date, create_date), DateMeta.NONE), Date(DateType.RETRIEVED, (retrieved_date, retrieved_date), DateMeta.NONE) ] - upload_date = reformat_pixiv_date(data['uploadDate']).timestamp() + upload_date = parse_pixiv_date(data['uploadDate']).timestamp() if upload_date != create_date: kwargs['dates'].append(Date(DateType.EDITED, (upload_date, upload_date), DateMeta.NONE)) user = User(unique_id=f'pixiv:u:{data['userId']}', username=data['userAccount'], display_name=data['userName']) -- cgit v1.2.3-101-g0448