“阴险”的语文老师,将583页的 复习资料PDF 上传到平台上😵,然而平台上阅读体验不佳(下图即能即表现出其加载慢,翻页麻烦,又不能留下自己的学习痕迹),必须得将这个文件下载下来!但是发现,老师并没有给出下载渠道,我们只能阅读却不能下载!😅

没有储备多少前端知识的我,只能按下F12,进入火狐浏览器的开发者模式,摸索下是否能够找到这个583页pdf文件的源链接。经过观察,发现网络这一栏能够将这个pdf中每一页的png图片格式显示出来。

点进去其中一个图片,将栏中带有链接的都点了一遍,发现**Referer栏的链接**,是个去掉样式的网页,但能够浏览所有页。我将这个网页另存下来~~(1G多)~~,发现这个另存下来的文件夹里面都是完整的图片文件。

现在又遇到新问题?每张图片名虽标有原所属的页数,但其前缀都是一长串的值,只有串的后缀page-10这种,才是我想要的(便于后面批处理页码排序),有没有什么程序能够只保留每个文件名的特定长度的后缀呢?🤔

百度了一下,发现这篇文章正是我想要的脚本,因为每张图片名称前缀要删除的长度是固定的,我们将这个前缀删掉就能够得到完整的页码名称,资源管理器也就能够帮我为页数排好序了。怎么使用该脚本?先将下面源代码拷贝到一个新建的.txt文件,然后将其另存为ANSI编码(避免中文乱码)的.bat文件。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
@echo off
setlocal enabledelayedexpansion

::批量去掉文件名前N个字符,如果有文件夹会搜索文件夹下的每个文件进行修改
set /p format=请输入需要操作的文件格式:
set /p deletenum=请输入需要删除文件名前多少个字符:
for /r %%i in (.) do (
for /f "delims=" %%a in (' dir /b "%%i\*.%format%" 2^>nul ') do (
set "t=%%~na"
ren "%%i\%%a" "!t:~%deletenum%!%%~xa"
)
)

pause

接着双击运行这个新生成的文件(注意,该脚本应放在修改图片目录下),输入图片格式:png、删除前37个字符,于是脚本运行一小会,成功将所有图片重命名了,同时保证每张图片的内容是严格按照名称编号的顺序排好的。

接下来,我们只需要交给相关的pdf处理软件(这里我用的是Adobe Acrobat Pro),将这些重命名的图片文件合并到一个pdf文件

大功告成,同时将1.03G且583页的图片文件合并成一个223MB的pdf文件~😉