V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
alidasuhe
V2EX  ›  算法

我想要拷贝一个题库,但是我不知道题库内

  •  
  •   alidasuhe · 2018-04-21 10:54:32 +08:00 via Android · 4178 次点击
    这是一个创建于 2440 天前的主题,其中的信息可能已经有所发展或是发生改变。

    但是我不知道题库内有哪些题。我只能通过题库提供的 API 每次从题库中随机获取 m 道题(这 m 道题中的每道题都是互不相同的)。

    请问有什么算法可以让我最快获取到题库内的绝大部分的评论题目?

    20 条回复    2018-04-26 14:30:43 +08:00
    ThirdFlame
        1
    ThirdFlame  
       2018-04-21 11:05:21 +08:00
    "绝大部分的评论题目"
    能有啥算法,不就是不停的调用 API,入库。 遇到重复的 跳过。一直到多次调用都不出新题了为止 。
    summerwar
        2
    summerwar  
       2018-04-21 11:20:45 +08:00
    钱,直接收购
    alidasuhe
        3
    alidasuhe  
    OP
       2018-04-21 11:21:37 +08:00 via Android
    打错字了,不好意思哈。
    最后一句话应该去掉“评论”一词,是“最快获取到题库内的绝大部分题目? ”。
    qiayue
        4
    qiayue  
       2018-04-21 11:22:27 +08:00
    如果 API 没有访问限制,那么不断请求吧
    flowfire
        5
    flowfire  
       2018-04-21 11:23:08 +08:00 via iPhone   ❤️ 3
    。。。标记重补法?
    binux
        6
    binux  
       2018-04-21 11:27:14 +08:00
    你就一个选项,这还能怎么回答?
    alidasuhe
        7
    alidasuhe  
    OP
       2018-04-21 11:38:04 +08:00 via Android
    @binux 我的问题在于——“怎么判断题库内的绝大部分题已经被收集到了?”
    Cbdy
        8
    Cbdy  
       2018-04-21 11:39:00 +08:00 via Android
    应该这么问,假定题库中有 n 道题,请求多少次有 99%的几率拿到所有题
    alidasuhe
        9
    alidasuhe  
    OP
       2018-04-21 11:41:14 +08:00 via Android
    不好意思啊,各位,我没把问题描述清楚……

    我是想问——“怎么判断题目中的绝大部分题已经收集到了?”
    alidasuhe
        10
    alidasuhe  
    OP
       2018-04-21 11:42:29 +08:00 via Android
    @qiayue 有限制,请求一次 API 就要花两块钱。。。
    alidasuhe
        11
    alidasuhe  
    OP
       2018-04-21 11:45:22 +08:00 via Android
    m 是一个常量。
    ThirdFlame
        12
    ThirdFlame  
       2018-04-21 11:53:59 +08:00
    当你连续 3-5 次刷不出来新题的时候,应该就差不多了。 最少大多数题应该拿到了。
    sobigfish
        13
    sobigfish  
       2018-04-21 11:55:46 +08:00
    请求一次 API 就要花两块钱。。。那你刷出重复题的概率稍微高一点就亏的很啊-。-
    zjb861107
        14
    zjb861107  
       2018-04-21 12:54:33 +08:00 via iPhone
    你能确定,每次取的题是完全随机吗?

    如果,一定时间内请求次数超过某个值,就不返回给你新的题目,这是一个很容易实现的反爬策略吧
    A3m0n
        15
    A3m0n  
       2018-04-21 13:33:46 +08:00
    标记重捕法。
    A3m0n
        16
    A3m0n  
       2018-04-21 13:37:12 +08:00   ❤️ 3
    @A3m0n

    https://zh.wikipedia.org/wiki/%E6%A0%87%E5%BF%97%E9%87%8D%E6%8D%95%E6%B3%95

    > 水库中有若干条鱼,捕捉 100 条,做上标记后重新放回水库中。24 小时后再次捕捉 100 条,其中只有 10 条带有标记,可估算出水库中鱼的总数约为 1000 条。
    sobigfish
        17
    sobigfish  
       2018-04-21 16:00:26 +08:00
    @zjb861107 #13 如果是问答类的 app, 返回错误答案更好,比如 4 个答案全是错的。这样也兼容用户在刷新(刷到旧题不是容易答对了?)
    silencefent
        18
    silencefent  
       2018-04-21 17:36:55 +08:00
    api 总会返回一个 id 吧,数据库插入呗,id 重复丢掉或者算更新
    alidasuhe
        19
    alidasuhe  
    OP
       2018-04-21 21:27:23 +08:00 via Android
    @A3m0n 谢谢
    ssmj1005
        20
    ssmj1005  
       2018-04-26 14:30:43 +08:00
    @alidasuhe 你好,你用的是哪个题库?是高考题库吗
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3021 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 13:53 · PVG 21:53 · LAX 05:53 · JFK 08:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.