因个人更换华为手机到其它品牌,华为手机中的备忘录无法直接迁移,故使用影刀 RAP 自动读取备忘录中的数据,并逐条插入到得到笔记中。
1. 影刀 RAP:在得到笔记创建笔记
前置步骤
- 打开 得到笔记,注册并登录账号。
- 在影刀中新建「PC 自动化应用」。
流程步骤
序号 | 动作 | 说明 |
---|---|---|
1 | 获取已打开的网页对象 | 网页自动化 → 获取已打开的网页对象 选择 Chrome,按网址匹配 https://www.biji.com/ |
2 | 点击元素(web) | 捕获并点击主页笔记输入框右上角的小方框,进入全屏编辑页 |
3 | 填写输入框(web)- 标题 | 捕获编辑页标题输入框,测试输入:这是新的标题 |
4 | 填写输入框(web)- 内容 | 目标输入框为 div[contenteditable="true"] ,直接捕获失败。提示"未找到指定ID的元素" 使用 XPath: //*[@id="aie-editor"]/div[2]/div[3]/div/div[1]/div/div[2]/div/div |
5 | 点击元素(web) | 模拟点击「保存」 |
2. 影刀 RAP:读取华为云备忘录数据
前置步骤
- 打开 华为云空间,登录并进入「备忘录」。
流程步骤
序号 | 动作 | 说明 |
---|---|---|
1 | 获取已打开的网页对象 | 选择 Chrome,按网址匹配 https://cloud.huawei.com/ |
2 | 获取相似元素列表(web) | 获取所有备忘录「标题块」(标题 + 创建日期) |
3 | 反转列表 | 按日期由远及近排序,后续先创建旧笔记 |
4 | Foreach 循环 | 依次处理每个标题块 |
5 | 设置变量 | 用正则拆分标题与日期:__import__('re').search(r'^([\s\S]+?)\n?(\d{4}年\d{1,2}月\d{1,2}日)$', 标题_日期_txt).groups() if 标题_日期_txt else [] 重组标题: (标题_日期_array[0].strip()[:30] + '...') if len(标题_日期_array[0].strip()) > 30 else 标题_日期_array[0].strip() + ' - ' + 标题_日期_array[1] |
6 | 点击元素(web) | 点击标题块,右侧加载对应笔记内容 |
7 | 等待元素(web) | 等待内容加载完成 |
8 | 获取元素信息(web) | 捕获右侧笔记内容块,读取文本 |
至此,已获取每条备忘录的「标题」与「内容」。
3. 整合流程:迁移数据
改造思路
在「读取华为云备忘录」流程中增加两个输出:
笔记内容_txt
合并笔记标题_txt
将「在得到笔记创建笔记」流程封装为子流程,接收上述两个参数。
在「读取华为云备忘录」循环体内增加:
- 调用流程,再设置输入参数
测试提示
- 调试时可缩小 Foreach 循环次数,避免一次性处理过多数据。