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

大神们请研究下这个页面里实际的 PDF 如何下载下来?

  •  
  •   ssdde · 2020-02-02 01:30:21 +08:00 · 8729 次点击
    这是一个创建于 1739 天前的主题,其中的信息可能已经有所发展或是发生改变。
    75 条回复    2020-02-09 00:07:21 +08:00
    disk
        1
    disk  
       2020-02-02 02:03:08 +08:00 via Android
    粗看了下,没有实际的 pdf,返回的图片,要么爬下来合成。
    ssdde
        2
    ssdde  
    OP
       2020-02-02 02:18:48 +08:00
    @disk 嗯如果只是图片的话,笨一点的方法可以加载完一张一张保存。求大神出个最简单最高质量的下载方法
    ysc3839
        3
    ysc3839  
       2020-02-02 04:31:10 +08:00 via Android   ❤️ 4
    shuangyeying
        4
    shuangyeying  
       2020-02-02 06:52:44 +08:00
    感谢感谢,很多新书呀。
    magana
        5
    magana  
       2020-02-02 08:23:27 +08:00
    这个页面的书可以用浏览器页面打印的方式,打印为 pdf 文件
    fromdark
        6
    fromdark  
       2020-02-02 09:11:57 +08:00
    哈哈哈,最近疫情免费开放,昨天也想下载,没想到没有下载的功能
    yulihao
        7
    yulihao  
       2020-02-02 09:56:50 +08:00
    全是图片啊
    linKnowEasy
        8
    linKnowEasy  
       2020-02-02 10:04:24 +08:00
    有没有书本推荐. 不限题材.
    xyjincan
        9
    xyjincan  
       2020-02-02 10:06:19 +08:00
    昨天下载到一半,好像被封了,啥都看不见了
    Mavious
        10
    Mavious  
       2020-02-02 10:06:55 +08:00   ❤️ 5
    fireflies
        11
    fireflies  
       2020-02-02 11:54:07 +08:00
    @ysc3839 RecursionError: maximum recursion depth exceeded 报错
    InkAndBanner
        12
    InkAndBanner  
       2020-02-02 12:01:54 +08:00
    @Mavious 慧眼识珠
    LZSZ
        13
    LZSZ  
       2020-02-02 12:05:10 +08:00
    @ssdde 用 py 爬 网上有很多爬图片的教程
    CNHSK
        14
    CNHSK  
       2020-02-02 12:06:39 +08:00
    @ysc3839 Traceback (most recent call last):
    File "C:\Users\Administrator\Desktop\wqxt_pdf-master\imgautocompress.py", line 115, in <module>
    input_file = sys.argv[1]
    IndexError: list index out of range
    >>> 怎么解决,大佬
    ysc3839
        15
    ysc3839  
       2020-02-02 12:08:41 +08:00 via Android
    @fireflies @CNHSK 我没用过,这也不是我开发的,只是恰好在网上看到了。
    jakezh
        16
    jakezh  
       2020-02-02 12:22:42 +08:00
    看了一眼

    @CNHSK #14 python crawl_wqxt.py book_id


    @fireflies #11 parse catalog 有死循环,注释掉就 ok 了
    yamedie
        17
    yamedie  
       2020-02-02 12:32:59 +08:00   ❤️ 1
    用 chrome 的 overrides, 去搞一个名为 read.v5.3.1.722eb.js 的文件, 把 getJwt 暴露到 window 对象上, 一切就迎刃而解了
    ssdde
        18
    ssdde  
    OP
       2020-02-02 13:17:11 +08:00
    @yamedie 大神,你说的这个好像很不错的样子,但是不会搞呀,急
    ssdde
        19
    ssdde  
    OP
       2020-02-02 13:19:11 +08:00
    @magana 浏览器打印的话,需要所有页面图片都清晰加载一次,而且存储来的 PDF 左下角有页面地址,还有书签符号,和在线客服,怎么去除啊
    ssdde
        20
    ssdde  
    OP
       2020-02-02 13:20:45 +08:00
    有没有大佬能针对这个站,写一个工具,只要运行,自己粘贴网址就行,啥都不用管的,小白哭求
    sobigfish
        21
    sobigfish  
       2020-02-02 13:47:55 +08:00
    放心,下载下来你们以后也不会看的
    虽然都是旧版书,但人家是给你看 又不是给你们扒的
    Buges
        22
    Buges  
       2020-02-02 13:56:13 +08:00 via Android   ❤️ 4
    你先在线读完这本书,然后你就懂如何下载了。
    aguesuka
        23
    aguesuka  
       2020-02-02 14:02:27 +08:00
    content-type: image/jpeg
    ytf4425
        24
    ytf4425  
       2020-02-02 15:55:05 +08:00
    @Buges 太同意了
    aviator
        25
    aviator  
       2020-02-02 16:48:09 +08:00
    哇,感谢楼主,好多书可以看。
    crab
        26
    crab  
       2020-02-02 18:49:58 +08:00
    @fireflies pip 升级最新版再重新安装下依赖
    echowxsy
        27
    echowxsy  
       2020-02-02 18:56:00 +08:00
    看到请求里面有类似 lib-nuanxin.wqxuetang.com/page/img/3208401/{PAGE}?k={JSONWEBTOKEN}的链接,可以考虑构造链接然后拼装成 pdf
    qq544230987
        28
    qq544230987  
       2020-02-02 19:16:25 +08:00
    是假的 PDF,其实是图片~ 你批量下载下来,转成 PDF
    ytf4425
        29
    ytf4425  
       2020-02-02 19:39:07 +08:00   ❤️ 2
    aHR0cHM6Ly93d3cubmVrby5vb28vd3F4dWV0YW5nLWRvd25sb2FkLw==

    警告:请尊重版权,仅供学习之用,请勿全站拖,请仅下载你需要的部分,请勿缺德爬全站。一切后果与本人及作者无关。
    ssdde
        30
    ssdde  
    OP
       2020-02-02 19:48:54 +08:00
    @ytf4425 大佬,请问你给的这个是啥,如何使用?
    ssdde
        31
    ssdde  
    OP
       2020-02-02 19:52:43 +08:00
    @ytf4425 哦,懂了,谢谢神仙指路
    fireflies
        32
    fireflies  
       2020-02-02 19:58:47 +08:00
    @crab 谢谢
    fireflies
        33
    fireflies  
       2020-02-02 19:59:44 +08:00
    @jakezh 谢谢
    fireflies
        34
    fireflies  
       2020-02-02 20:08:21 +08:00
    @ssdde 什么意思,请教
    ssdde
        35
    ssdde  
    OP
       2020-02-02 20:10:19 +08:00
    @ytf4425 大神,文章看完了,可是还是不会下载,怎么破,大神求带
    ssdde
        36
    ssdde  
    OP
       2020-02-02 20:12:03 +08:00
    @ytf4425 文章最后有个代码实现,但是看不了,点开需要登录
    mcone
        37
    mcone  
       2020-02-02 20:15:12 +08:00
    @Mavious 这只猫真赞+1
    ytf4425
        38
    ytf4425  
       2020-02-02 20:25:10 +08:00
    @ssdde 因为某些原因不公开代码惹(怕被追责),实现方法文中都已经说了,即使是手动写个批处理应该也不是很难
    fireflies
        39
    fireflies  
       2020-02-02 20:27:03 +08:00
    @ytf4425 文章在哪里啊
    ssdde
        40
    ssdde  
    OP
       2020-02-02 20:29:27 +08:00
    @ytf4425 纯小白,真不会啊,求大神发送批处理或工具到我邮箱 eWVqaWFsZWk1QGZveG1haWwuY29t
    zhizunzz
        41
    zhizunzz  
       2020-02-02 20:29:38 +08:00 via Android   ❤️ 1
    @Mavious https://loading.io/ 这个猫之前我用过,在这里找的
    fireflies
        42
    fireflies  
       2020-02-02 20:30:55 +08:00
    @ssdde 那串字母什么意思
    zhizunzz
        43
    zhizunzz  
       2020-02-02 20:33:33 +08:00 via Android
    ssdde
        44
    ssdde  
    OP
       2020-02-02 20:38:22 +08:00
    @fireflies 你猜,2333
    ssdde
        45
    ssdde  
    OP
       2020-02-02 20:43:25 +08:00
    @ytf4425 不会被追责的,自己下载下来又不公开,而且下载的又不多。如果奇迹发生真被追责,我说是我自己写的,好吧,大神,批处理求发给我 eWVqaWFsZWk1QGZveG1haWwuY29t
    sunmker
        46
    sunmker  
       2020-02-02 21:01:40 +08:00
    其实花时间写代码爬,还不如花时间网上找资源来得快
    ssdde
        47
    ssdde  
    OP
       2020-02-02 21:02:40 +08:00
    @sunmker 网上的资源没这个清华大学出版社原版的好,而且很多也没有,没官方的全
    ytf4425
        48
    ytf4425  
       2020-02-02 21:50:13 +08:00   ❤️ 1
    @ssdde 发了本书
    ytf4425
        49
    ytf4425  
       2020-02-02 21:50:53 +08:00   ❤️ 1
    @sunmker 对于某些人来说写代码是一种乐趣,看懂别人网站的运作有一种成就感(非贬义)
    wwilson13
        50
    wwilson13  
       2020-02-02 22:17:28 +08:00
    @ytf4425 你好。同求这本书。需求也和楼主一样。谢谢。
    ytf4425
        51
    ytf4425  
       2020-02-02 22:28:38 +08:00   ❤️ 1
    @wwilson13 找楼主要,不用谢
    asger
        52
    asger  
       2020-02-02 23:21:24 +08:00
    @ytf4425 感谢,文章看懂了,也实现了,就是不怎么会写 python,哭笑
    lisachensyd
        53
    lisachensyd  
       2020-02-02 23:24:33 +08:00
    @ytf4425 想请教一下大神,jwt secret 会变吗?是不是可以在脚本里写死?
    cyberpoint
        54
    cyberpoint  
       2020-02-02 23:28:37 +08:00
    右键打印
    ssdde
        55
    ssdde  
    OP
       2020-02-03 00:01:08 +08:00
    @ytf4425 感谢大神分享啊,授人以鱼不如授人以渔啊,不如教教俺怎样获得啊,难道大神的意思是这本看完自己就会了?
    ssdde
        56
    ssdde  
    OP
       2020-02-03 00:04:20 +08:00
    @lisachensyd 批处理脚本写好后请发给我,谢谢 eWVqaWFsZWk1QGZveG1haWwuY29t
    ytf4425
        57
    ytf4425  
       2020-02-03 00:07:42 +08:00
    @lisachensyd 到目前为止没发现变过,所以应该是可以写死的,如果不放心可以请求那个 js 文件在里面提取出来

    @ssdde 对,看完这本书,再看我写的文章,就会了,最后最方便的代码实现需要你会编程(可用 js 编),或者批处理半自动完成。

    @asger 代码可以参考#3 大佬发的自己改一下
    zhzy
        58
    zhzy  
       2020-02-03 00:10:41 +08:00 via iPhone
    个人感觉如果真是只为了自己学习还是看那几本经典高质量的书吧……或者去看一些网课 下载一堆下来你肯定不会看的 而且这种带版权的东西 怕不是拖全站然后某宝 9.9 资料全集哦
    ytf4425
        59
    ytf4425  
       2020-02-03 00:19:21 +08:00
    @zhzy 对,清华大学出版社这几天送的书看了一下好像质量高的不多,建议 @ssdde 买更经典的书(如机工社的“你渴望力量吗”华章图书)

    @ssdde #56 的语气不像是请求别人帮忙的语气啊。另外建议真的想学可以把我发的链接先保存下来,这个博客好像不是很稳定,指不定哪天就挂了。先看看,应该是能看懂大半的,就算写不了代码也应该能在浏览器上配合 f12 手动实现一下。
    ssdde
        60
    ssdde  
    OP
       2020-02-03 01:27:14 +08:00
    @ytf4425 没有啊,他看起来会写出来的样子,我就请他写好后顺便发给我了。我感觉清华大学出版社的内容挺不错啊
    lisachensyd
        61
    lisachensyd  
       2020-02-03 01:47:57 +08:00 via Android
    @ssdde 不用指望我,3 楼已经有大佬给出 python 脚本了,还有楼上那个指路的大神那篇文章已经讲的很详细了
    christin
        62
    christin  
       2020-02-03 11:17:10 +08:00 via iPhone
    @Buges 套娃?
    lisachensyd
        63
    lisachensyd  
       2020-02-03 13:17:39 +08:00
    @ytf4425 首先感谢大神的指路,教程很详细,我基本都看懂了,就是现在用 api client 测试的时候能返回一个图片,看二进制文件头是 PNG,但是大小只有 10kb 左右,保存到本地打不开图片,我已经在这个请求的 headers 中加入了 referer, 不知道哪里出了错
    ytf4425
        64
    ytf4425  
       2020-02-03 14:14:12 +08:00
    @lisachensyd 如果是文件损坏我没有遇到过。。
    ssdde
        65
    ssdde  
    OP
       2020-02-03 15:39:41 +08:00
    CNHSK
        66
    CNHSK  
       2020-02-03 18:29:50 +08:00
    @ssdde 你怎么什么都想爬,自己想办法不是才有意思吗
    ssdde
        67
    ssdde  
    OP
       2020-02-03 20:02:25 +08:00
    @CNHSK 我这不是通过提问的方式来想办法,学习钻研吗
    lisachensyd
        68
    lisachensyd  
       2020-02-03 20:49:06 +08:00
    @ytf4425 不知道为什么用 REST api 客户端测试就拿不到正确的图片,用 Python 写入二进制就可以了,不管怎么样感谢大神了!
    Buges
        69
    Buges  
       2020-02-04 01:04:53 +08:00
    @ssdde #65 看了一下,服务端返回了加密的 pdf,请求 /content/authorize 返回文件 url,在 0.f4c9028886a7b391c0df.1574068669001.js 里搜 impower()下断点解密。你先看完那本 js 再弄这个,正好学以致用。
    yamedie
        70
    yamedie  
       2020-02-04 11:40:16 +08:00
    我博客有 chrome 控制台批处理下载详解
    歪个楼, 百毒搜 wenquan, 第一个联想词在开车 : D
    ssdde
        71
    ssdde  
    OP
       2020-02-04 14:44:11 +08:00
    @Buges 哭哦,看完搞懂不知道什么时候了,网站都关闭开放了。可以直接教教怎么下载未加密的原始 pdf 吗大神
    ssdde
        72
    ssdde  
    OP
       2020-02-04 15:53:08 +08:00
    @yamedie 大神,看了你的博客,下载的是高清图片。69 楼提到的可以下载未加密的原始 PDF,有办法搞吗
    CNHSK
        73
    CNHSK  
       2020-02-04 16:06:24 +08:00
    @ssdde 不用爬了,已经开始调整了
    ssdde
        74
    ssdde  
    OP
       2020-02-04 17:17:52 +08:00
    @CNHSK 这就是不早点爬的下场,悲剧啊
    ssdde
        75
    ssdde  
    OP
       2020-02-09 00:07:21 +08:00
    @Buges 大佬,好像没找到你说的这个 js

    0.f4c9028886a7b391c0df.1574068669001.js
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3835 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 00:53 · PVG 08:53 · LAX 16:53 · JFK 19:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.