lumina37 / aiotieba

贴吧接口合集✨可用于工具箱/吧务管理/数据采集
https://aiotieba.cc
The Unlicense
399 stars 69 forks source link

函数get_threads 获取的某一页的主题帖数量有误 #83

Closed FinBird closed 1 year ago

FinBird commented 1 year ago

简要描述这个bug get_threads函数不能稳定取到正确的主题帖数量,需要调用多次才能返回正确的值。 部分页面甚至永远取不到正确的主题帖数量,且xpath.log没有任何输出。

如何复现 下面以flowers吧前72页为例,在个人电脑以web端数据为参照,复现该问题:

import aiohttp
from lxml.etree import HTML
import aiotieba as tb
import asyncio
from random import randint

async def get_page_thread_count(bar: str, p: int):
    '''根据xpath取pc端网页,改页的主题贴数量,一般为50'''
    x = 'count(//*[@id="thread_list"]//li/@data-floor)'
    async with aiohttp.ClientSession() as session:
        async with session.request(method='GET', url='https://tieba.baidu.com/f?kw={0}&ie=utf-8&pn={1}'.format(bar, (p - 1) * 50)) as r:
            await asyncio.sleep(2)
            result = await r.text()
            page_count = int(HTML(result).xpath(x))
            return page_count

async def fuck(bar: str, p: int):
    async with tb.Client("default") as client:
        threads: tb.Threads = await client.get_threads(bar, pn=p, rn=50)
        return len(threads)

async def try_fetch(bar, p):
    c1 = await get_page_thread_count(bar, p)
    n, c2 = 0, 0
    for n in range(1, 31):
        await asyncio.sleep(randint(1, 3))
        if c1 == (c2 := await fuck(bar, p)):
            if n > 1:
                print(f"第{p}页尝试{n}次")
            break
    else:
        print(f"第{p}页尝试30次仍无法取得正确贴数,应为{c1}实际为{c2}")

async def main(bar, p):
    await asyncio.gather(*[try_fetch(bar, i) for i in range(1, p)])

asyncio.run(main("flowers", 72))
python xpath.py 
第21页尝试2次
第2页尝试3次
第18页尝试4次
第15页尝试5次
第19页尝试6次
第1页尝试8次
第10页尝试11次
第20页尝试11次
第22页尝试12次
第46页尝试18次
第37页尝试30次仍无法取得正确贴数,应为49实际为39
第57页尝试30次仍无法取得正确贴数,应为49实际为48
第17页尝试30次仍无法取得正确贴数,应为50实际为44
python xpath.py 
第18页尝试2次
第1页尝试2次
第9页尝试2次
第22页尝试2次
第21页尝试2次
第20页尝试4次
第7页尝试4次
第19页尝试5次
第15页尝试6次
第8页尝试9次
第10页尝试12次
第2页尝试17次
第17页尝试17次
第46页尝试30次仍无法取得正确贴数,应为49实际为48
第57页尝试30次仍无法取得正确贴数,应为49实际为48
第37页尝试30次仍无法取得正确贴数,应为49实际为39
python xpath.py
第21页尝试2次
第19页尝试2次
第22页尝试3次
第18页尝试3次
第2页尝试3次
第9页尝试3次
第8页尝试4次
第7页尝试4次
第20页尝试6次
第10页尝试14次
第37页尝试30次仍无法取得正确贴数,应为49实际为39
第17页尝试30次仍无法取得正确贴数,应为50实际为46
第57页尝试30次仍无法取得正确贴数,应为49实际为48
第46页尝试30次仍无法取得正确贴数,应为49实际为48

你希望程序作出何种行为 get_page_thread_count('flowers', 57) == fuck('flowers', 57)

截图(可选)

...

n0099 commented 1 year ago

用json版客户端接口 靠后的页数本就会随机多或少出现一些主题帖 可能是那些主题帖已经被吞了

FinBird commented 1 year ago

用json版客户端接口 靠后的页数本就会随机多或少出现一些主题帖 可能是那些主题帖已经被吞了

上面例子的37和57页,一直取不到主题贴大概是因为这两页有投票贴存在。即get_threads 取不到投票贴 吐槽:度娘真辣鸡,API更新版本就各种break。还不稳定

