大神们请研究下这个页面里实际的 PDF 如何下载下来? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
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
有没有大佬能针对这个站,写一个工具,只要运行,自己粘贴网址就行,啥都不用管的,小白哭求
run2
    21
run2  
   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     Solana     2346 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 30ms UTC 03:18 PVG 11:18 LAX 19:18 JFK 22:18
Do have faith in what you're doing.
ubao msn 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