V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
这是一个专门讨论 idea 的地方。

每个人的时间,资源是有限的,有的时候你或许能够想到很多 idea,但是由于现实的限制,却并不是所有的 idea 都能够成为现实。

那这个时候,不妨可以把那些 idea 分享出来,启发别人。
Trim21
V2EX  ›  奇思妙想

使用 p2p 网络获取 sci-hub 上的论文

  •  3
     
  •   Trim21 · 2021-07-12 07:27:38 +08:00 · 3498 次点击
    这是一个创建于 991 天前的主题,其中的信息可能已经有所发展或是发生改变。

    reddit发起了一个项目,备份了目前 sci-hub 所有的论文。

    所以现在所有的 sci-hub 论文在 p2p 网络中都有一份了,理论上可以通过一个 bt 客户端去获取。 但是因为打包的时候是把 1000 篇论文打包在同一个种子文件中,所以还需要一些额外的步骤。

    我正在尝试写一个客户端,可以直接通过 doi,在 p2p 网络中获取到对应的论文文件。

    目前的进度是刚写完种子解析,下一步开始写一个 zip 文件的索引生成器,然后再实现一个剪切过的 bt 客户端,针对性的在 p2p 网络上获取数据块。

    只要拥有索引和对应的种子文件,就能反查出一个 doi 对应 p2p 网络中的哪一个或者哪几个 bt 数据块,再从别的 peer 获取数据,最终解压出对应的论文文件。

    https://github.com/Trim21/sci-hub-p2p

    有想法,或者感兴趣想一起实现的可以邮件我,联系方式见 github

    第 1 条附言  ·  2021-07-12 09:14:43 +08:00
    说错了,是 10w 篇论文,不是 1000 篇
    第 2 条附言  ·  2021-07-16 18:00:47 +08:00
    建了个 tg 群,偶尔发一下进展

    https://t.me/joinchat/pqVtavsbI-8xODZl
    16 条回复    2021-07-27 13:17:27 +08:00
    Trim21
        1
    Trim21  
    OP
       2021-07-12 07:50:18 +08:00 via Android
    不过好像这个备份不是单纯的把文件直接 zip 在一起来着,虽然下了两个种子在做种但是没解压尝试。

    希望不要最后发现每篇论文的数据是离散的…
    xarthur
        2
    xarthur  
       2021-07-12 08:22:25 +08:00 via iPhone   ❤️ 1
    不用这么麻烦,sci-hub 有支持 ipfs 的计划,如果放到 ipfs 之后就可以直接浏览了,不需要全部下载。
    Trim21
        3
    Trim21  
    OP
       2021-07-12 08:33:51 +08:00 via Android
    @xarthur 大概我能比 ipfs 先上线()
    Trim21
        4
    Trim21  
    OP
       2021-07-12 08:37:15 +08:00 via Android
    @Trim21 正经一点说,ipfs 上线了之后估计这个备份的项目应该也不会停掉。
    相比单纯占用硬盘空间,能多一个数据获取的方法应该也不算什么坏事
    tousfun
        5
    tousfun  
       2021-07-12 08:41:47 +08:00
    先 star 了
    12345tiger
        6
    12345tiger  
       2021-07-12 09:05:56 +08:00 via Android
    想法很有意义,干了我想干没干的事,star 之
    codehz
        7
    codehz  
       2021-07-12 09:19:16 +08:00
    ipfs 不也是 p2p 的。。。
    嘛,非要用 gateway 的话那确实是中心化的,但是也不是不可以嵌入一个 ipfs-lite
    Trim21
        8
    Trim21  
    OP
       2021-07-12 09:27:42 +08:00 via Android
    @codehz 主要是 ipfs 现在不还没影吗,bt 虽然传统但是这个情况下已经足够用了。

    要是我进展的快的话,等 ipfs 上线了还能额外再嵌入一个 ipfs (开始做梦)
    xarthur
        9
    xarthur  
       2021-07-12 14:37:37 +08:00 via iPhone
    @Trim21 那倒也行(
    Akkuman
        10
    Akkuman  
       2021-07-15 09:23:15 +08:00 via Android
    NeedforV2
        11
    NeedforV2  
       2021-07-16 17:23:39 +08:00
    star 为敬!
    threebr
        12
    threebr  
       2021-07-18 23:23:40 +08:00
    想法实在太棒了
    ppddtt
        13
    ppddtt  
       2021-07-19 10:03:55 +08:00
    这不就是 emule 能干的事情吗
    yujiang
        14
    yujiang  
       2021-07-20 21:20:06 +08:00 via Android
    这玩意我咋记得似乎在哪个地方看过?
    lc1450
        15
    lc1450  
       2021-07-23 14:06:04 +08:00
    用这个原理是不是可以只下载视频的精彩部分?
    ukuyu
        16
    ukuyu  
       2021-07-27 13:17:27 +08:00 via iPhone
    先 star 为敬
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2847 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 14:30 · PVG 22:30 · LAX 07:30 · JFK 10:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.