https://tieba.baidu.com/f?kw=flowers&ie=utf-8&pn=2800 图片

https://tieba.baidu.com/f?kw=flowers&ie=utf-8&pn=1800 图片

n0099 commented 1 year ago

哦阁下说的是12年引入的网页端投票主题帖,他本来就只会显示于网页端 因为这么多年来的贴吧客户端团队从未实现过在客户端里正确渲染网页端投票主题帖的投票表单(网页端上现在都还是嵌入flash投票呢,所以现在实际上基本没人能投票了,发网页端投票贴的入口前几年好像也砍了) 而后来可能18年左右客户端团队又终于自己搞了个客户端投票贴,按照对等待遇(实际上是没人想去给网页端加功能),网页端也无法显示客户端投票贴,不论是在吧首页主题帖列表(过滤掉客户端投票贴)中还是直接访问该主题帖tid(1L只能看到空白)


但仅靠网页端投票主题帖是无法解释阁下所遇到的不能稳定取到正确的主题帖数量,需要调用多次才能返回正确的值 只能解释靠后的页数中为什么第57页尝试30次仍无法取得正确贴数,应为49实际为48,因为在那些页的确是网页端投票贴一直占着所以不可能靠不断重试来使得数量匹配


另外阁下爬这么多页是想完全备份一个贴吧吗?阁下可以参考 https://n0099.net/v/d/3280

FinBird commented 1 year ago

之前看到了,多谢提示。另外问下您还有别的交流工具么?你首页的q群之前找到了群号但我加不进去。 另外我不用slack群组@n0099

n0099 commented 1 year ago

四叶主群292311751都被封了快两年了 您可以问伊欧神 @langyo 他管理着四叶qq分群 或 @BANKA2017 和 @kokoro-aya 他们管理着四叶tg分部 https://t.me/n0099_tg https://t.me/n0099official

https://www.v2ex.com/t/908083#r_12566585 对此早有预言:

