一个可自定义规则爬取绅士漫画站点的应用可有实用性 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
PureDark
V2EX    问与答

一个可自定义规则爬取绅士漫画站点的应用可有实用性

  •  1
     
  •   PureDark 2016-08-16 04:43:44 +08:00 18899 次点击
    这是一个创建于 3347 天前的主题,其中的信息可能已经有所发展或是发生改变。

    10 天前突然不知道哪来的兴趣开始研究怎样更便捷地浏览各大绅士站点,大名鼎鼎的 E 绅士自然是首要考虑对象,虽然我知道已有 ehviewer 这样大名鼎鼎的先辈,但是我发现它仍然有局限性,不支持多个站点

    于是手痒花了 10 天大概把应用做了出来,主要功能是,本身不带有任何和谐内容,甚至我觉得都可以发 google play ,一切爬站点的规则都可以手填、粘贴 json 、或者通过扫描二维码的方式添加 规则的写法相当简单,稍微解释一下,任何一个有点 html 基础知识的人都能写出来吧,并且可以分享给其他人用

    搜索只做了可以适配所有网站的基础搜索,自动补全是从获取的到 item 的 tag 收集

    github 主页: https://github.com/PureDark/H-Viewer

    目前还差下载功能,下载大概就是做成逐图片保存,这样不会有配额之类的风险,而且也可以适配所有网站 目前测试写的三个站, lofi.e 绅士, g.e 绅士、 wnacg ,目测 nhentai 也很容易写规则,我还是留给有兴趣的人写吧……

    Preview

    29 条回复    2016-08-20 13:15:38 +08:00
    wjm2038
        1
    wjm2038  
       2016-08-16 05:07:35 +08:00 via Android
    支持一下
    wjm2038
        2
    wjm2038  
       2016-08-16 05:09:58 +08:00 via Android
    有编译好的坂本么
    zhy0216
        3
    zhy0216  
       2016-08-16 05:18:37 +08:00
    666666666
    wjm2038
        4
    wjm2038  
       2016-08-16 05:55:20 +08:00 via Android
    话说你用过多多猫么
    wjm2038
        5
    wjm2038  
       2016-08-16 05:55:35 +08:00 via Android
    感觉功能好像
    lslqtz
        6
    lslqtz  
       2016-08-16 06:02:54 +08:00
    总结一下这个 App 吧:
    药丸!
    franklinyu
        7
    franklinyu  
       2016-08-16 06:21:43 +08:00
    真的好?感服器造成,到候士站了就得不失了。於有 BT 子的,是先 BT 吧。
    Trim21
        8
    Trim21  
       2016-08-16 06:29:28 +08:00 via Android
    @franklinyu 其实自用下载下来看负担应该跟你自己手动翻页看是差不多的吧?就怕有人下载了一堆又不看或者直接打包发到别的地方去
    ShinCurry
        9
    ShinCurry  
       2016-08-16 07:10:19 +08:00 via iPhone   2
    搭车发个东西,小黄本转 EPUB
    https://github.com/MoeOverflow/hentaibook
    xream
        10
    xream  
       2016-08-16 07:53:59 +08:00 via iPhone
    求个 iOS 版
    franklinyu
        11
    franklinyu  
       2016-08-16 08:10:24 +08:00
    @Trim21 {{8L}}:嗯,我就是意思,比如到自己建立的源站之。如果是下一部看一部那然是的,不定能省那一。
    just4test
        12
    just4test  
       2016-08-16 08:43:24 +08:00
    得加一个共享规则的功能。或者是用二维码共享,或者是直接内嵌商店。
    ELLIA
        13
    ELLIA  
       2016-08-16 09:38:46 +08:00
    6666~这个有意思~
    PureDark
        14
    PureDark  
    OP
       2016-08-16 13:02:26 +08:00
    @franklinyu
    @Trim21
    嗯这个应用操作逻辑就是模拟的网页浏览的操作,对网站的负荷不会比正常用浏览器翻页浏览要高
    至于下载也一样,只是把 “点开网页-刷出图片-右键另存为”这个机械化操作自动化了,另外我也不会做成同时七八个线程下,这样反而容易被封 IP ,下载时最多就两三个线程慢慢另存图片
    PureDark
        15
    PureDark  
    OP
       2016-08-16 13:07:18 +08:00
    @wjm2038 多多猫?听说过,但是还没用过,马上去下来看一下,界面比较简陋,但是感觉这个 siteD 插件框架解耦得不错诶,一个插件可以自定义的地方很多
    不过我这个是比较精确地定位为绅士漫画站点的爬取应用,界面是不能自定义的,只能自定义规则,而且允许用户自己编辑站点规则,可以说虽然比 ehviewer 定位要广,但是还是比多多猫要专一点、


    @xream ios 版近期就不会有了 233 除非看哪位 ios 开发者有兴趣移植吧,我反正是不会 233


    @just4test 生成二维码分享功能可以加,内嵌还是不行的,因为我想洗白这个应用,应用内部不能内置任何可能被审核人员和谐的东西
    franklinyu
        16
    franklinyu  
       2016-08-16 15:13:04 +08:00
    @PureDark {{14L}}:是,有些人因下漫方便了,就下一堆不看
    crazyred
        17
    crazyred  
       2016-08-16 16:39:59 +08:00
    所以编译好的版本呢?
    PureDark
        18
    PureDark  
    OP
       2016-08-16 17:28:03 +08:00
    @crazyred 写完下载功能后再发布
    wjm2038
        19
    wjm2038  
       2016-08-16 19:26:52 +08:00 via Android
    @PureDark 我是在做多多猫插件的,理论上只要有个网站,并且数据有规律,多多猫就可以应用插件来解析
    PureDark
        20
    PureDark  
    OP
       2016-08-16 22:24:01 +08:00
    @wjm2038 是的,所以可以说这点很好,但是另一方面,对于相同规律的某同一类站点,专门还要开发插件就比较麻烦了,因为说到底就相当于要写个爬虫了、而不管用什么语言的爬虫都可以解析任何有规律的网站、
    这应用主要还是把阅读和展示框架,甚至规则的格式都定义好,只需要写简单的选择器就行了,而且可以后期更新(而且说到底根本不关心除了绅士站以外的站点 233 ,展示逻辑都不一样,比如普通的漫画就没有每一话的相册目录一样的页面)
    wjm2038
        21
    wjm2038  
       2016-08-16 23:25:17 +08:00 via Android
    @PureDark 真正的绅士...
    Sunyanzi
        22
    Sunyanzi  
       2016-08-17 00:31:43 +08:00
    这个能抓里绅士那样需要登录的站吗 ..?
    PureDark
        23
    PureDark  
    OP
       2016-08-17 03:54:42 +08:00
    @Sunyanzi 不做内置登录,但是填写规则的页面有一个填入 cookie 的输入框,输入了的话会在请求时带上 Cookie ,但是这就要求你自己用电脑登录里 E ,然后 F12 看自己的 PHPSESSID 了……
    x8888k
        24
    x8888k  
       2016-08-17 13:34:32 +08:00 via Android
    妈妈再也不用担心我的右键了
    crazyred
        25
    crazyred  
       2016-08-17 15:09:45 +08:00
    然而太复杂了,简单易用才是王道啊
    PureDark
        26
    PureDark  
    OP
       2016-08-18 03:48:01 +08:00
    @crazyred 对于使用者来说并不复杂,只需要扫一下二维码就可以添加一个新站点,除此之外使用就只是点一点的事情了

    另外下载功能写完了,会在近期放出下载(等我把 License 、检查更新、关于里的内容填好、)

    ![]( https://github.com/PureDark/H-Viewer/raw/master/images/9.png)
    PureDark
        27
    PureDark  
    OP
       2016-08-19 15:53:59 +08:00
    已经做完初版了,测试无误
    一晚上更新一个小版本号把发现的 BUG 也修复了
    大家试用一下吧,有 BUG 欢迎在 issues 里反馈

    https://github.com/PureDark/H-Viewer/releases

    目前做的还是基础功能,后续有什么功能 Request 也在 issues 里提吧
    前提是这个功能是要能适用于大部分网站的,一些比如 E-hentai 独有的高级搜索之类的就不做了,因为没法兼容其它站
    lbq
        28
    lbq  
       2016-08-20 12:53:39 +08:00
    建议增加对图片列表页直接能得到大图地址的支持,现在我好像只能通过 urlecho 之类的服务凭空制造一个页面……(

    http://paste.ee/r/fdp1u (跑
    PureDark
        29
    PureDark  
    OP
       2016-08-20 13:15:38 +08:00
    @lbq 没想到这么快,在我还没写页面解释规则格式的情况下就已经有第三方出来了 2333


    我没考虑的情况其实挺多的,一开始是按照 lofi.e-hentai 来定 Rule 的数据结构的,然后适配 g.e-hentai 和 wnacg 时遇到问题又拓展了,虽然我写 nhentai 时已经不用再修改就能适配了,不过毕竟这四个站点还不能代表所有站点的结构,还是会遇到特殊情况的,建议在 issues 里提一条加个 request 标签、免得我之后忘记了、
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5454 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 07:11 PVG 15:11 LAX 00:11 JFK 03:11
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86