Zhou Hao
Zhou Hao
```py def illust_related( self, illust_id: int | str, filter: _FILTER = "for_ios", seed_illust_ids: int | str | list[str] | None = None, offset: int | str | None = None,...
I'm not sure if the client side has merged the `viewed` parameter, did you try to pass all the previously returned `viewed` ids when pagination? In addition, `the number of...
CAPTCHA是绕不过的,加的功能也只能一定程度上避免 尝试更换代理,或者账号试试
如果是出现其他错误码,比如10054,可以参考这个解决: https://github.com/upbit/pixivpy/issues/138
PHPSESSID绕过具体是用的什么原理?
PHPSESSID 应该是会过期的,而`refreshToken`不会(或者过期远比PHPSESSID长)。 通过cookies传递倒是个好方法,和上面`loadCookie()`异曲同工,其实都依赖于之前OAuth时返回的cookie;不过有些场景是直接通过refreshToken重新登录的(比如demo里的方法) 可以看看如果生成假的PHPSESSID能不能绕过 CAPTCHA,如果可以倒是可以mock一个
装饰器确实是个很好的思路,能节省很多应用层error的判断的时间。 retry可以再考虑下,有时rate limit不一定要当前线程`time.sleep(8)`,比如在集群内换个新的`token/proxy` 因此建议: ```py @raise_on_error def xxx_api(...) class RateLimitError(Exception): pass def retry_on_error(func): # 对 message 这类明确的如`Rate Limit`,抛异常让外部去决定如何处理 raise RateLimitError() ```
dup #275
Is it that an interface like search or ranking did not return? Or return image like the screenshot, and url like this: https://s.pximg.net/common/images/limit_sanity_level_360.png In the previous Pixiv only had R-18...
I tried testing it and it's really weird. Even if I turn off the R-18 browsing restriction on the web, it still returns a placeholder for `limit_sanity_level`. The typical feature...