建议深入学习贯彻泛银河系格雷科技分部邪恶组织四叶重工炼铜本部叶独头子叶独群组联合体陈意志第三帝国元首炼铜傻狗橙猫领导下的四叶 TG 本部( https://t.me/n0099_tg https://t.me/n0099official )话语体系文风: https://sora.ink/archives/1574 https://github.com/n0099/TiebaMonitor/issues/24 https://github.com/Starry-OvO/aiotieba/issues/64


我不用slack群组

实际上是UX类似slack的zulip,但并不是slack、discord、qq频道

FinBird commented 1 year ago

但仅靠网页端投票主题帖是无法解释阁下所遇到的不能稳定取到正确的主题帖数量,需要调用多次才能返回正确的值

是的,只剩这个问题了 嗯,以前的贴吧我也了解过一些。

n0099 commented 1 year ago

嗯,以前的贴吧我也了解过一些。

看看您的贴吧ID image https://tieba.baidu.com/home/main?id=tb.1.c3bc6401.cuFllz86fDotNQKqB4WJ2Q 建议立即致电03年12月(贴吧创立一个月后)就开始使用百度贴吧的贴吧客户端内测资格用户ID吃圈老资历云南贵族郭楠furry男同556神 https://tieba.baidu.com/home/main?un=556

lumina37 commented 1 year ago

或许纯粹就是系统不稳定?

测试代码

import asyncio
import time

import aiotieba as tb

async def main():
    async with tb.Client('starry') as brow:
        pn = 17
        threads = await brow.get_threads('flowers', pn, rn=50)
        prev_thread_set = set(threads)
        for i in range(10):
            threads = await brow.get_threads('flowers', pn=17, rn=50)
            print(f"iter: {i}  len:{len(threads)}")
            curr_thread_set = set(threads)
            print(prev_thread_set ^ curr_thread_set)
            prev_thread_set = curr_thread_set
            time.sleep(2.0)

asyncio.run(main())
iter: 0  len:46
{{'tid': 7540486498, 'pid': 141308918165, 'user': 'w伪物w', 'text': '谁有沙沙贵姐妹版本的chaleur资源吗\n'}, {'tid': 7545075701, 'pid': 141350946814, 'user': '_____没道理', 'text': '萌新看完冬有槽不吐不快~~\n花绝对不只是圣母在上的精神续作吧。\n绝对有致敬白2的成分在里面吧(尼美苦逼)\n最开始春里的等边三角形反 
而和白学不同\n但是TM的“三人的歌”这种简直直接快进到雪菜真结局。\n从这个思路思考秋对应冬马真结局非常合理,两人背叛一切离开圣彗星兰和两个人背叛一切离开日本(精神错乱\n继续推理下去春的等边三角形真的太好了(高兴)(dogshit),不然就会是:明明。。。和擅自跑到。。。和想出这种酷刑。。。\n这么说来志水你还真是温柔的人
呀(made志水给爷死)'}, {'tid': 7562646364, 'pid': 141529198191, 'user': 'xjinda', 'text': '求问La chaleur du corut这个广播剧有汉化吗\n其实不止汉化,我去阿b找都找不到这个广播剧'}}
iter: 1  len:45
{{'tid': 7540486498, 'pid': 141308918165, 'user': 'w伪物w', 'text': '谁有沙沙贵姐妹版本的chaleur资源吗\n'}, {'tid': 7562784179, 'pid': 141530994096, 'user': 'xjinda', 'text': '求问La chaleur du corut这广播剧有汉化什么的\nRT,我在阿b和A站都找不到这种广播剧的存在,还是看萌白才发现的\n还有我怎么发现我们没吧主
了'}, {'tid': 7562646364, 'pid': 141529198191, 'user': 'xjinda', 'text': '求问La chaleur du corut这个广播剧有汉化吗\n其实不止汉化,我去阿b找都找不到这个广播剧'}}
iter: 2  len:47
{{'tid': 7550013656, 'pid': 141403176244, 'user': '大雪天泡温泉', 'text': 'flowers春\n春篇每次卸载重装,cg图,结局都没有了,有什么解决办法吗'}, {'tid': 7562646364, 'pid': 141529198191, 'user': 'xjinda', 'text': '求问La chaleur du corut这个广播剧有汉化吗\n其实不止汉化,我去阿b找都找不到这个广播剧'}}        
iter: 3  len:47
{{'tid': 7562784179, 'pid': 141530994096, 'user': 'xjinda', 'text': '求问La chaleur du corut这广播剧有汉化什么的\nRT,我在阿b和A站都找不到这种广播剧的存在,还是看萌白才发现的\n还有我怎么发现我们没吧主了'}, {'tid': 7550013656, 'pid': 141403176244, 'user': '大雪天泡温泉', 'text': 'flowers春\n春篇每次卸载重装
,cg图,结局都没有了,有什么解决办法吗'}, {'tid': 7545075701, 'pid': 141350946814, 'user': '_____没道理', 'text': '萌新看完冬有槽不吐不快~~\n花绝对不只是圣母在上的精神续作吧。\n绝对有致敬白2的成分在里面吧(尼美苦逼)\n最开始春里的等边三角形反而和白学不同\n但是TM的“三人的歌”这种简直直接快进到雪菜真结局。\n从 
这个思路思考秋对应冬马真结局非常合理,两人背叛一切离开圣彗星兰和两个人背叛一切离开日本(精神错乱\n继续推理下去春的等边三角形真的太好了(高兴)(dogshit),不然就会是:明明。。。和擅自跑到。。。和想出这种酷刑。。。\n这么说来志水你还真是温柔的人呀(made志水给爷死)'}, {'tid': 7538578741, 'pid': 141289501668, 'user': '承认吧不如他们', 'text': '长期蹲收周边\n四季fanbooks 初回等等'}}
iter: 4  len:46
{{'tid': 7562646364, 'pid': 141529198191, 'user': 'xjinda', 'text': '求问La chaleur du corut这个广播剧有汉化吗\n其实不止汉化,我去阿b找都找不到这个广播剧'}}
iter: 5  len:44
{{'tid': 7545075701, 'pid': 141350946814, 'user': '_____没道理', 'text': '萌新看完冬有槽不吐不快~~\n花绝对不只是圣母在上的精神续作吧。\n绝对有致敬白2的成分在里面吧(尼美苦逼)\n最开始春里的等边三角形反而和白学不同\n但是TM的“三人的歌”这种简直直接快进到雪菜真结局。\n从这个思路思考秋对应冬马真结局非常合理,两人
背叛一切离开圣彗星兰和两个人背叛一切离开日本(精神错乱\n继续推理下去春的等边三角形真的太好了(高兴)(dogshit),不然就会是:明明。。。和擅自跑到。。。和想出这种酷刑。。。\n这么说来志水你还真是温柔的人呀(made志水给爷死)'}, {'tid': 7538578741, 'pid': 141289501668, 'user': '承认吧不如他们', 'text': '长期蹲收
周边\n四季fanbooks 初回等等'}}
iter: 6  len:46
{{'tid': 7562784179, 'pid': 141530994096, 'user': 'xjinda', 'text': '求问La chaleur du corut这广播剧有汉化什么的\nRT,我在阿b和A站都找不到这种广播剧的存在,还是看萌白才发现的\n还有我怎么发现我们没吧主了'}, {'tid': 7550013656, 'pid': 141403176244, 'user': '大雪天泡温泉', 'text': 'flowers春\n春篇每次卸载重装
,cg图,结局都没有了,有什么解决办法吗'}}
iter: 7  len:47
{{'tid': 7550013656, 'pid': 141403176244, 'user': '大雪天泡温泉', 'text': 'flowers春\n春篇每次卸载重装,cg图,结局都没有了,有什么解决办法吗'}, {'tid': 7538578741, 'pid': 141289501668, 'user': '承认吧不如他们', 'text': '长期蹲收周边\n四季fanbooks 初回等等'}, {'tid': 7562646364, 'pid': 141529198191, 'user': 'xjinda', 'text': '求问La chaleur du corut这个广播剧有汉化吗\n其实不止汉化,我去阿b找都找不到这个广播剧'}}
iter: 8  len:44
{{'tid': 7562784179, 'pid': 141530994096, 'user': 'xjinda', 'text': '求问La chaleur du corut这广播剧有汉化什么的\nRT,我在阿b和A站都找不到这种广播剧的存在,还是看萌白才发现的\n还有我怎么发现我们没吧主了'}, {'tid': 7538578741, 'pid': 141289501668, 'user': '承认吧不如他们', 'text': '长期蹲收周边\n四季fanbooks 初回等等'}, {'tid': 7562646364, 'pid': 141529198191, 'user': 'xjinda', 'text': '求问La chaleur du corut这个广播剧有汉化吗\n其实不止汉化,我去阿b找都找不到这个广播剧'}}
iter: 9  len:44
set()
n0099 commented 1 year ago

建议反复请求接口然后对每页的所有tid集合排序去重做sequence equal以找出不同的tid

FinBird commented 1 year ago

或许纯粹就是系统不稳定?

测试代码

import asyncio
import time

import aiotieba as tb

async def main():
    async with tb.Client('starry') as brow:
        pn = 17
        threads = await brow.get_threads('flowers', pn, rn=50)
        prev_thread_set = set(threads)
        for i in range(10):
            threads = await brow.get_threads('flowers', pn=17, rn=50)
            print(f"iter: {i}  len:{len(threads)}")
            curr_thread_set = set(threads)
            print(prev_thread_set ^ curr_thread_set)
            prev_thread_set = curr_thread_set
            time.sleep(2.0)

asyncio.run(main())
iter: 0  len:46
{{'tid': 7540486498, 'pid': 141308918165, 'user': 'w伪物w', 'text': '谁有沙沙贵姐妹版本的chaleur资源吗\n'}, {'tid': 7545075701, 'pid': 141350946814, 'user': '_____没道理', 'text': '萌新看完冬有槽不吐不快~~\n花绝对不只是圣母在上的精神续作吧。\n绝对有致敬白2的成分在里面吧(尼美苦逼)\n最开始春里的等边三角形反 
而和白学不同\n但是TM的“三人的歌”这种简直直接快进到雪菜真结局。\n从这个思路思考秋对应冬马真结局非常合理,两人背叛一切离开圣彗星兰和两个人背叛一切离开日本(精神错乱\n继续推理下去春的等边三角形真的太好了(高兴)(dogshit),不然就会是:明明。。。和擅自跑到。。。和想出这种酷刑。。。\n这么说来志水你还真是温柔的人
呀(made志水给爷死)'}, {'tid': 7562646364, 'pid': 141529198191, 'user': 'xjinda', 'text': '求问La chaleur du corut这个广播剧有汉化吗\n其实不止汉化,我去阿b找都找不到这个广播剧'}}
iter: 1  len:45
{{'tid': 7540486498, 'pid': 141308918165, 'user': 'w伪物w', 'text': '谁有沙沙贵姐妹版本的chaleur资源吗\n'}, {'tid': 7562784179, 'pid': 141530994096, 'user': 'xjinda', 'text': '求问La chaleur du corut这广播剧有汉化什么的\nRT,我在阿b和A站都找不到这种广播剧的存在,还是看萌白才发现的\n还有我怎么发现我们没吧主
了'}, {'tid': 7562646364, 'pid': 141529198191, 'user': 'xjinda', 'text': '求问La chaleur du corut这个广播剧有汉化吗\n其实不止汉化,我去阿b找都找不到这个广播剧'}}
iter: 2  len:47
{{'tid': 7550013656, 'pid': 141403176244, 'user': '大雪天泡温泉', 'text': 'flowers春\n春篇每次卸载重装,cg图,结局都没有了,有什么解决办法吗'}, {'tid': 7562646364, 'pid': 141529198191, 'user': 'xjinda', 'text': '求问La chaleur du corut这个广播剧有汉化吗\n其实不止汉化,我去阿b找都找不到这个广播剧'}}        
iter: 3  len:47
{{'tid': 7562784179, 'pid': 141530994096, 'user': 'xjinda', 'text': '求问La chaleur du corut这广播剧有汉化什么的\nRT,我在阿b和A站都找不到这种广播剧的存在,还是看萌白才发现的\n还有我怎么发现我们没吧主了'}, {'tid': 7550013656, 'pid': 141403176244, 'user': '大雪天泡温泉', 'text': 'flowers春\n春篇每次卸载重装
,cg图,结局都没有了,有什么解决办法吗'}, {'tid': 7545075701, 'pid': 141350946814, 'user': '_____没道理', 'text': '萌新看完冬有槽不吐不快~~\n花绝对不只是圣母在上的精神续作吧。\n绝对有致敬白2的成分在里面吧(尼美苦逼)\n最开始春里的等边三角形反而和白学不同\n但是TM的“三人的歌”这种简直直接快进到雪菜真结局。\n从 
这个思路思考秋对应冬马真结局非常合理,两人背叛一切离开圣彗星兰和两个人背叛一切离开日本(精神错乱\n继续推理下去春的等边三角形真的太好了(高兴)(dogshit),不然就会是:明明。。。和擅自跑到。。。和想出这种酷刑。。。\n这么说来志水你还真是温柔的人呀(made志水给爷死)'}, {'tid': 7538578741, 'pid': 141289501668, 'user': '承认吧不如他们', 'text': '长期蹲收周边\n四季fanbooks 初回等等'}}
iter: 4  len:46
{{'tid': 7562646364, 'pid': 141529198191, 'user': 'xjinda', 'text': '求问La chaleur du corut这个广播剧有汉化吗\n其实不止汉化,我去阿b找都找不到这个广播剧'}}
iter: 5  len:44
{{'tid': 7545075701, 'pid': 141350946814, 'user': '_____没道理', 'text': '萌新看完冬有槽不吐不快~~\n花绝对不只是圣母在上的精神续作吧。\n绝对有致敬白2的成分在里面吧(尼美苦逼)\n最开始春里的等边三角形反而和白学不同\n但是TM的“三人的歌”这种简直直接快进到雪菜真结局。\n从这个思路思考秋对应冬马真结局非常合理,两人
背叛一切离开圣彗星兰和两个人背叛一切离开日本(精神错乱\n继续推理下去春的等边三角形真的太好了(高兴)(dogshit),不然就会是:明明。。。和擅自跑到。。。和想出这种酷刑。。。\n这么说来志水你还真是温柔的人呀(made志水给爷死)'}, {'tid': 7538578741, 'pid': 141289501668, 'user': '承认吧不如他们', 'text': '长期蹲收
周边\n四季fanbooks 初回等等'}}
iter: 6  len:46
{{'tid': 7562784179, 'pid': 141530994096, 'user': 'xjinda', 'text': '求问La chaleur du corut这广播剧有汉化什么的\nRT,我在阿b和A站都找不到这种广播剧的存在,还是看萌白才发现的\n还有我怎么发现我们没吧主了'}, {'tid': 7550013656, 'pid': 141403176244, 'user': '大雪天泡温泉', 'text': 'flowers春\n春篇每次卸载重装
,cg图,结局都没有了,有什么解决办法吗'}}
iter: 7  len:47
{{'tid': 7550013656, 'pid': 141403176244, 'user': '大雪天泡温泉', 'text': 'flowers春\n春篇每次卸载重装,cg图,结局都没有了,有什么解决办法吗'}, {'tid': 7538578741, 'pid': 141289501668, 'user': '承认吧不如他们', 'text': '长期蹲收周边\n四季fanbooks 初回等等'}, {'tid': 7562646364, 'pid': 141529198191, 'user': 'xjinda', 'text': '求问La chaleur du corut这个广播剧有汉化吗\n其实不止汉化,我去阿b找都找不到这个广播剧'}}
iter: 8  len:44
{{'tid': 7562784179, 'pid': 141530994096, 'user': 'xjinda', 'text': '求问La chaleur du corut这广播剧有汉化什么的\nRT,我在阿b和A站都找不到这种广播剧的存在,还是看萌白才发现的\n还有我怎么发现我们没吧主了'}, {'tid': 7538578741, 'pid': 141289501668, 'user': '承认吧不如他们', 'text': '长期蹲收周边\n四季fanbooks 初回等等'}, {'tid': 7562646364, 'pid': 141529198191, 'user': 'xjinda', 'text': '求问La chaleur du corut这个广播剧有汉化吗\n其实不止汉化,我去阿b找都找不到这个广播剧'}}
iter: 9  len:44
set()

大概是了,锑度日常技术力不足导致用户体验低下。建议库内部两套api(网页&客户端)相互校验帖子数量好了,我这几天写爬虫校验数据实在是蛋疼。再加上上一条issue还要忙,Starry-OvO辛苦了

82

lumina37 commented 1 year ago

网页端实在太恐怖了...验证码就是最大的问题

n0099 commented 1 year ago

验证码就是最大的问题

然而我们的圣starry神的大手早已于半年前发威以土澳应用统计学带手子 @ControlNet 最爱的ML DL为抓手赋能从20年开始部署于百度各个网页端服务的图片旋转验证码系统: https://github.com/Starry-OvO/Rotate-Captcha-Crack/issues/4#issuecomment-1274054089

n0099 commented 1 year ago

我这几天写爬虫校验数据实在是蛋疼

有没有可能,6年前我刚学php时就业已实现了对特定贴吧进行全员备份的需求(当时还没有19年4月b吧事件后增加的吧首页最多翻到10000主题帖hard limit): https://tieba.baidu.com/p/5016857216 而十几年前还有着 @索引越界 所开发的贴吧SQL统计工具: https://tieba.baidu.com/p/1220029153 https://tieba.baidu.com/p/1541534317 以及鸡血神 @bakasnow 所在的贴吧工具组织血色圣光联盟所开发的各种水贴爆吧机和早期贴吧管理器原型

因此我们不过是在重复十几年前8u们摸过的石头以重新挽回早已失传的古早失落文明

n0099 commented 1 year ago

建议反复请求接口然后对每页的所有tid集合排序去重做sequence equal以找出不同的tid

或许纯粹就是系统不稳定?

事实核查:我这边也写了类似的: imageNOT EXISTS IN 1st/cur的文本写反了,cur应该是1st,反之亦然,下同) 然而在500次尝试后都没有在rn=50的第17页下找到不同请求之间的不同tid: image

https://github.com/n0099/TiebaMonitor/blob/842a2f66f5601fe52080225f97c61654a68fe29c/crawler/src/Tieba/Crawl/Crawler/ThreadCrawler.cs#L32 image

所以请问 @Starry-OvO 阁下请求的是POST c/f/frs/page?cmd=301001 { "data": { "kw": "flowers", "rn": 90, "rnNeed": 50, "qType": 2, "pn": 17, "common": { "ClientType": 2, "ClientVersion": "12.26.1.0" }, "sortType": 5 } }吗?

n0099 commented 1 year ago

然而我在改成Rn = 50, RnNeed = 50后成功复现了类似starry神和finbrid所遇到的pattern: image

None, NOT EXISTS IN 1st: 7545075701
None, NOT EXISTS IN cur: 7538578741
None, NOT EXISTS IN cur: 7538578741,7540486498
None, NOT EXISTS IN cur: 7538578741,7540486498,7550013656
None, NOT EXISTS IN cur: 7538578741,7540486498,7550013656,7562646364
None, NOT EXISTS IN cur: 7538578741,7540486498,7562784179
None, NOT EXISTS IN cur: 7538578741,7550013656
None, NOT EXISTS IN cur: 7538578741,7562646364
None, NOT EXISTS IN cur: 7540486498
None, NOT EXISTS IN cur: 7540486498,7550013656,7562784179
None, NOT EXISTS IN cur: 7540486498,7562646364
None, NOT EXISTS IN cur: 7540486498,7562646364,7562784179
None, NOT EXISTS IN cur: 7540486498,7562784179
None, NOT EXISTS IN cur: 7550013656
None, NOT EXISTS IN cur: 7550013656,7562646364
None, NOT EXISTS IN cur: 7550013656,7562784179
None, NOT EXISTS IN cur: 7562646364
None, NOT EXISTS IN cur: 7562784179
  1. 所以 @FinBird 贵吧的的这6个tid7545075701,7538578741,7540486498,7550013656,7562646364,7562784179有什么特别之处吗?又是网页端/客户端投票贴那种区分?

  2. 或者说必须得让 $\text{rn\_need}>\text{rn}$ 才能保证不会这样随机分页?

langyo commented 1 year ago

image

n0099 commented 1 year ago

n0099 commented 1 year ago

https://github.com/Starry-OvO/aiotieba/commit/6a70a5bd92c2f2f419d30af7205a2fe31285dafe#diff-1b7e1df8383da27d0517a40fabe0e965c2d7a435983688a5d6ee0ce6f023dd4bR17

req_proto.data.rn_need = rn if rn > 0 else 1

不要让 $rn\_need=rn$ ,我试出来的不就是Rn = 50, RnNeed = 50吗?

rn (int, optional): 请求的条目数. Defaults to 30. Max to 100.

以及阁下试出来贴吧至多只返回100条主题帖了?

ControlNet commented 1 year ago

验证码就是最大的问题

然而我们的圣starry神的大手早已于半年前发威以土澳应用统计学带手子 @ControlNet 最爱的ML DL为抓手赋能从20年开始部署于百度各个网页端服务的图片旋转验证码系统: Starry-OvO/Rotate-Captcha-Crack#4 (comment)

感觉好像挺强的,好好学习一下

FinBird commented 1 year ago

https://github.com/Starry-OvO/aiotieba/commit/6a70a5bd92c2f2f419d30af7205a2fe31285dafe#diff-1b7e1df8383da27d0517a40fabe0e965c2d7a435983688a5d6ee0ce6f023dd4bR17

req_proto.data.rn_need = rn if rn > 0 else 1

不要让 $rn\_need=rn$ ,我试出来的不就是Rn = 50, RnNeed = 50吗?

rn (int, optional): 请求的条目数. Defaults to 30. Max to 100.

以及阁下试出来贴吧至多只返回100条主题帖了?

v3.1.0仍然有问题,我这边rn=50时,取到吧里最后一页has_more==False ,统计出的threads数量差不多是原来的一半。治标不治本( @Starry-OvO

n0099 commented 1 year ago

因为他写的req_proto.data.rn_need = rn if rn > 0 else 1 所以请求的是我试出来会遇到阁下最初遇到的状况的Rn = 50, RnNeed = 50

ControlNet commented 1 year ago

验证码就是最大的问题

然而我们的圣starry神的大手早已于半年前发威以土澳应用统计学带手子 @ControlNet 最爱的ML DL为抓手赋能从20年开始部署于百度各个网页端服务的图片旋转验证码系统: Starry-OvO/Rotate-Captcha-Crack#4 (comment)

感觉好像挺强的,好好学习一下

稍微小改了一下,误差从20°降低到了13°。 #rotate-captcha-crack/issues/6

n0099 commented 1 year ago

土澳应用统计学家带手子文科生CN神发威了!