- 注册时间
- 2020-11-9
- 最后登录
- 1970-1-1
- 威望
- 星
- 金币
- 枚
- 贡献
- 分
- 经验
- 点
- 鲜花
- 朵
- 魅力
- 点
- 上传
- 次
- 下载
- 次
- 积分
- 3823
- 在线时间
- 小时
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?欢迎注册
×
本帖最后由 uk702 于 2024-1-21 12:13 编辑
* 本帖主要介绍一些实用的 IT 技巧 *
最近在学习射影几何,除了一众教材之外,《射影几何的初等说明》(https://tieba.baidu.com/p/7682645300 )无疑最适合我等基础薄弱者,其中大量且经典的例子,更是妙乐可言。
而其中的主要内容,则以 PPT 图片的形式存在,那么,怎么将这些图片都下载到本地呢?无它,右键,图片另存为,再点下一张,重复操作。具体而言,首先将需要的帖子对应的标识(7682645300)加入到 tieba.baidu.com/photo/p?tid= 之后,就可以打开该帖子对应的大图网址(tieba.baidu.com/photo/p?tid=7682645300),然后鼠标右键,图片另存为,再点下一张,不断重复。
而这样的重复操作,交给 AutoHotKey 就再合适不过了,将经下代码写到文件 tieba.ahk 中,然后运行 autohotkey tieba.ahk,按 F12 就可以逐张图片下载了。
- ; 用于调整每次操作的延时,以保证浏览器有足够的时间响应下面的模拟操作
- n := 10
- F12::
- CoordMode, Mouse, Screen
- ; 根据网页中提示的图片张数设置循环次数
- Loop, 215 {
- ; 模拟点鼠标右键,发出点击后,将弹出右键菜单
- MouseClick, right, 710, 560
- Sleep 30*n
- ; 将鼠标移到图片“另存为"菜单项,再按左键确认下载
- ; 发出模拟点击左键消息,之后将弹出“另存为”的对话框
- MouseClick, left, 780, 620
- Sleep 100*n
- ; 将鼠标移到“另存为”的对话框,点击“确认”按键,完成下载保存到本地
- MouseClick, left, 250, 465
- Sleep 30*n
- ; 继续将鼠标移到某恰当位置,按左键,切换到下一张
- MouseClick, left, 1200, 560
- Sleep 30*n
- }
- return
复制代码
上述操作需要预先确认该帖子共有多少张图片,下面略加修改,让程序不停地模拟操作下一张,直到用户主动中止这个过程:
- ; 用于调整每次操作的延时,以保证浏览器有足够的时间响应下面的模拟操作
- n := 10
- ; 当用户按下 ESC 键,isbreak 将设置为 1,将退出下面的循环
- isbreak := 0
- ; 设置 ESC 热键
- ESC::
- isbreak = 1
- return
- ; 设置 F12 热键
- F12::
- CoordMode, Mouse, Screen
- ; 循环足够多的次数(这样一来就需要手式按 ESC 中断循环了)
- Loop, 10000 {
- ; 模拟点鼠标右键,发出点击后,将弹出右键菜单
- MouseClick, right, 710, 560
- Sleep 30*n
- ; 将鼠标移到图片“另存为"菜单项,再按左键确认下载
- ; 发出模拟点击左键消息,之后将弹出“另存为”的对话框
- MouseClick, left, 780, 620
- Sleep 100*n
- ; 将鼠标移到“另存为”的对话框,点击“确认”按键,完成下载保存到本地
- MouseClick, left, 250, 465
- Sleep 30*n
- ; 继续将鼠标移到某恰当位置,按左键,切换到下一张
- MouseClick, left, 1200, 560
- Sleep 30*n
- If (isbreak == 1) {
- isbreak = 0
- break
- }
- }
- return
复制代码 |
|