<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>教程 on 醋泡白豆</title><link>https://new.cupaobaidou.com/category/ways/</link><description>Recent content in 教程 on 醋泡白豆</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Fri, 22 Aug 2025 10:01:04 +0800</lastBuildDate><atom:link href="https://new.cupaobaidou.com/category/ways/index.xml" rel="self" type="application/rss+xml"/><item><title>飞书另类用法：把表格信息自动生成可分享的网页</title><link>https://new.cupaobaidou.com/archives/1219/</link><pubDate>Thu, 21 Aug 2025 10:00:00 +0800</pubDate><guid>https://new.cupaobaidou.com/archives/1219/</guid><description>&lt;section style="line-height: 2; font-size: 15px; letter-spacing: 1px; padding: 0px 10px; box-sizing: border-box; font-style: normal; font-weight: 400; text-align: justify; color: rgb(62, 62, 62); visibility: visible;"&gt;&lt;section style="text-align: center; font-size: 12px; color: rgb(160, 160, 160); box-sizing: border-box; visibility: visible;"&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box; visibility: visible;"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;各个 AI 都能生成网页代码（HTML），非程序员也能用 AI 制作简单的互动网页。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;有的 AI 工具内置了在页面上自动渲染 HTML 页面的功能，我们甚至可以直接截图做简单的海报。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;随之而来，痛点出现了：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;如何更快把这段代码变成一个能发个朋友的链接？&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;如何更便捷保存这些代码网页，更快速找到呢？&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;年初，在归藏老师那里看到了可以直接粘贴代码就直接预览并分享的 youware ，非常好用。不过粘贴后，自己的代码就看不到了，现在 youware 这个功能也限制用量了。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;另一个类似的网站 32kw.com （HTMLgo）也限定了一定的权限（刚刚得知是向阳乔木老师的网站，特加附注）。&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; box-sizing: border-box; visibility: visible;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.7712962962962963" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; width: 657px !important; box-sizing: border-box; height: auto !important; visibility: visible !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="1" src="https://new.cupaobaidou.com/usr/uploads/2025/08/3669616511.png" _width="100%" alt="Image" data-report-img-idx="0" data-fail="0"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;不过最近，我发现在飞书多维表格中，借助「网页自动部署」这个免费的字段捷径，就能解决这个问题：&lt;/span&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;在一个单元格中粘贴 HTML 代码，旁边的单元格就能生成一个可分享的网页链接。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.6527777777777778" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 428.875px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="2" src="https://new.cupaobaidou.com/usr/uploads/2025/08/4203169252.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;这样既能够保存代码，也能够有分享链接，减少了很多阻力——再也不需自己打开编辑器粘贴 HTML 代码，保存为 HTML 格式的文件，再用浏览器打开了。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;平替了 HTML 在线托管和分享工具的最基础功能。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;更有趣的是，可以利用飞书表格中内嵌的 Deepseek，自动引用表格中其他的数据信息， 自动生成可以分享的网页。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.6527777777777778" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 428.875px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="3" src="https://new.cupaobaidou.com/usr/uploads/2025/08/379430845.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;网页就是图片，图片背后就是网页，那么就能够实现批量制图了。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;（文科生最表面的理解）&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;于是我又拓展了这个的使用场景：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;a class="normal_text_link" target="_blank" style="" href="https://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485739&amp;amp;idx=1&amp;amp;sn=dc80c5a8c5d6a1d32212fcc6d6cd6a57&amp;amp;scene=21#wechat_redirect" textvalue="我使用飞书多维表格记录的日志" data-itemshowtype="0" linktype="text" data-linktype="2"&gt;我使用飞书多维表格记录的日志&lt;/a&gt;，加个 &amp;nbsp;「Deepseek 」和「网页自动部署」这两个字段捷径， 就能在我记录完备之后，自动生成一个分享网页了！&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.6527777777777778" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 428.875px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="4" src="https://new.cupaobaidou.com/usr/uploads/2025/08/3710465036.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.8796296296296297" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 577.917px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="5" src="https://new.cupaobaidou.com/usr/uploads/2025/08/1928374169.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 12px;box-sizing: border-box;"&gt;&lt;p style="text-align: center;white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;生成网页的效果截图&lt;/span&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;让我取消了飞书「排版打印」插件的订阅。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;如果 Deepseek 生成的网页质量不是很好，可以用 Claude 4 先写好模板，把整个代码嵌入提示词中就好了。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.8796296296296297" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 577.917px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="6" src="https://new.cupaobaidou.com/usr/uploads/2025/08/3225227372.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;如果再拓展一下，其实可以批量生成很多东西，把表格的行的内容，变成铺开可以展示的内容。&lt;/span&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;今天先写这些。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section class="mp_profile_iframe_wrp" nodeleaf=""&gt;&lt;mp-common-profile class="js_uneditable custom_select_card mp_profile_iframe mp_common_widget js_wx_tap_highlight" data-pluginname="mpprofile" data-nickname="醋泡白豆" data-alias="cpbd1121" data-from="0" data-headimg="http://mmbiz.qpic.cn/mmbiz_png/4ADhmAJPyqCfQIeWCibmq12nNoQPoovmGAkQXibbHrPEWd6dbEMeXDsHmR2FvB44AqgIod9yvnvRyOiaOAicCc7C1g/300?wx_fmt=png&amp;amp;wxfrom=19" data-signature="Friendly Ambitious Nerd设计有趣支持系统 煽风点火个人生活" data-id="MzI2OTIxMTg1Nw==" data-is_biz_ban="0" data-service_type="1" data-verify_status="0" data-origin_num="265" data-isban="0" data-biz_account_status="0" data-index="0"&gt;&lt;/mp-common-profile&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;</description></item><item><title>当我发现思维导图本质是「层级结构」，一个更有趣的工作流就诞生了</title><link>https://new.cupaobaidou.com/archives/1182/</link><pubDate>Mon, 18 Aug 2025 16:06:00 +0800</pubDate><guid>https://new.cupaobaidou.com/archives/1182/</guid><description>&lt;section style="line-height: 2; font-size: 15px; letter-spacing: 1px; padding: 0px 10px; box-sizing: border-box; font-style: normal; font-weight: 400; text-align: justify; color: rgb(62, 62, 62); visibility: visible;"&gt;&lt;section style="box-sizing: border-box; visibility: visible;"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;上周三很兴奋，得益于一个观察和尝试：&lt;/span&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;span leaf="" style="visibility: visible;"&gt;我用 20 分钟配合 Ai ，几乎完成了一整天的工作量。而且结果百分百比我纯人工更好。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;我的任务是：把已经做好，但未最终定稿的一本近 200 页的宣传画册，做个详细的思维导图，要细致到每页的具体内容。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;有了思维导图，可以更高效和客户调整、确认。所以这个思维导图后续还需要可编辑。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;每页至少有4 张以上照片和描述，而且我还需要把这页整体内容进行总结，200 页， 很机械、很要命，每页 2 分钟，至少需要我 400 分钟， 5 个多小时。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;能懒则懒，开始想着是否能借助 Ai 减少些工作量。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;于是，开始尝试探索：&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;1、我想要一个能够编辑的思维导图，可以用 Xmind 或者幕布&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;2、去 Xmind 和幕布，发现它们都可以导入 Markdown 文件&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; box-sizing: border-box; visibility: visible;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.7148148148148148" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; width: 657px !important; box-sizing: border-box; height: auto !important; visibility: visible !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="1" src="https://new.cupaobaidou.com/usr/uploads/2025/08/1240191165.png" _width="100%" alt="Image" data-report-img-idx="0" data-fail="0"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;3、问 Ai 知道了 Markdown &amp;nbsp;形式的纯文本可以变成思维导图！&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;4、思考我的需求： 可以把长文本多图的 pdf 文件作为输入的 Ai ，还得聪明些，遂想到了 Google 的 Gemini&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;5、喂给 Gemini 2.5 pro 全部的文件，沟通清我的需求，Gemini 在 5 分钟内给我了一版完整的 Markdown 文字（最好让它以代码块的形式回复，复制更方便）&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;6、保存 .md 文件，导入 Xmind，生成思维导图&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;7、Gemini 总结太好了，人工校对修改只用了 10分钟&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Ai 总结的 Markdown 和思维导图之间的关系：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%;text-align: left;justify-content: flex-start;display: flex;flex-flow: row;width: 100%;border-top: 1px solid rgb(62, 62, 62);border-top-left-radius: 0px;border-bottom: 1px solid rgb(62, 62, 62);border-bottom-right-radius: 0px;align-self: flex-start;box-sizing: border-box;"&gt;&lt;section style="margin: 10px 0% 0px;width: 100%;box-sizing: border-box;"&gt;&lt;section style="color: rgb(166, 91, 203);width: 100%;box-sizing: border-box;"&gt;&lt;p style="margin: 0px 0px 4px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Gemini 生成：&lt;/span&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;span leaf=""&gt;思维导图的核心是可视化的层级结构。Markdown通过标题（#）和列表（-）等语法，恰好能以纯文本形式记录这种结构。&lt;/span&gt;&lt;/p&gt;&lt;p style="margin: 0px 0px 4px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;因此，一份写好的Markdown文件，就像一份思维导图的“建筑蓝图”，能被专业软件瞬间识别并渲染成完整的、可编辑的思维导图，完美实现了“内容与形式”的分离。&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;走通之后很兴奋，我的收获是：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;1、发现思维导图的核心是可视化的层级结构后，就可以让 Ai 去「写」思维导图了&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;2、不用找专门能够生成思维导图的 Ai 工具了，也不用担心 Ai 生成的导图不能修改。任何大模型都能完成这项任务，后续只要自己导入其他工具，就能无限制编辑了！&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;3、可以充分发挥各个工具的优势！我用 Gemini 做思维导图，充分发挥了它长文本、多模态的能力——除了识别 pdf 中的文字，Gemini 甚至直接识别了每页的每张照片，生成了对应的总结描述。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;因工作的资料无法分享，我拿《纳瓦尔宝典》这本书按照这种方式做了个思维导图：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.44814814814814813" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 294.433px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="2" src="https://new.cupaobaidou.com/usr/uploads/2025/08/3495621891.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.8018518518518518" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 526.817px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="3" src="https://new.cupaobaidou.com/usr/uploads/2025/08/18888559.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.6361111111111111" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 417.925px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="4" src="https://new.cupaobaidou.com/usr/uploads/2025/08/343281776.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;这种发现很鼓舞到我！&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;但我又不是很擅长各类工具格式什么的，遂有了就向 Ai 请教了下，很有启发，分享给大家。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="3.384259259259259" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 2223.46px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="5" src="https://new.cupaobaidou.com/usr/uploads/2025/08/1579257383.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section class="mp_profile_iframe_wrp" nodeleaf=""&gt;&lt;mp-common-profile class="js_uneditable custom_select_card mp_profile_iframe mp_common_widget js_wx_tap_highlight" data-pluginname="mpprofile" data-nickname="醋泡白豆" data-alias="cpbd1121" data-from="0" data-headimg="http://mmbiz.qpic.cn/mmbiz_png/4ADhmAJPyqCfQIeWCibmq12nNoQPoovmGAkQXibbHrPEWd6dbEMeXDsHmR2FvB44AqgIod9yvnvRyOiaOAicCc7C1g/300?wx_fmt=png&amp;amp;wxfrom=19" data-signature="Friendly Ambitious Nerd设计有趣支持系统 煽风点火个人生活" data-id="MzI2OTIxMTg1Nw==" data-is_biz_ban="0" data-service_type="1" data-verify_status="0" data-origin_num="262" data-isban="0" data-biz_account_status="0" data-index="0"&gt;&lt;/mp-common-profile&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;</description></item><item><title>有了 Ai ，短时间复习 1000 本书成为可能</title><link>https://new.cupaobaidou.com/archives/1207/</link><pubDate>Thu, 14 Aug 2025 16:24:00 +0800</pubDate><guid>https://new.cupaobaidou.com/archives/1207/</guid><description>&lt;section style="line-height: 2; font-size: 15px; letter-spacing: 1px; padding: 0px 10px; box-sizing: border-box; font-style: normal; font-weight: 400; text-align: justify; color: rgb(62, 62, 62); visibility: visible;"&gt;&lt;section style="box-sizing: border-box; visibility: visible;"&gt;&lt;section nodeleaf="" style="visibility: visible;"&gt;&lt;mp-common-mpaudio class="js_editor_audio res_iframe js_uneditable custom_select_card mp_common_widget js_wx_tap_highlight mp_common_audio" data-pluginname="insertaudio" name="Listenhub：白豆告别阅读遗忘：AI+Anki&amp;amp;nbsp;三小时管理千本书" author="醋泡白豆" src="https://new.cupaobaidou.com/cgi-bin/readtemplate?t=tmpl/audio_tmpl&amp;amp;name=Listenhub%EF%BC%9A%E7%99%BD%E8%B1%86%E5%91%8A%E5%88%AB%E9%98%85%E8%AF%BB%E9%81%97%E5%BF%98%EF%BC%9AAI%2BAnki%26nbsp%3B%E4%B8%89%E5%B0%8F%E6%97%B6%E7%AE%A1%E7%90%86%E5%8D%83%E6%9C%AC%E4%B9%A6&amp;amp;play_length=" isaac2="0" low_size="3174.4" source_size="3174.4" high_size="3174.4" play_length="205000" data-trans_state="1" data-verify_state="3" voice_encode_fileid="MzI2OTIxMTg1N18yMjQ3NDg1ODcy" cover="http://wx.qlogo.cn/mmopen/CnjMzlYLf4kHeRaZvfKrFQvsg8zZewPLZp32MPzY9roIGErhLq42jibEzHlVA4gibEHpNb6WcbmGCDLamXsHH1HicpbEQVKofUB/0" style="visibility: visible; opacity: 1;" has-added-listen-later="0" show-listen-later="0" duration="205" listen_id="0"&gt;&lt;/mp-common-mpaudio&gt;&lt;/section&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;a class="normal_text_link" target="_blank" style="visibility: visible;" href="https://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485839&amp;amp;idx=1&amp;amp;sn=1579d1ae33acc451214a0d14bb47e02b&amp;amp;scene=21#wechat_redirect" textvalue="拼好 1000 张书籍封面的照片墙之后" data-itemshowtype="0" linktype="text" data-linktype="2" hasload="1"&gt;拼好 1000 张书籍封面的照片墙之后&lt;/a&gt;， &amp;nbsp;我感到些许恐慌。&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;不是因为没有读过它们。 恰恰相反，每一本都投入了数小时， 甚至数天的时间，现在却感觉至少忘记了 90%。&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;「读过很多书」和「拥有很多智慧」之间，隔着一条「遗忘」的巨大鸿沟。&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;趁着用 Ai 拼照片墙的激情余热，以及被硅谷王川「GPT 的技术，相当于可以让极少数人具有超大规模处理非结构化数据信息的能力，这个能力层层叠加爆发出的生产力，看不到上限。」这条微博的启发。&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;我设想的，一种长期复习自己读过 1000 本书的场景， 终于在几个工具配合下，几个小时内就实现了。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;设想是： &amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box; visibility: visible;"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span style="color: rgb(34, 89, 166); box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;- 在间歇性复习软件 Anki 中，制作 1000 张书籍知识卡。&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span style="color: rgb(34, 89, 166); box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;- 复习的时候，正面只给我看书的封面，强迫自己- - 回想关于这本书的一切。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span style="color: rgb(34, 89, 166); box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;- 尝试回想之后，点击按钮。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span style="color: rgb(34, 89, 166); box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;- 反面是关于书籍内容总结、作者介绍、特殊之处等等。&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(34, 89, 166); box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;还可以一键跳转得到更多这本书的信息。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box; visibility: visible;"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;就像这样：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section nodeleaf=""&gt;&lt;span style="width: 657px !important; height: 384px !important; overflow: hidden;" data-vw="653" data-vh="367.3125" height="384" width="657" data-w="1682" data-ratio="1.5574074074074074" data-cover="http%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F4ADhmAJPyqDcBKWVjjqkFI13Zqib1OMEbh8u1UhnDAD7u2z7b8tVKDJBOI77UmhuurmPqpQsjrwWTahvA81UtKQ%2F0%3Fwx_fmt%3Djpeg" data-vidtype="2" data-mpvid="wxv_4119022315210506242" data-src="https://mp.weixin.qq.com/mp/readtemplate?t=pages/video_player_tmpl&amp;amp;auto=0&amp;amp;vid=wxv_4119022315210506242" class="video_iframe rich_pages" id="js_mp_video_container_0" vid="wxv_4119022315210506242" scrolling="no"&gt;&lt;div id="page-content"&gt; &lt;!--S 全屏播放 full_screen_mv--&gt; &lt;div id="js_mpvedio_wrapper_wxv_4119022315210506242" style="position:relative;height:100%"&gt; &lt;div class="add_bg_color appmsg_video"&gt; &lt;div id="js_video_tail_panel_wxv_4119022315210506242" class="video_tail_module video_screen_half" style="display: none;"&gt; &lt;div class="video_tail_module__hd" id="js_video_tail_hd"&gt; &lt;div class="account_info_wrp"&gt; &lt;div class="profile_info_wrp js_go_profile"&gt; &lt;img class="account_avatar" src="" alt="" id="js_tail_panel_account_avatar"&gt; &lt;div class="account_name" id="js_tail_panel_account_name"&gt;&lt;/div&gt; &lt;div class="subscription_info subscription_success"&gt; &lt;div class="account_subscription_tips js_subscription_success" id="js_subscription_success" style="display: none;"&gt;已关注&lt;/div&gt; &lt;i class="account_link_icon js_profile_icon" id="js_profile_icon"&gt;&lt;/i&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="btn_account_subscription js_btn_account_subscription" id="js_btn_account_subscription" style="display: none;"&gt; Follow&lt;/div&gt; &lt;/div&gt; &lt;div class="opr_wrp"&gt; &lt;span class="opr_item_wrp js_replay" id="js_replay"&gt; &lt;i class="opr_item refresh_icon"&gt;&lt;/i&gt; &lt;span class="opr_item_text"&gt;Replay&lt;/span&gt; &lt;/span&gt; &lt;span class="opr_item_wrp share_item_wrp js_share_button" id="js_tail_share_button" style="display: none;"&gt; &lt;i class="opr_item share_icon"&gt;&lt;/i&gt; &lt;span class="opr_item_text"&gt;Share&lt;/span&gt; &lt;/span&gt; &lt;!--点赞后 加className selected--&gt; &lt;span class="opr_item_wrp like_item_wrp" id="js_tail_like_button" style="display: none;"&gt; &lt;i class="opr_item like_icon"&gt;&lt;/i&gt; &lt;span class="opr_item_text"&gt;Like&lt;/span&gt; &lt;/span&gt; &lt;!-- &lt;span class="opr_item_wrp recommend_item_wrp" id="js_tail_channel_button" style="display: none;"&gt; &lt;i class="opr_item video-logo_icon"&gt;&lt;/i&gt; &lt;span class="opr_item_text"&gt;随便看看&lt;/span&gt; &lt;/span&gt; --&gt; &lt;/div&gt; &lt;/div&gt; &lt;!-- 有拓展内容 --&gt; &lt;div class="have_expand" id="js_expand_area"&gt; &lt;/div&gt; &lt;!-- 广告内容 --&gt; &lt;div class="ad_area" id="js_tail_video_ad_area"&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="feed-wrapper"&gt;&lt;div role="dialog" aria-modal="true" aria-hidden="true" tabindex="0" class="wx_bottom_modal_wrp player_relate_video_dialog weui-half-screen-dialog_fold" hidewhensideslip="" style="visibility: hidden; display: none;"&gt;&lt;div class="weui-half-screen-dialog wx_bottom_modal" style="max-height: none;"&gt;&lt;div class="wx_bottom_modal_group_container" style="transform: translateX(calc(0% + 0px)); max-height: none;"&gt;&lt;div aria-hidden="false" class="wx_bottom_modal_group" style="left: 0%; max-height: none;"&gt;&lt;div class="weui-half-screen-dialog__hd__wrp"&gt;&lt;div class="weui-half-screen-dialog__hd"&gt;&lt;div class="weui-half-screen-dialog__hd__side"&gt;&lt;button class="weui-btn_icon weui-wa-hotarea"&gt;Close&lt;i class="weui-icon-half-screen-close"&gt;&lt;/i&gt;&lt;/button&gt;&lt;/div&gt;&lt;div class="weui-half-screen-dialog__hd__main"&gt;&lt;strong class="weui-half-screen-dialog__title"&gt;观看更多&lt;/strong&gt;&lt;/div&gt;&lt;div class="weui-half-screen-dialog__hd__side"&gt;&lt;!----&gt;&lt;button class="weui-btn_icon weui-wa-hotarea" style="display: none;"&gt;更多&lt;i class="weui-icon-more"&gt;&lt;/i&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div id="contentAreaWrp" class="weui-half-screen-dialog__bd"&gt;&lt;div class="weui-loadmore" style="display: none;"&gt;&lt;i class="weui-loading"&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class="wx_bottom_modal_msg_wrp" style="display: none;"&gt;&lt;div class="wx_bottom_modal_msg"&gt;&lt;i class="weui-loading"&gt;&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="weui-loadmore weui-loadmore_line weui-loadmore_dot" style="display: none;"&gt;&lt;span class="weui-loadmore__tips"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=""&gt;&lt;ul id="js_player_relate_video_list" class="player_relate_video_list"&gt;&lt;/ul&gt;&lt;div class="weui-loadmore weui-loadmore_default weui-loadmore_line weui-loadmore_dot player_video_list_end_line"&gt;&lt;span class="weui-loadmore__tips"&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="weui-loadmore" style="display: none;"&gt;&lt;i class="weui-loading"&gt;&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;!----&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="wx_bottom_modal_mask_fixed"&gt;&lt;/div&gt;&lt;div class="weui-mask wx_bottom_modal_mask" style="--opacity: 1; display: none;"&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="js_video_fullscreen_profile video_full-screen__head video_full-screen__head_fixed" style="transform: translate3d(0px, 0px, 0px); display: none;"&gt;&lt;div class="video_full-screen__head__inner"&gt;&lt;div class="video_full-screen__head__body"&gt;&lt;div class="js_video_fullscreen_profile_exit video_full-screen__head__item"&gt;&lt;div class="video_full-screen__article-title"&gt;&lt;button class="weui-wa-hotarea js_video_fullscreen_profile_exit reset_btn video_close_fullscreen_btn"&gt;&lt;i class="weui-icon-close"&gt;退出全屏&lt;/i&gt;&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="video_full-screen__head__ft"&gt;&lt;a aria-label="更多操作" role="button" href="javascript:;" class="video_menu_more js_video_fullscreen_menu_more weui-wa-hotarea_before"&gt;&lt;i class="weui-icon-outlined-more"&gt;&lt;/i&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="infinity-list__wrapper" style="height: 368px;"&gt;&lt;div class="" style="height: 368px; overflow: visible;"&gt;&lt;div data-key="wxv_4119022315210506242" infinity-idx="0" class="infinity-list__page destory-enter-to" style="height: 368px; position: absolute; top: 0px; opacity: 1;"&gt;&lt;div data-v-8a543676="" class="mp-video-player" style="height: 100%;"&gt;&lt;div data-v-e0d91df3="" data-v-8a543676="" id="js_mpvedio_1755677853242_535357334999" class="js_mpvedio page_video_wrapper"&gt;&lt;div data-v-e0d91df3="" class="js_page_video page_video ratio_primary align_upper_center page_video_without-control page_video_skin-normal" style="display: block; width: 100%; height: 368px;"&gt;&lt;svg data-v-e0d91df3="" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2" width="4px" height="4px" class="border_filler border_filler_lefttop"&gt;&lt;path data-v-e0d91df3="" d="M1.85.005A2 2 0 000 2V0h2z" fill="#ffffff" fill-rule="evenodd"&gt;&lt;/path&gt;&lt;/svg&gt;&lt;svg data-v-e0d91df3="" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2" width="4px" height="4px" class="border_filler border_filler_righttop"&gt;&lt;path data-v-e0d91df3="" d="M1.85.005A2 2 0 000 2V0h2z" fill="#ffffff" fill-rule="evenodd"&gt;&lt;/path&gt;&lt;/svg&gt;&lt;svg data-v-e0d91df3="" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2" width="4px" height="4px" class="border_filler border_filler_rightbot"&gt;&lt;path data-v-e0d91df3="" d="M1.85.005A2 2 0 000 2V0h2z" fill="#ffffff" fill-rule="evenodd"&gt;&lt;/path&gt;&lt;/svg&gt;&lt;svg data-v-e0d91df3="" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2" width="4px" height="4px" class="border_filler border_filler_leftbot"&gt;&lt;path data-v-e0d91df3="" d="M1.85.005A2 2 0 000 2V0h2z" fill="#ffffff" fill-rule="evenodd"&gt;&lt;/path&gt;&lt;/svg&gt;&lt;div data-v-e0d91df3="" class="js_video_fullscreen_profile video_full-screen__head" style="display: none;"&gt;&lt;div data-v-e0d91df3="" class="video_full-screen__head__inner"&gt;&lt;div data-v-e0d91df3="" class="video_full-screen__head__body"&gt;&lt;div data-v-e0d91df3="" class="js_video_fullscreen_profile_exit video_full-screen__head__item"&gt;&lt;div data-v-e0d91df3="" class="video_full-screen__article-title"&gt;&lt;button data-v-e0d91df3="" class="weui-wa-hotarea js_video_fullscreen_profile_exit reset_btn video_close_fullscreen_btn" style="display: none;"&gt;&lt;i data-v-e0d91df3="" class="weui-icon-back-arrow"&gt;切换到竖屏全屏&lt;/i&gt;&lt;/button&gt;&lt;button data-v-e0d91df3="" class="weui-wa-hotarea js_video_fullscreen_profile_exit reset_btn video_close_fullscreen_btn" style="display: none;"&gt;&lt;i data-v-e0d91df3="" class="weui-icon-close"&gt;退出全屏&lt;/i&gt;&lt;/button&gt;&lt;div data-v-e0d91df3="" role="button" class="video_full-screen__account" style="display: none;"&gt;&lt;div data-v-e0d91df3="" class="video_full-screen__account-info"&gt;&lt;span data-v-e0d91df3="" class="weui-wa-hotarea video_full-screen__account-avatar" style="background: url(&amp;quot;http://mmbiz.qpic.cn/mmbiz_png/4ADhmAJPyqCfQIeWCibmq12nNoQPoovmGAkQXibbHrPEWd6dbEMeXDsHmR2FvB44AqgIod9yvnvRyOiaOAicCc7C1g/0?wx_fmt=png&amp;quot;) center center / cover no-repeat;"&gt;&lt;/span&gt;&lt;span data-v-e0d91df3="" class="weui-wa-hotarea video_full-screen__account-name"&gt;醋泡白豆&lt;/span&gt;&lt;button data-v-e0d91df3="" type="button" class="reset_btn video_profile_follow_btn weui-wa-hotarea" style="display: none;"&gt;已关注&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="video_full-screen__head__ft"&gt;&lt;a data-v-e0d91df3="" aria-label="更多操作" role="button" href="javascript:;" class="video_menu_more js_video_fullscreen_menu_more weui-wa-hotarea_before" style="display: none;"&gt;&lt;i data-v-e0d91df3="" class="weui-icon-outlined-more"&gt;&lt;/i&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="js_share_btn_contain top_screen_opr video_share_opr" style="display: none;"&gt;&lt;div data-v-e0d91df3="" class="wx_video_share_area"&gt;&lt;button data-v-e0d91df3="" type="button" class="js_share_btn wx_video_share_btn weui-wa-hotarea"&gt;Share Video&lt;/button&gt;&lt;/div&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" role="alert" aria-label="Loading..." class="wrp_loading js_loading" style="display: none;"&gt;&lt;span data-v-e0d91df3="" class="weui-primary-loading weui-primary-loading_transparent"&gt;&lt;span data-v-e0d91df3="" class="weui-primary-loading__dot"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="poster_cover" style="background-image: url(&amp;quot;http://mmbiz.qpic.cn/sz_mmbiz_jpg/4ADhmAJPyqDcBKWVjjqkFI13Zqib1OMEbh8u1UhnDAD7u2z7b8tVKDJBOI77UmhuurmPqpQsjrwWTahvA81UtKQ/640?wx_fmt=jpeg&amp;amp;wxfrom=16&amp;quot;); background-size: contain;"&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="full_screen_opr wx_video_play_opr" style=""&gt;&lt;button data-v-e0d91df3="" type="button" class="mid_play_box reset_btn"&gt;&lt;i data-v-e0d91df3="" aria-label="播放视频" class="pic_mid_play"&gt;&lt;/i&gt;&lt;span data-v-e0d91df3="" class="aria_hidden_abs"&gt;，时长&lt;/span&gt;&lt;span data-v-e0d91df3="" class="video_length"&gt;00:31&lt;/span&gt;&lt;/button&gt;&lt;/div&gt;&lt;!----&gt;&lt;div data-v-e0d91df3="" role="alert" class="top_screen_opr wx_video_flow_wrap" style="display: none;"&gt;&lt;div data-v-e0d91df3="" class="wx_video_flow"&gt;&lt;p data-v-e0d91df3="" class="wx_video_flow_tips"&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="mid_opr fast_pre_next" style="display: none;"&gt;&lt;div data-v-e0d91df3="" class="video_processor_bar"&gt;&lt;div data-v-e0d91df3="" class="processor_bar_inner js_forward_bar" style="width: 0%;"&gt;&lt;/div&gt;&lt;/div&gt;&lt;p data-v-e0d91df3="" class="video_length"&gt;&lt;span data-v-e0d91df3="" class="played_time js_forward_play_time"&gt;0&lt;/span&gt;&lt;span data-v-e0d91df3="" class="js_forward_seperator"&gt;/&lt;/span&gt;&lt;span data-v-e0d91df3="" class="total_time js_forward_total_time"&gt;0&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" role="alert" class="wx_video_progress_msg full_screen_opr" style="display: none;"&gt;&lt;div data-v-e0d91df3="" class="wx_video_progress_msg_inner"&gt;&lt;span data-v-e0d91df3="" class="wx_video_progress_current"&gt;00:00&lt;/span&gt;&lt;span data-v-e0d91df3="" class="wx_video_progress_gap"&gt;/&lt;/span&gt;&lt;span data-v-e0d91df3="" class="wx_video_progress_total"&gt;00:31&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="video_fullscreen_mask" style="display: none;"&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="video_screen_mode_switch" style="bottom: calc(50% - 521.422px); display: none;"&gt;&lt;button data-v-e0d91df3="" type="button" class="reset_btn video_screen_mode_switch_btn weui-wa-hotarea"&gt; 切换到横屏模式 &lt;/button&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="full_screen_opr wx_video_pause_full_mod" style="display: none;"&gt;&lt;button data-v-e0d91df3="" type="button" class="reset_btn wx_video_pause_full_btn"&gt;继续播放&lt;/button&gt;&lt;/div&gt;&lt;input data-v-e0d91df3="" type="checkbox" title="显示工具栏" class="aria_hidden_abs" aria-hidden="true"&gt;&lt;div data-v-e0d91df3="" class="js_control video_opr video_opr_normal padding_play_bar"&gt;&lt;div data-v-e0d91df3="" class="opr_inner"&gt;&lt;div data-v-e0d91df3="" class="opr_inner_fl"&gt;&lt;div data-v-e0d91df3="" class="js_play_bar_wrapper wrp_play_bar wrp_play_bar_hide_speed-dot" style="display: none;"&gt;&lt;div data-v-e0d91df3="" class="js_progress_bar wrp_progress" style="padding-top: 6px; padding-bottom: 0px;"&gt;&lt;div data-v-e0d91df3="" class="progress_bar"&gt;&lt;div data-v-e0d91df3="" class="background_bar"&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" role="option" aria-labelledby="ariaPlayedCurrent" title="按住可调" class="js_played_bar played_bar" style="width: 0%;"&gt;&lt;span data-v-e0d91df3="" id="ariaPlayedCurrent" class="aria_hidden_abs"&gt;进度条，百分之0&lt;/span&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="js_buffer_bar buffer_bar" style="width: 0%;"&gt;&lt;/div&gt;&lt;!----&gt;&lt;div data-v-e0d91df3="" class="weui-wa-hotarea js_played_speed_cnt wrp_speed_dot" style="left: 0%;"&gt;&lt;i data-v-e0d91df3="" class="speed_dot"&gt;&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="js_control video_opr video_opr_sns" style="bottom: 0px; display: none;"&gt;&lt;div data-v-e0d91df3="" class="opr_inner"&gt;&lt;div data-v-e0d91df3="" class="opr_inner_fl"&gt;&lt;div data-v-e0d91df3="" class="js_switch weui-wa-hotarea switch switch_on"&gt;&lt;a data-v-e0d91df3="" href="javascript:;" role="button" class="btn_opr"&gt;Play&lt;/a&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" role="option"&gt;&lt;div data-v-e0d91df3="" class="played_time js_now_play_time"&gt;00:00&lt;/div&gt;&lt;span data-v-e0d91df3=""&gt;/&lt;/span&gt;&lt;div data-v-e0d91df3="" class="total_time js_total_time"&gt;00:31&lt;/div&gt;&lt;/div&gt;&lt;!----&gt;&lt;div data-v-e0d91df3="" role="option" class="total_time js_total_time" style="display: none;"&gt;00:31&lt;/div&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="opr_inner_fr"&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;div data-v-e0d91df3="" role="button" class="weui-wa-hotarea js_full_screen_control screenSize_control full"&gt;&lt;i data-v-e0d91df3="" class="icon_control"&gt;全屏&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="js-toast weui-toast weui-toast_text" role="alert" style="display: none;"&gt;&lt;p class="weui-toast__content"&gt;&lt;/p&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" role="alert" class="full_screen_opr video_quick_play_context" style="display: none;"&gt;&lt;div data-v-e0d91df3="" class="video_quick_play_msg"&gt;&lt;i data-v-e0d91df3="" class="icon_video_quick_play"&gt;&lt;/i&gt; 倍速播放中 &lt;/div&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="js_sub_setting video_full-screen__footer video_full-screen__footer__sub-setting hide"&gt;&lt;div data-v-e0d91df3="" class="video_full-screen__sub-setting video_full-screen__sub-setting__speed js_playback_mode_select" style="display: none;"&gt;&lt;a data-v-e0d91df3="" href="javascript:;" class="video_full-screen__sub-setting__item js_playback_0"&gt; 0.5倍 &lt;/a&gt;&lt;a data-v-e0d91df3="" href="javascript:;" class="video_full-screen__sub-setting__item js_playback_1"&gt; 0.75倍 &lt;/a&gt;&lt;a data-v-e0d91df3="" href="javascript:;" class="video_full-screen__sub-setting__item current js_playback_2"&gt; 1.0倍 &lt;/a&gt;&lt;a data-v-e0d91df3="" href="javascript:;" class="video_full-screen__sub-setting__item js_playback_3"&gt; 1.5倍 &lt;/a&gt;&lt;a data-v-e0d91df3="" href="javascript:;" class="video_full-screen__sub-setting__item js_playback_4"&gt; 2.0倍 &lt;/a&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="video_full-screen__sub-setting video_full-screen__sub-setting__ratio js_play_mode_select" style="display: none;"&gt;&lt;a data-v-e0d91df3="" href="javascript:;" class="video_full-screen__sub-setting__item current js_resolution_0"&gt; 超清 &lt;/a&gt;&lt;a data-v-e0d91df3="" href="javascript:;" class="video_full-screen__sub-setting__item js_resolution_1"&gt; 流畅 &lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="js_inner inner not_fullscreen"&gt;&lt;div data-v-e0d91df3="" class="js_video_poster video_poster" style="display: none;"&gt;&lt;div data-v-e0d91df3="" class="video_mask"&gt;&lt;/div&gt;&lt;video data-v-e0d91df3="" src="https://mpvideo.qpic.cn/0bc3qmbeuaac54ai3om6z5uffa6djkbqesqa.f10002.mp4?dis_k=8f39f341369fc05b1b3060688a17b032&amp;amp;dis_t=1755677470&amp;amp;play_scene=10120&amp;amp;auth_info=Y7Gupa53RQFmh7jw4wN1aG4QAXZtEVxEcHshCTBMD25bZDc7VnsYbgQ/OWwUIGJSZA==&amp;amp;auth_key=527971ab049fd2ff6b7b44fd541e5377&amp;amp;vid=wxv_4119022315210506242&amp;amp;format_id=10002&amp;amp;support_redirect=0&amp;amp;mmversion=false" poster="http://mmbiz.qpic.cn/sz_mmbiz_jpg/4ADhmAJPyqDcBKWVjjqkFI13Zqib1OMEbh8u1UhnDAD7u2z7b8tVKDJBOI77UmhuurmPqpQsjrwWTahvA81UtKQ/0?wx_fmt=jpeg&amp;amp;wxfrom=16" webkit-playsinline="isiPhoneShowPlaysinline" playsinline="isiPhoneShowPlaysinline" preload="metadata" crossorigin="anonymous" controlslist="nodownload" class=""&gt; Your browser does not support video tags &lt;/video&gt;&lt;/div&gt;&lt;div data-v-8a543676="" data-v-e0d91df3="" class="video_poster__info__play" style="display: none;"&gt;&lt;i data-v-8a543676="" data-v-e0d91df3="" class=""&gt;&lt;/i&gt;&lt;/div&gt;&lt;div data-v-8a543676="" data-v-e0d91df3="" class="video_poster__info" style="display: none;"&gt;&lt;p data-v-8a543676="" data-v-e0d91df3="" class="video_poster__info__title" style="font-size: 17px;"&gt;继续观看&lt;/p&gt;&lt;p data-v-8a543676="" data-v-e0d91df3="" class="video_poster__info__desc" style="font-size: 12px;"&gt; 有了 Ai ，短时间复习 1000 本书成为可能 &lt;/p&gt;&lt;/div&gt;&lt;div data-v-8a543676="" data-v-e0d91df3="" class="video_poster__info__mask" style="width: 100%; display: none;"&gt;&lt;/div&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="video_profile_area" style="display: none;"&gt;&lt;div data-v-e0d91df3=""&gt;&lt;button data-v-8a543676="" class="reset_btn video_profile_relate_video_btn js_wx_tap_highlight wx_tap_link" data-v-e0d91df3="" style="display: none;"&gt;观看更多&lt;i class="weui-icon-filled-arrow video_profile_relate_video_btn_arrow"&gt;&lt;/i&gt;&lt;/button&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" role="link" tabindex="0" style="width: fit-content; max-width: 100%;"&gt;&lt;div data-v-e0d91df3="" role="option" class="weui-wa-hotarea video_profile_desc_wrp"&gt;&lt;div data-v-e0d91df3="" class="icon_appmsg_tag_wrp" style="display: none;"&gt;&lt;div data-v-e0d91df3="" class="icon_appmsg_tag"&gt;转载&lt;/div&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="weui-hidden_abs"&gt;,&lt;/div&gt;&lt;div data-v-e0d91df3="" class="video_profile_desc"&gt;有了 Ai ，短时间复习 1000 本书成为可能&lt;/div&gt;&lt;i data-v-e0d91df3="" class="weui-icon-outlined-arrow video_profile_desc_arrow"&gt;&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="video_profile_wrp weui-flex"&gt;&lt;div data-v-e0d91df3="" class="video_profile weui-flex weui-flex__item"&gt;&lt;span data-v-e0d91df3="" class="video_profile_avatar weui-wa-hotarea" style="background: url(&amp;quot;http://mmbiz.qpic.cn/mmbiz_png/4ADhmAJPyqCfQIeWCibmq12nNoQPoovmGAkQXibbHrPEWd6dbEMeXDsHmR2FvB44AqgIod9yvnvRyOiaOAicCc7C1g/0?wx_fmt=png&amp;quot;) center center / cover no-repeat;"&gt;&lt;/span&gt;&lt;span data-v-e0d91df3="" class="video_profile_nickname weui-wa-hotarea"&gt;醋泡白豆&lt;/span&gt;&lt;button data-v-e0d91df3="" type="button" class="reset_btn video_profile_follow_btn weui-wa-hotarea" style="display: none;"&gt;已关注&lt;/button&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" class="video_sns_context" style="display: none;"&gt;&lt;button data-v-e0d91df3="" type="button" class="video_sns_btn video_sns_btn_share" style="display: none;"&gt;&lt;span data-v-e0d91df3="" class="video_sns_num"&gt;Share&lt;/span&gt;&lt;/button&gt;&lt;button data-v-e0d91df3="" type="button" title="" class="video_sns_btn video_sns_btn_praise"&gt;&lt;span data-v-e0d91df3="" class="video_sns_num"&gt;点赞&lt;/span&gt;&lt;/button&gt;&lt;button data-v-e0d91df3="" type="button" title="" class="video_sns_btn video_sns_btn_love"&gt;&lt;span data-v-e0d91df3="" class="video_sns_num"&gt;Wow&lt;/span&gt;&lt;/button&gt;&lt;/div&gt;&lt;div data-v-e0d91df3="" role="alert" class="like_comment_wrp" style="display: none;"&gt;&lt;div data-v-e0d91df3="" class="like_comment_inner"&gt;&lt;div data-v-e0d91df3="" class="like_comment_bd"&gt;&lt;div data-v-e0d91df3="" class="like_comment_tips"&gt;&lt;i data-v-e0d91df3="" class="weui-icon-success"&gt;&lt;/i&gt;&lt;i data-v-e0d91df3="" class="icon-success-primary"&gt;&lt;/i&gt;Added to Top Stories&lt;a data-v-e0d91df3="" href="javascript:;" class="like_comment_share_link weui-wa-hotarea_before"&gt;Enter comment&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div data-v-8a543676="" style="display: none;"&gt;&lt;div data-v-8a543676="" class="weui-mask_transparent"&gt;&lt;/div&gt;&lt;div data-v-8a543676="" class="weui-toast" style="top: 45%; position: absolute;"&gt;&lt;i data-v-8a543676="" class="weui-icon-success-no-circle weui-icon_toast"&gt;&lt;/i&gt;&lt;p data-v-8a543676="" class="weui-toast__content"&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div data-v-8a543676="" class="fullscreen-screenshot__layer" style="background-color: rgb(0, 0, 0); display: none;"&gt;&lt;/div&gt;&lt;div data-v-8a543676="" class="fullscreen-screenshot__layer" style="z-index: -1; background-image: url(&amp;quot;&amp;quot;); display: none;"&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;audio loop="loop" preload="auto" style="display: none;"&gt;&lt;source src="https://res.wx.qq.com/voice/getvoice?mediaid=MzA3MzA0MTAyNF8xMDAwMDI3Njk="&gt;&lt;/audio&gt;&lt;!----&gt;&lt;/div&gt; &lt;/div&gt; &lt;!--E 视频播放器--&gt; &lt;!-- S 视频社交--&gt; &lt;div id="bottom_bar" class="interact_video" style="display:none;height: 35px;"&gt; &lt;div class="inter_opr"&gt; &lt;a id="video_detail_btn" href="javascript:;" target="_blank" class="access_original"&gt; Video Details &lt;/a&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt;&lt;/span&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;没有合适的工具，这个工作量太大了，至少需要几周，筋疲力竭，也不一定做完。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;有趣的是，这些工作，我在当天用不到三小时全部完成了。 （2025年2月15日）&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;简单分享下思路给大家：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;span textstyle="" style="font-weight: bold;"&gt;1、用飞书多维表格做「加工车间」，表格的一行是一本书的信息，使用其内嵌的 Deepseek 批量生成我需要的字段。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;span textstyle="" style="font-weight: bold;"&gt;2、下载为 CSV 文件，导入到 Anki ，并在 Ai 帮助下写个 Anki 卡片模板。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;span textstyle="" style="font-weight: bold;"&gt;3、 在 Ai 帮助下，为每张书籍卡嵌入对应的秘塔搜索链接和豆瓣页链接。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;1000本书籍基础信息录入飞书，使用了&lt;a class="normal_text_link" target="_blank" style="" href="https://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485839&amp;amp;idx=1&amp;amp;sn=1579d1ae33acc451214a0d14bb47e02b&amp;amp;scene=21#wechat_redirect" textvalue="拼 1000 书籍墙" data-itemshowtype="0" linktype="text" data-linktype="2" hasload="1"&gt;拼 1000 书籍墙&lt;/a&gt;这篇提到的工具，不到 5 分钟。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;嵌入 Deepseek &amp;nbsp;的飞书多维表格， 把 Ai 从线性的你一句Ai回一句的聊天工具，变成了表格的「自动化函数」，如图带有颜色的列，能够按照输入的提示词，自动处理整列的所有内容。&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;这个步骤，感受到了作为普通人，也能够大规模处理非结构性信息的舒爽。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;它还直接消灭了「复制粘贴」这个搬运数据的过程，生成的内容直接在表格中。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.512962962962963" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; width: 657px !important; box-sizing: border-box; height: auto !important; visibility: visible !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="1" src="https://new.cupaobaidou.com/usr/uploads/2025/08/2329045489.png" _width="100%" alt="Image" data-report-img-idx="0" data-fail="0"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 12px;color: rgb(149, 153, 157);box-sizing: border-box;"&gt;&lt;p style="text-align: center;white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;1000booksToAnki 纯色列均为 Ai 生成&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;这个飞书表格的共享地址：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;https://auwwgc2fnl.feishu.cn/base/CIDcbntpla65mssQX3bckh6gn0b?from=from_copylink&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.6811594202898551" data-s="300,640" data-w="552" style="vertical-align: middle; max-width: 100%; width: 552px !important; box-sizing: border-box; height: auto !important; visibility: visible !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="2" src="https://new.cupaobaidou.com/usr/uploads/2025/08/1939399821.png" _width="100%" alt="Image" data-report-img-idx="1" data-fail="0"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Anki知识卡展示：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="text-align: center;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.9722222222222222" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100002216" data-original-style="null" data-index="3" src="https://new.cupaobaidou.com/usr/uploads/2025/08/402328712.png" _width="677px" style="height: auto !important; visibility: visible !important; width: 657px !important;" alt="Image" data-report-img-idx="2" data-fail="0"&gt;&lt;/section&gt;&lt;section style="text-align: center;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.9722222222222222" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100002217" data-original-style="null" data-index="4" src="https://new.cupaobaidou.com/usr/uploads/2025/08/3114733767.png" _width="677px" style="height: auto !important; visibility: visible !important; width: 657px !important;" alt="Image" data-report-img-idx="3" data-fail="0"&gt;&lt;/section&gt;&lt;section style="text-align: center;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.9722222222222222" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100002218" data-original-style="null" data-index="5" src="https://new.cupaobaidou.com/usr/uploads/2025/08/1726317801.png" _width="677px" style="height: auto !important; visibility: visible !important; width: 657px !important;" alt="Image" data-report-img-idx="4" data-fail="0"&gt;&lt;/section&gt;&lt;section style="text-align: center;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.9722222222222222" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100002219" data-original-style="null" data-index="6" src="https://new.cupaobaidou.com/usr/uploads/2025/08/1406248008.png" _width="677px" style="height: auto !important; visibility: visible !important; width: 657px !important;" alt="Image" data-report-img-idx="5" data-fail="0"&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Anki 卡片本质上是个网页， 网页就可以嵌入各种链接；&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;因为 Ai 生成的内容不完全准确，我在迟疑的时候，想要快速地验证，想要点击一下链接就出现这本书相关内容。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;这时候之前的一个观察就帮到了忙： 我发现秘塔Ai搜索后， 地址栏显示的是：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="color: rgb(173, 46, 46);box-sizing: border-box;"&gt;&lt;span leaf=""&gt;固定网址 + ?q=搜索关键词&lt;/span&gt;&lt;/span&gt;&lt;span leaf=""&gt;&amp;nbsp;。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;相当于每个关键词的搜索链接是固定的！&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;于是我就让 Ai 实现了点一下链接，就跳转到用秘塔Ai搜索这本书的网页。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="text-align: center;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.6240740740740741" data-s="300,640" data-type="png" data-w="1080" type="block" data-imgfileid="100002220" data-original-style="null" data-index="7" src="https://new.cupaobaidou.com/usr/uploads/2025/08/1018326025.png" _width="677px" style="height: auto !important; visibility: visible !important; width: 656.992px !important;" alt="Image" data-report-img-idx="6" data-fail="0"&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;制作完 1000 张知识卡后，就可以长期随时随地复习了。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;当然这只能作为一个知识系统的补充，更多应该去主动创作、更及时实践。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;（Anki手机版显示）&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="text-align: center;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img" data-ratio="2.2222222222222223" data-s="300,640" data-w="1080" type="block" data-original-style="null" data-index="8" src="https://new.cupaobaidou.com/usr/uploads/2025/08/4272433795.png" _width="677px" style="height: auto !important; visibility: visible !important; width: 657px !important;" alt="Image" data-report-img-idx="7" data-fail="0"&gt;&lt;/section&gt;&lt;section style="text-align: center;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img" data-ratio="2.2222222222222223" data-s="300,640" data-w="1080" style="width: 657px !important; height: auto !important; visibility: visible !important;" type="block" data-backw="558" data-backh="1240" data-original-style="width:100%;" data-index="9" src="https://new.cupaobaidou.com/usr/uploads/2025/08/31322412.png" _width="100%" alt="Image" data-report-img-idx="8" data-fail="0"&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;1000本?系列：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;a class="normal_text_link" target="_blank" style="" href="https://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485112&amp;amp;idx=1&amp;amp;sn=26d42783e0d4ba9ab29dd9f431d21234&amp;amp;scene=21#wechat_redirect" textvalue="《读完1000本书之后，我有哪些收获？》" data-itemshowtype="0" linktype="text" data-linktype="2" hasload="1"&gt;《读完1000本书之后，我有哪些收获？》&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;a class="normal_text_link" target="_blank" style="" href="https://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485839&amp;amp;idx=1&amp;amp;sn=1579d1ae33acc451214a0d14bb47e02b&amp;amp;scene=21#wechat_redirect" textvalue="《把1000本书的封面拼成一张照片墙》" data-itemshowtype="0" linktype="text" data-linktype="2" hasload="1"&gt;《把1000本书的封面拼成一张照片墙》&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section class="channels_iframe_wrp" nodeleaf=""&gt;&lt;mp-common-videosnap class="js_uneditable custom_select_card channels_iframe videosnap_video_iframe mp_common_widget js_wechannel_video_card js_wx_tap_highlight" data-pluginname="mpvideosnap" data-url="https://findermp.video.qq.com/251/20304/stodownload?encfilekey=rjD5jyTuFrIpZ2ibE8T7YmwgiahniaXswqzyicryum5HLxUicdjFyzIU0nMFwmouCz5NHsia0L6njjvv1jyLQMhxPoLILSiaUibNVyIBneULFsWTMtTkAACken5wAQ&amp;amp;token=ic1n0xDG6aw97Tj5IAz3FLLCessmwAyiaVQTeYsGFYo853LSjamicm8bAhedkibfl8j8W4uuuaHqnYKtkl0PSG4r2DoAAuRQRib3wKtcFKYEJldsrAhRDtMXqvAsTfMJcxaUpo1tAQmk6Qaw74XmgTY8vVMNZiaAXadbegVhAXwOyrUDk&amp;amp;idx=1&amp;amp;dotrans=0&amp;amp;hy=SH&amp;amp;m=&amp;amp;scene=2&amp;amp;uzid=1" data-headimgurl="http://wx.qlogo.cn/finderhead/PiajxSqBRaEIU2Bv2rAIxHpknwYL0JIPicpbBwlmsYvSmIaW75T7dVog/0" data-username="v2_060000231003b20faec8c5e4881ec6dcc803ee33b077c3bbd58c31f7005bcdf5df9b1f09e7dc@finder" data-nickname="醋泡白豆" data-desc="#NotebookLM&#13;&#10;#ai&#13;&#10;#读书&#13;&#10;用 Google 的 NotebookLM 把这篇《读完 1000 本书之后，我有哪些收获？》https://cupaobaidou.com/archives/887/ 做成了对话播客&#13;&#10;》&#13;&#10;" data-nonceid="11417478970371123151" data-width="1920" data-height="1080" data-type="video" data-id="export/UzFfAgtgekIEAQAAAAAAgqYNoNkG5QAAAAstQy6ubaLX4KHWvLEZgBPEw4FEGj0RItSKzNPgMIsTWLudshskOaR_k9IfSC8Z" data-parentwidth="657" data-maxwidth="677" data-index="0" data-flag="0" data-authiconurl="" data-feedfullcoverurl="https://findermp.video.qq.com/251/20304/stodownload?encfilekey=rjD5jyTuFrIpZ2ibE8T7YmwgiahniaXswqzKv6gNxJXibWw8wcIPjroicjX6IY4I2mkMPrweR2YnH6fmyHqvR6hpDhqNsZxyeln3NAXF5kpa2gmDiaANLlIughKg&amp;amp;token=2lt8WBSnjTnpPXnmmHIZTUSJJMMBxlLmRrN3pPsv7mia0JoOZ9N73g4rmC98dexYfibEaCr6JbFF8I7j7b07SKibMmL13Evo43D71F24iaz4OzQqeaYU5AJUqBlXuGreYiaSdBrQP5T2ZeValABz4CsCjFiayHOw2R1qI8zPGb8laOicLc&amp;amp;idx=1&amp;amp;dotrans=0&amp;amp;hy=SH&amp;amp;m=&amp;amp;scene=2&amp;amp;uzid=2" data-feedthumburl="https://findermp.video.qq.com/251/20304/stodownload?encfilekey=rjD5jyTuFrIpZ2ibE8T7YmwgiahniaXswqzJUVmic1k558X6bQ2S1MLOV9DPxAqsUWdqQGoMZIYzvR3Ad3xLA57u9d0lgP1XYgE7r0zlPKp4hhJEtoaVIAvxbQ&amp;amp;token=2lt8WBSnjTnpPXnmmHIZTRIQBZg5m7Y3sab062icqnoOeA8ia9BNsw1IvVNJHS3gRMaYadNptz5FuReN1DiaiajhmYNDfb9oNlVkXI3luZWIbFkIGwy0qNTWFD0SR44iacwFyDz3MYybXbuKDVjCI2BVeXULXX7FPjOqbmysGnfkALV8&amp;amp;idx=1&amp;amp;bizid=1023&amp;amp;dotrans=0&amp;amp;hy=SH&amp;amp;m=&amp;amp;uzid=1" data-feedcoverurl="https://findermp.video.qq.com/251/20304/stodownload?encfilekey=rjD5jyTuFrIpZ2ibE8T7YmwgiahniaXswqzyicryum5HLxUicdjFyzIU0nMFwmouCz5NHsia0L6njjvv1jyLQMhxPoLILSiaUibNVyIBneULFsWTMtTkAACken5wAQ&amp;amp;token=ic1n0xDG6aw97Tj5IAz3FLLCessmwAyiaVQTeYsGFYo853LSjamicm8bAhedkibfl8j8W4uuuaHqnYKtkl0PSG4r2DoAAuRQRib3wKtcFKYEJldsrAhRDtMXqvAsTfMJcxaUpo1tAQmk6Qaw74XmgTY8vVMNZiaAXadbegVhAXwOyrUDk&amp;amp;idx=1&amp;amp;dotrans=0&amp;amp;hy=SH&amp;amp;m=&amp;amp;scene=2&amp;amp;uzid=1" data-isnews="0" data-likenum="9"&gt;&lt;/mp-common-videosnap&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section class="mp_profile_iframe_wrp" nodeleaf=""&gt;&lt;mp-common-profile class="js_uneditable custom_select_card mp_profile_iframe mp_common_widget js_wx_tap_highlight" data-pluginname="mpprofile" data-nickname="醋泡白豆" data-alias="cpbd1121" data-from="0" data-headimg="http://mmbiz.qpic.cn/mmbiz_png/4ADhmAJPyqCfQIeWCibmq12nNoQPoovmGAkQXibbHrPEWd6dbEMeXDsHmR2FvB44AqgIod9yvnvRyOiaOAicCc7C1g/300?wx_fmt=png&amp;amp;wxfrom=19" data-signature="Friendly Ambitious Nerd设计有趣支持系统 煽风点火个人生活" data-id="MzI2OTIxMTg1Nw==" data-is_biz_ban="0" data-service_type="1" data-verify_status="0" data-origin_num="262" data-isban="0" data-biz_account_status="0" data-index="0"&gt;&lt;/mp-common-profile&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;</description></item><item><title>独家问卷： 只给自己填的个人追踪工具</title><link>https://new.cupaobaidou.com/archives/1154/</link><pubDate>Tue, 17 Jun 2025 10:09:00 +0800</pubDate><guid>https://new.cupaobaidou.com/archives/1154/</guid><description>&lt;section style="line-height: 2; font-size: 15px; letter-spacing: 1px; padding: 0px 10px; box-sizing: border-box; font-style: normal; font-weight: 400; text-align: justify; color: rgb(62, 62, 62); visibility: visible;"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="margin-top: 10px; margin-bottom: 10px; text-align: center; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="display: inline-block; vertical-align: top; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="width: 100%; height: 10px; margin-bottom: -6px; background-color: rgb(226, 246, 253); box-sizing: border-box; visibility: visible;"&gt;&lt;svg viewBox="0 0 1 1" style="float: left; line-height: 0; width: 0px; vertical-align: top; visibility: visible;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;section style="line-height: 1em; padding-left: 2px; padding-right: 2px; box-sizing: border-box; visibility: visible;"&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;strong style="box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;问卷是一种对话&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="box-sizing: border-box; visibility: visible;"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;电子问卷或表单（Forms）， &amp;nbsp;一般用来向大家收集信息，设置好问题，让不同人填写。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;比如我最早接触的问卷星、报名表单，都是如此。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;如果查看后台，就会发现收集结果会自动汇集成一张表格，列为各项问题，行是不同的人。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;表格结构性强，后续无论是分析数据、做图表展示都非常方便。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;传统表格输入是单一维度的过程，对照横轴表头，一行一行填写；&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;问卷的形式则创造了一种全新的形式， 将输入转变为一种对话。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;strong style="box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;如果问卷所有填写人都是自己呢？&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;三年前，脑中突然冒出的这个问题， 启发我找到了现在每天用得最多的工具。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;问卷的所有填写人都是自己，那它就成了一份独家问卷，实际是一种非常强大的个人追踪工具。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;问卷填写人只有自己， 不代表问卷只被填写一次。&amp;nbsp;&lt;/span&gt;&lt;strong style="box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;不同时间戳上的自己， 有很多个。&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;过去 3 年， &amp;nbsp;我把问卷作为了一种个人追踪记录工具。制作了 20 多种问卷：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;1、番茄表单问卷——每个番茄闹钟前后填写&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;2、朋友见面问卷——每次朋友见面后填写，记录时间、地点、 干了什么、聊了什么等&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf=""&gt;3、会议纪要问卷——工作会议无论是否要求写会议纪要，都会顺手填下&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;4、情绪波动问卷——有比较大的情绪波动时填写&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;5、编程知识问卷——随手记录在实践中遇到的知识点&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;...等等&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;平台多样，从 Google Forms 、腾讯问卷、Notion Forms 到飞书问卷，但形式都一样：问卷。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;三年左右总计填写 1500+ 次， 预计还会继续使用下去。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin-top: 10px;margin-bottom: 10px;text-align: center;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;vertical-align: top;box-sizing: border-box;"&gt;&lt;section style="width: 100%;height: 10px;margin-bottom: -6px;background-color: rgb(226, 246, 253);box-sizing: border-box;"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;section style="line-height: 1em;padding-left: 2px;padding-right: 2px;box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;b style="box-sizing: border-box;"&gt;&lt;span leaf=""&gt;为什么要填问卷？&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;填这么多次，是发现了问卷这种形式，不可替代的优点。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="color: rgb(173, 46, 46);box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span leaf=""&gt;问卷是一种脚手架，减少了记录的阻力。&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="color: rgb(173, 46, 46);box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;填问卷，不像打开空白的 Word 页面，半天只打一行字， 它有具体的问题， 有限制选项，有防呆设计，甚至只需要二选一，让自己在任何状态下都能够保持记录。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="color: rgb(173, 46, 46);box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span leaf=""&gt;问卷是一个微环境，可以自定义触动自己的元素。&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="color: rgb(173, 46, 46);box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;问卷可以设置的图片背景，都可以自定义。 问问题风格的方式也都由自己发挥。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;比如我的番茄问卷图片背景是任务的几种类型和它们的关系， 朋友见面问卷是《老友记》截图， 情绪波动问卷是《头脑特工队》截图。&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="1.4590476190476191" data-s="300,640" data-w="1050" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 958.594px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="1" src="https://new.cupaobaidou.com/usr/uploads/2025/07/373761284.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="1.4590476190476191" data-s="300,640" data-w="1050" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 958.594px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="2" src="https://new.cupaobaidou.com/usr/uploads/2025/07/547572773.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="1.4597701149425288" data-s="300,640" data-w="1044" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 959.069px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="3" src="https://new.cupaobaidou.com/usr/uploads/2025/07/4217819828.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.6405797101449275" data-s="300,640" data-w="690" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 420.861px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="4" src="https://new.cupaobaidou.com/usr/uploads/2025/07/4044371520.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(173, 46, 46);box-sizing: border-box;"&gt;&lt;span leaf=""&gt;问卷是一个超链接、 一个二维码， 只要有网络就可以输入。&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(173, 46, 46);box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;比如我不用记忆任何复杂信息，只要打开&amp;nbsp;&lt;/span&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span leaf=""&gt;d.baidou.work&lt;/span&gt;&lt;/strong&gt;&lt;span leaf=""&gt;&amp;nbsp;就能够看到提前设置好的问卷链接； 也可以自动化工具一键打开特定问卷的超链接；电脑上作为书签，手机上可以设置成主屏幕， 甚至可以用输入法的语音转文字填写。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;以下是我的几个表单，填写的结果只有我有权限查看，不过大家感兴趣可以扫码查看问题。&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="1.2148148148148148" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 798.133px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="5" src="https://new.cupaobaidou.com/usr/uploads/2025/07/827317125.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="1.2148148148148148" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 798.133px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="6" src="https://new.cupaobaidou.com/usr/uploads/2025/07/1711408347.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="1.2416666666666667" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 815.775px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="7" src="https://new.cupaobaidou.com/usr/uploads/2025/07/3095575233.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;脚手架减少阻力，微环境多次提醒自己，超链接全平台通用， 这都是输入过程的角度；从输入信息的结果看，就更有价值了。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;更快对单一维度进行纵向分析： 比如番茄问卷结果表格，直接查看特定的一列；&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;更容易从记录的数据找出规律： 比如可以把番茄问卷结果，按照对过去满意程度进行排列，分析自己做什么事的时候状态更好；&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;甚至还可以用上平台的 Ai 功能（飞书智能表格字段捷径）：直接针对特定某一列， 嵌入 Deepseek 自定义提示词， 批量处理。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.537962962962963" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 353.442px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="8" src="https://new.cupaobaidou.com/usr/uploads/2025/07/3678807427.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 12px;color: rgb(160, 160, 160);box-sizing: border-box;"&gt;&lt;p style="text-align: center;white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Ai 针对困难的地方给鼓励&lt;/span&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.6925925925925925" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 455.033px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="9" src="https://new.cupaobaidou.com/usr/uploads/2025/07/454901191.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 12px;color: rgb(160, 160, 160);box-sizing: border-box;"&gt;&lt;p style="text-align: center;white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;甚至还可以使用飞书的仪表盘做可视化&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;和上篇&lt;a class="normal_text_link" target="_blank" style="" href="https://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485706&amp;amp;idx=1&amp;amp;sn=0da4d7ada0ca7b67cf7e791d6263d95b&amp;amp;scene=21#wechat_redirect" textvalue="《Anki的意外用途：我如何用它存储触动瞬间》" data-itemshowtype="0" linktype="text" data-linktype="2"&gt;&amp;nbsp;《Anki的意外用途：我如何用它存储触动瞬间》&lt;/a&gt;&amp;nbsp;联动， 问卷的结果是表格， 表格内容可以批量导入 Anki ，一次性制作上千张卡片，我 Anki 中朋友见面的部分，前身就是问卷。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;问卷实际是一种思考框架，设计的时候，必须考虑我们要记录的信息是什么， 如何结构化这些信息。 迭代问卷的过程，也是迭代自己思考方式的过程。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;尝试下这种只有自己填写的问卷， 随便选个平台（我目前主要用飞书问卷），设计个问卷，哪怕只有三个问题，不同时间戳上的自己填写后，查看结果，可能发现些有趣的东西。&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;或者也可以试试我之前做的模板：&lt;/span&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="1.5128205128205128" data-s="300,640" data-w="624" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 624px !important; height: 944px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="10" src="https://new.cupaobaidou.com/usr/uploads/2025/07/2726482842.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section class="channels_iframe_wrp" nodeleaf=""&gt;&lt;mp-common-videosnap class="js_uneditable custom_select_card channels_iframe videosnap_video_iframe mp_common_widget js_wechannel_video_card js_wx_tap_highlight" data-pluginname="mpvideosnap" data-url="https://findermp.video.qq.com/251/20304/stodownload?encfilekey=rjD5jyTuFrIpZ2ibE8T7YmwgiahniaXswqzxwInnpHlRFZaCExW1YXTuicGUarmTxqAT59KVtbKeBARktHRja6DQttVR4L8micPsF4Z6uxtBy49Ulk3XSWTgicRA&amp;amp;token=2lt8WBSnjTlkd7wnceSByDL8EQc2O6ner8RkpVoEice38OMnvZVBZElFBlw7nWick8hg9yc3vHqoicfLibTnlv8qyczEhQFb7N02cjzr39mjNxR7pYP1RBzSVkvkW0s3rbrTUDH18nRdYbaHdWvCh3A9WysB6OXVadYtl4me3zIgHuA&amp;amp;idx=1&amp;amp;hy=SH&amp;amp;m=&amp;amp;scene=2&amp;amp;uzid=2" data-headimgurl="http://wx.qlogo.cn/finderhead/PiajxSqBRaEIU2Bv2rAIxHpknwYL0JIPicpbBwlmsYvSmIaW75T7dVog/0" data-username="v2_060000231003b20faec8c5e4881ec6dcc803ee33b077c3bbd58c31f7005bcdf5df9b1f09e7dc@finder" data-nickname="醋泡白豆" data-desc="会议纪要神器：一表一卷记百会- 3步完成会议纪要 &#13;&#10;#做点什么给朋友用 #会议纪要 #飞书智能表格&#13;&#10;" data-nonceid="7130137148218410207" data-width="1920" data-height="1080" data-type="video" data-id="export/UzFfAgtgekIEAQAAAAAA5kQ6bazlOgAAAAstQy6ubaLX4KHWvLEZgBPEooNMaxVILb-JzNPgMIvr0DNBb0zSxY0MXFk6IoNE" data-parentwidth="657" data-maxwidth="677" data-index="0" data-flag="0" data-authiconurl="" data-feedfullcoverurl="https://findermp.video.qq.com/251/20304/stodownload?encfilekey=rjD5jyTuFrIpZ2ibE8T7YmwgiahniaXswqzxwInnpHlRFZaCExW1YXTuicGUarmTxqAT59KVtbKeBARktHRja6DQttVR4L8micPsF4Z6uxtBy49Ulk3XSWTgicRA&amp;amp;token=ic1n0xDG6aw8biaDWN6EYMyDwA6To6ptw3eYvIjibqXSzOHLUB8yXI2kJ9L6bUJRTUG0Z6nic0ibDvJr2xibcicfVgCnBlHYGxGXKU080GzHUuaYc2QL7lD7v7LKLd1BVa1fzBsq7rRV83hnRXOyJDIkL45UDwMiaKrtZlqRZ3f0aPQM9EU&amp;amp;idx=1&amp;amp;hy=SH&amp;amp;m=&amp;amp;scene=2&amp;amp;uzid=2" data-feedthumburl="https://findermp.video.qq.com/251/20304/stodownload?encfilekey=S7s6ianIic0ia4PicKJSfB8EjyjpQibPUAXolYeIRW8RfZxfTKNIBhdEKbAoUcvWY5HBgRMeJicMXOjDibZLq155r9RbmibWVVuQ4tUQZRRz9N4ictPQWjd7U3HXEyA&amp;amp;token=2lt8WBSnjTlkd7wnceSByFTWEHCoUeVBtJtkuBl5K7v7garYuAdbql2LXqTLYzKpFEWMrO0SPz8yZOQt8XN7NqFQZ6xd3ibQpwjichfjH9jrUeQeMu76AwxOG9KGKsXcXkE3ExkyxX01zkrGa1vXtoOctfcXpNCz2FBOiav0yRIL7M&amp;amp;idx=1&amp;amp;bizid=1023&amp;amp;dotrans=0&amp;amp;hy=SH&amp;amp;m=&amp;amp;uzid=1" data-feedcoverurl="https://findermp.video.qq.com/251/20304/stodownload?encfilekey=rjD5jyTuFrIpZ2ibE8T7YmwgiahniaXswqzxwInnpHlRFZaCExW1YXTuicGUarmTxqAT59KVtbKeBARktHRja6DQttVR4L8micPsF4Z6uxtBy49Ulk3XSWTgicRA&amp;amp;token=2lt8WBSnjTlkd7wnceSByDL8EQc2O6ner8RkpVoEice38OMnvZVBZElFBlw7nWick8hg9yc3vHqoicfLibTnlv8qyczEhQFb7N02cjzr39mjNxR7pYP1RBzSVkvkW0s3rbrTUDH18nRdYbaHdWvCh3A9WysB6OXVadYtl4me3zIgHuA&amp;amp;idx=1&amp;amp;hy=SH&amp;amp;m=&amp;amp;scene=2&amp;amp;uzid=2" data-isnews="0" data-likenum="11"&gt;&lt;/mp-common-videosnap&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="text-align: center;margin: 0px 0% 10px;font-size: 0px;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: 100%;height: 3px;vertical-align: top;overflow: hidden;background-color: rgb(254, 222, 69);box-sizing: border-box;"&gt;&lt;section style="margin: 0px 0%;transform: translate3d(-10px, 0px, 0px);-webkit-transform: translate3d(-10px, 0px, 0px);-moz-transform: translate3d(-10px, 0px, 0px);-o-transform: translate3d(-10px, 0px, 0px);box-sizing: border-box;"&gt;&lt;section style="display: inline-block;vertical-align: top;transform: matrix(1, 0, -0.2, 1, 0, 0);-webkit-transform: matrix(1, 0, -0.2, 1, 0, 0);-moz-transform: matrix(1, 0, -0.2, 1, 0, 0);-o-transform: matrix(1, 0, -0.2, 1, 0, 0);border-style: none;border-width: 0px;border-color: rgb(62, 62, 62);padding: 0px;background-color: rgba(255, 255, 255, 0);width: 100%;height: auto;box-sizing: border-box;"&gt;&lt;section style="margin: 0px 0%;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;vertical-align: top;transform: matrix(1, 0, -0.2, 1, 0, 0);-webkit-transform: matrix(1, 0, -0.2, 1, 0, 0);-moz-transform: matrix(1, 0, -0.2, 1, 0, 0);-o-transform: matrix(1, 0, -0.2, 1, 0, 0);border-style: none;border-width: 0px;border-color: rgb(62, 62, 62);padding: 0px;background-color: rgba(254, 255, 255, 0);width: 100%;height: auto;box-sizing: border-box;"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section class="mp_profile_iframe_wrp" nodeleaf=""&gt;&lt;mp-common-profile class="js_uneditable custom_select_card mp_profile_iframe mp_common_widget js_wx_tap_highlight" data-pluginname="mpprofile" data-nickname="醋泡白豆" data-alias="cpbd1121" data-from="0" data-headimg="http://mmbiz.qpic.cn/mmbiz_png/4ADhmAJPyqCfQIeWCibmq12nNoQPoovmGAkQXibbHrPEWd6dbEMeXDsHmR2FvB44AqgIod9yvnvRyOiaOAicCc7C1g/300?wx_fmt=png&amp;amp;wxfrom=19" data-signature="Friendly Ambitious Nerd设计有趣支持系统 煽风点火个人生活" data-id="MzI2OTIxMTg1Nw==" data-is_biz_ban="0" data-service_type="1" data-verify_status="0" data-origin_num="254" data-isban="0" data-biz_account_status="0" data-index="0"&gt;&lt;/mp-common-profile&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;</description></item><item><title>Anki的意外用途：我如何用它存储触动瞬间</title><link>https://new.cupaobaidou.com/archives/1142/</link><pubDate>Fri, 23 May 2025 10:08:00 +0800</pubDate><guid>https://new.cupaobaidou.com/archives/1142/</guid><description>&lt;section style="line-height: 2; font-size: 15px; letter-spacing: 1px; padding: 0px 10px; box-sizing: border-box; font-style: normal; font-weight: 400; text-align: justify; color: rgb(62, 62, 62); visibility: visible;"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="margin-top: 10px; margin-bottom: 10px; text-align: center; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="display: inline-block; vertical-align: top; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="width: 100%; height: 10px; margin-bottom: -6px; background-color: rgb(226, 246, 253); box-sizing: border-box; visibility: visible;"&gt;&lt;svg viewBox="0 0 1 1" style="float: left; line-height: 0; width: 0px; vertical-align: top; visibility: visible;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;section style="line-height: 1em; padding-left: 2px; padding-right: 2px; box-sizing: border-box; visibility: visible;"&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;strong style="box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;把触动瞬间，变成力量源泉&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box; visibility: visible;"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;当我们有强烈想要实现的目标时， 往往能发掘出常见工具的新用途。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;最近一年，我用这款通常用来「背单词」的 Anki 记忆软件，构建了一个专属自己的触动瞬间的「花园」。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;我们的大脑总是偏向记住不愉快的事，让美好淡去。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;手机照片堆积几千张， 那么多触动瞬间，没有多少被重新感受过。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;若不刻意设计，日常生活的繁忙会让我的记忆力变成金鱼，那些瞬间的触动，变成沙滩上的脚印。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;忙碌中，逐渐失去那些本该让我们感受到被爱与支持的珍贵记忆。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span leaf="" style="visibility: visible;"&gt;520521， 谐音的日子给大家表达情感的契机。送出和收到很多爱。（请允许我秀一下）&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center; margin-top: 10px; margin-bottom: 10px; line-height: 0; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; border-style: ridge; border-width: 1px; border-color: rgb(4, 4, 23); box-sizing: border-box; visibility: visible;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.8944444444444445" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; width: 655px !important; box-sizing: border-box; height: auto !important; visibility: visible !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="1" src="https://new.cupaobaidou.com/usr/uploads/2025/07/1500600553.png" _width="100%" alt="Image" data-report-img-idx="0" data-fail="0"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;想象下，如果这些触动瞬间能完美保存，会是什么体验？&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;我们试图用多种方式保存这些记忆： 从物理相册到手机照片再到社交媒体。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;不过却各有不足：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 相册落灰占地儿难以整理；&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 手机照片被新内容表情包各类截图塞满；&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 社交媒体更像是展示而非细致的触动记录。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;最关键的是，它们没有主动回顾的机制。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;人脑运作是单线程的，我们不能同时决定&lt;/span&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span leaf=""&gt;「应该回顾什么」和「完全沉浸在回顾中」&lt;/span&gt;&lt;/strong&gt;&lt;span leaf=""&gt;这两件事。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;且按照线性回顾顺序，内容变得可预测，失去新鲜感和惊喜。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Anki 这款高度自定义化的间歇性复习软件， 刚好完美解决了以上的问题。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;它用算法接管「选择回顾什么」 的决策过程，让大脑只需专注于「体验回忆」本身。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Anki 原本用被来背诵单词和知识点，支持文字和图片作为载体。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;这意味着我们可以用它来保存触动瞬间，并通过其动态复习算法，以随机且高效的方式回顾。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;这也有缺点—— 因为是独属自己，高度定制化的触动瞬间和回忆，所以所有的卡片都必须自己制作。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;但&lt;/span&gt;&lt;span style="color: rgb(173, 46, 46);box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span leaf=""&gt;一次录入，永久存储， 主动推送回顾的模式&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span leaf=""&gt;让这项投入相当值得。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Anki 采用间隔重复算法，对记得好的卡片自动延长复习间隔，记得差的更频繁出现。这样每天只需复习少量卡片，却能高效巩固记忆。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;设想一下， 如果从现在就养成这个习惯，那自己就真的会有个外置美好时刻触动瞬间 的记忆库。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;「我会永远记住你」将并不再是一时上头的浪漫夸张，而会&lt;/span&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(173, 46, 46);box-sizing: border-box;"&gt;&lt;span leaf=""&gt;成为基于方法和工具的现实&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span leaf=""&gt;。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;通过系统性地记录和复习，建立一个外部的、可靠的情感记忆系统，我能真正记住那些对我们关系而言重要的瞬间。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Richard Hamming提出过的问题&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;「Of all of life's burdens, which are those machines can relieve, or significantly ease, for us?」&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;（在生活的诸多负担中，哪些是机器可以为我们减轻或显著缓解的？）&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;记忆的流失正式这样的负担。 我们在珍藏触动时刻和应对遗忘的矛盾中， 而 Anki 这样的工具提供一种解决方案——把「什么时候该回顾什么」外包给机器，我们只需专注回顾。美好回忆的定期在大脑中重生。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;于是我去年开始就在 Anki 中建立了相应的触动牌组。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;分为三部分：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Gathering Track： 和朋友们的见面记录， 有文字有图片&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Gifts：朋友们送的礼物照片， 社媒晒不多，但我见它们有足够多次&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Inspiring moments： 从网上看到触动的图片， 被夸奖的截图等等&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;当时还没有探索出来更快的制卡流程，都是手动制卡。 内容虽然少，但也非常值得。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;以下是两张手动制作的极简卡片：朋友见面和收到的礼物?&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="2.0533642691415315" data-s="300,640" data-w="862" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 1349.06px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="2" src="https://new.cupaobaidou.com/usr/uploads/2025/07/3131262052.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="2.0556844547563804" data-s="300,640" data-w="862" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 1350.58px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="3" src="https://new.cupaobaidou.com/usr/uploads/2025/07/3319157742.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;制卡加上经常复习，感觉记忆得到了扩展，&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Andy Matuschak 提到过「 &amp;nbsp;Spaced repetition systems can be used to program attention.」 （间歇重复系统可以用于对注意力进行编程。）&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;每天接触的信息也在塑造自己， 感觉自己整体上在有实际缘由地变得更乐观更积极，大脑中那些积极的神经回路频繁被点亮。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;爱一定程度上是可以被存储的。&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;长期来看，这些Anki卡片构建了一个永恒的情感银行。珍贵瞬间不会消失，而是定期唤起记忆。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin-top: 10px;margin-bottom: 10px;text-align: center;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;vertical-align: top;box-sizing: border-box;"&gt;&lt;section style="width: 100%;height: 10px;margin-bottom: -6px;background-color: rgb(226, 246, 253);box-sizing: border-box;"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;section style="line-height: 1em;padding-left: 2px;padding-right: 2px;box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span leaf=""&gt;把复杂步骤，变成智能流程&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;经过一年的摸索和迭代，我构建了一套制卡工作流，让记录触动瞬间变清晰和顺畅。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;制作时间缩短了90%以上，卡片文件大小也减少了90%。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;大致步骤如下：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(4, 4, 23);box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.5546296296296296" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 363.282px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="4" src="https://new.cupaobaidou.com/usr/uploads/2025/07/1421783615.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;第一步：使用飞书智能表格捕捉瞬间&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;飞书智能表格作为数据中转站，通过问卷功能快速录入信息：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 创建一个包含"描述"、"图片"、"日期"等字段的表格&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 把表格变成问卷表单视图，录入更顺畅&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 还可以使用飞书AI功能自动生成额外内容，比如起个有趣的标题等&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 使用「插件市场」中的「导出Excel：内嵌图片」 插件， 下载成 Excel 文件&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;（录入问卷和表格示例如下）&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(4, 4, 23);box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="2.4102079395085068" data-s="300,640" data-w="1058" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 1578.69px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="5" src="https://new.cupaobaidou.com/usr/uploads/2025/07/4061504707.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;width: 100%;height: auto;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.6425925925925926" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 422.183px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="6" src="https://new.cupaobaidou.com/usr/uploads/2025/07/3177449806.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;第二步：图片处理与链接生成&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- Anki卡片本质是HTML网页，直接嵌入图片会导致文件臃肿。更优方案是：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 使用Python脚本批量提取 Excel xlsx 文件中的图片（表述好需求，让ai写的，附在文章最后，供参考）&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 将图片上传至图床（如Github仓库或七牛云）&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 自动生成并保存图片链接到原 Excel xlsx 文件的单元格中&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;第三步：批量导入Anki&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 在 Anki 提前设置一个卡片模板&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 将xlsx文件转成 CSV 格式。确保包含文字描述和图片链接&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 使用Anki的导入功能批量创建卡片&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="1.842911877394636" data-s="300,640" data-w="1044" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 1210.79px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="7" src="https://new.cupaobaidou.com/usr/uploads/2025/07/1725504538.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="1.842911877394636" data-s="300,640" data-w="1044" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 1210.79px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="8" src="https://new.cupaobaidou.com/usr/uploads/2025/07/239183003.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="1.842911877394636" data-s="300,640" data-w="1044" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 1210.79px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="9" src="https://new.cupaobaidou.com/usr/uploads/2025/07/3675964246.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="1.842911877394636" data-s="300,640" data-w="1044" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 1210.79px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="10" src="https://new.cupaobaidou.com/usr/uploads/2025/07/1917003260.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;这套工作流的核心优势在于：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 轻量化 - Anki卡片本质是HTML网页，使用图片链接而非直接嵌入图片，大大减小了文件体积，同步也更快&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 高效率 - 借助飞书智能表格作为卡片数据库的中转站，录入流程和批量处理都非常迅速&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;- 长期可行 - 基于开源软件和成熟技术，理论上可以永久使用&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;对于编程小白，Python脚本可能听起来有些复杂，但借助现代AI工具，只需清晰表达需求，一步步测试运行生成的代码即可，无需深入理解编程细节。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;不是特别私人的文件，我把Github 仓库作为图床，而和朋友见面、礼物等照片，我购买了七牛云的图床存储空间，两者效果是一样的。 Github 作为图床免费可靠就是加载速度有些慢。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;另外结构性的表格可以批量迁移、编辑、关键词搜索等等，还有更多视图的展示。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;以上的实现步骤复杂是因为涉及到了图片批量上传到图床。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;如果只是纯文字内容， 使用飞书问卷先记录，后批量导入，完全不需要第二步，是非常容易的。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;Anki 上手确实有些难度，不过可以它是开源项目，我们借助 DeepWiki 这个工具可以获得较为准确的教程&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;https://deepwiki.com/ankitects/anki&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;" nodeleaf=""&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="6.093518518518518" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 4003.44px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="11" src="https://new.cupaobaidou.com/usr/uploads/2025/07/4041989371.png" _width="100%" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="text-align: center;margin: 0px 0% 10px;font-size: 0px;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: 100%;height: 3px;vertical-align: top;overflow: hidden;background-color: rgb(254, 222, 69);box-sizing: border-box;"&gt;&lt;section style="margin: 0px 0%;transform: translate3d(-10px, 0px, 0px);-webkit-transform: translate3d(-10px, 0px, 0px);-moz-transform: translate3d(-10px, 0px, 0px);-o-transform: translate3d(-10px, 0px, 0px);box-sizing: border-box;"&gt;&lt;section style="display: inline-block;vertical-align: top;transform: matrix(1, 0, -0.2, 1, 0, 0);-webkit-transform: matrix(1, 0, -0.2, 1, 0, 0);-moz-transform: matrix(1, 0, -0.2, 1, 0, 0);-o-transform: matrix(1, 0, -0.2, 1, 0, 0);border-style: none;border-width: 0px;border-color: rgb(62, 62, 62);padding: 0px;background-color: rgba(255, 255, 255, 0);width: 100%;height: auto;box-sizing: border-box;"&gt;&lt;section style="margin: 0px 0%;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;vertical-align: top;transform: matrix(1, 0, -0.2, 1, 0, 0);-webkit-transform: matrix(1, 0, -0.2, 1, 0, 0);-moz-transform: matrix(1, 0, -0.2, 1, 0, 0);-o-transform: matrix(1, 0, -0.2, 1, 0, 0);border-style: none;border-width: 0px;border-color: rgb(62, 62, 62);padding: 0px;background-color: rgba(254, 255, 255, 0);width: 100%;height: auto;box-sizing: border-box;"&gt;&lt;section style="display: flex;flex-flow: row;justify-content: center;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;vertical-align: top;width: auto;box-shadow: rgb(0, 0, 0) 0px 0px 0px;flex: 0 0 0%;align-self: flex-start;height: auto;box-sizing: border-box;"&gt;&lt;section style="display: flex;flex-flow: row;justify-content: center;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;flex: 0 0 0%;height: auto;align-self: flex-start;padding: 0px 2px 0px 1px;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: 3px;height: 55px;vertical-align: top;overflow: hidden;background-color: rgb(255, 255, 255);box-sizing: border-box;"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: top;width: auto;flex: 0 0 0%;align-self: flex-start;height: auto;box-sizing: border-box;"&gt;&lt;section style="display: flex;flex-flow: row;justify-content: center;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;flex: 0 0 0%;height: auto;align-self: flex-start;padding: 0px 2px 0px 1px;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: 3px;height: 55px;vertical-align: top;overflow: hidden;background-color: rgb(86, 86, 86);box-sizing: border-box;"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: top;width: auto;flex: 0 0 0%;align-self: flex-start;height: auto;box-sizing: border-box;"&gt;&lt;section style="display: flex;flex-flow: row;justify-content: center;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;flex: 0 0 0%;height: auto;align-self: flex-start;padding: 0px 2px 0px 1px;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: 3px;height: 55px;vertical-align: top;overflow: hidden;background-color: rgb(86, 86, 86);box-sizing: border-box;"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: top;width: auto;flex: 0 0 0%;align-self: flex-start;height: auto;box-sizing: border-box;"&gt;&lt;section style="display: flex;flex-flow: row;justify-content: center;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;flex: 0 0 0%;height: auto;align-self: flex-start;padding: 0px 2px 0px 1px;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: 3px;height: 55px;vertical-align: top;overflow: hidden;background-color: rgb(86, 86, 86);box-sizing: border-box;"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section style="box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;技术的意义不仅在于提高效率，更在于针对自己的目标，把它们当做实现的工具。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;听上去好玩的话，或许今天就可以试试：&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;1、今天就下载安装Anki软件，它在非苹果设备上都是免费的&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;2、找到手机中一张让自己触动的图片&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;3、花十分钟时间创建第两张Anki卡片，最基础的就好&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;迈出了第一步，开始构建自己的情感记忆库。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;如果觉得很赞，后续可以慢慢优化自己的流程，降低制卡阻力。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;这个记忆系统最大的价值不是冻结过去，而是帮助我们从过去汲取力量，塑造更有意义的现在与未来。&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span leaf=""&gt;自动提取含Excel文件中的图片上传到 Github 并将图片链接替换掉原单元格中的&lt;/span&gt;&lt;/p&gt;&lt;section class="code-snippet__fix code-snippet__js"&gt;&lt;ul class="code-snippet__line-index code-snippet__js"&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;/ul&gt;&lt;pre class="code-snippet__js" data-lang="python"&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__string"&gt;"""&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;Excel图片提取与GitHub上传工具&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;此工具可以从Excel文件中提取所有图片，上传到GitHub作为图床，&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;然后生成一个新的Excel文件，将原图片替换为GitHub上的图片URL链接。&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;功能特点:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;- 自动提取Excel中的所有嵌入图片及其位置信息&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;- 批量上传图片到GitHub仓库&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;- 生成新的Excel文件，保留原数据但替换图片为URL&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;- 支持断点续传，可在上传中断后继续&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;- 在新Excel中自动生成图片索引表&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;使用前需要:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;1. 创建GitHub个人访问令牌：&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;Settings &amp;gt; Developer settings &amp;gt; Personal access tokens &amp;gt; Fine-grained tokens&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;- 选择 'Contents' 权限 (Read and write)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;2. 创建config.ini文件，内容如下：&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;[github]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;username = 你的GitHub用户名&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;repo = 用于存储图片的仓库名&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;token = 你的个人访问令牌&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;branch = main&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;安装依赖:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;pip install openpyxl pillow requests&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;使用方法:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;1. 配置config.ini&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;2. 运行脚本&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;3. 在弹出窗口中选择Excel文件&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;4. 等待处理完成&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;作者: 醋泡白豆+Claude3.7&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;"""&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;os&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;time&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;tempfile&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;shutil&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;from&lt;/span&gt;&amp;nbsp;pathlib&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;Path&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;from&lt;/span&gt;&amp;nbsp;datetime&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;datetime&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;openpyxl&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;from&lt;/span&gt;&amp;nbsp;openpyxl.utils&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;get_column_letter&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;requests&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;from&lt;/span&gt;&amp;nbsp;tkinter&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;Tk, filedialog, messagebox&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;from&lt;/span&gt;&amp;nbsp;PIL&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;Image&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;io&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;zipfile&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;xml.etree.ElementTree&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;ET&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;base64&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;json&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;re&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;pickle&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;random&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;configparser&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__comment"&gt;# ===== 配置加载 =====&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;defload_config():&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"""加载GitHub配置信息"""&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; config = {&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'username'&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;''&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'repo'&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;''&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'token'&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;''&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'branch'&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;'main'&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 尝试从config.ini加载&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; cfg = configparser.ConfigParser()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;os.path.exists(&lt;span class="code-snippet__string"&gt;'config.ini'&lt;/span&gt;):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; cfg.read(&lt;span class="code-snippet__string"&gt;'config.ini'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&lt;span class="code-snippet__string"&gt;'github'&lt;/span&gt;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;cfg:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; config[&lt;span class="code-snippet__string"&gt;'username'&lt;/span&gt;] = cfg[&lt;span class="code-snippet__string"&gt;'github'&lt;/span&gt;].get(&lt;span class="code-snippet__string"&gt;'username'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;''&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; config[&lt;span class="code-snippet__string"&gt;'repo'&lt;/span&gt;] = cfg[&lt;span class="code-snippet__string"&gt;'github'&lt;/span&gt;].get(&lt;span class="code-snippet__string"&gt;'repo'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;''&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; config[&lt;span class="code-snippet__string"&gt;'token'&lt;/span&gt;] = cfg[&lt;span class="code-snippet__string"&gt;'github'&lt;/span&gt;].get(&lt;span class="code-snippet__string"&gt;'token'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;''&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; config[&lt;span class="code-snippet__string"&gt;'branch'&lt;/span&gt;] = cfg[&lt;span class="code-snippet__string"&gt;'github'&lt;/span&gt;].get(&lt;span class="code-snippet__string"&gt;'branch'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'main'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 尝试从环境变量加载(优先级更高)&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; config[&lt;span class="code-snippet__string"&gt;'username'&lt;/span&gt;] = os.environ.get(&lt;span class="code-snippet__string"&gt;'GH_USERNAME'&lt;/span&gt;, config[&lt;span class="code-snippet__string"&gt;'username'&lt;/span&gt;])&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; config[&lt;span class="code-snippet__string"&gt;'repo'&lt;/span&gt;] = os.environ.get(&lt;span class="code-snippet__string"&gt;'GH_REPO'&lt;/span&gt;, config[&lt;span class="code-snippet__string"&gt;'repo'&lt;/span&gt;])&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; config[&lt;span class="code-snippet__string"&gt;'token'&lt;/span&gt;] = os.environ.get(&lt;span class="code-snippet__string"&gt;'GH_TOKEN'&lt;/span&gt;, config[&lt;span class="code-snippet__string"&gt;'token'&lt;/span&gt;])&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; config[&lt;span class="code-snippet__string"&gt;'branch'&lt;/span&gt;] = os.environ.get(&lt;span class="code-snippet__string"&gt;'GH_BRANCH'&lt;/span&gt;, config[&lt;span class="code-snippet__string"&gt;'branch'&lt;/span&gt;])&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 验证配置&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; missing = []&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; ifnot config[&lt;span class="code-snippet__string"&gt;'username'&lt;/span&gt;]: missing.append(&lt;span class="code-snippet__string"&gt;'GitHub用户名'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; ifnot config[&lt;span class="code-snippet__string"&gt;'repo'&lt;/span&gt;]: missing.append(&lt;span class="code-snippet__string"&gt;'GitHub仓库名'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; ifnot config[&lt;span class="code-snippet__string"&gt;'token'&lt;/span&gt;]: missing.append(&lt;span class="code-snippet__string"&gt;'GitHub访问令牌'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;return&lt;/span&gt;&amp;nbsp;config, missing&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__comment"&gt;# ===== 重试配置 =====&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;MAX_RETRIES =&amp;nbsp;&lt;span class="code-snippet__number"&gt;3&lt;/span&gt;&amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 上传失败时最大重试次数&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;RETRY_DELAY =&amp;nbsp;&lt;span class="code-snippet__number"&gt;5&lt;/span&gt;&amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 重试间隔秒数&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;RATE_LIMIT_DELAY =&amp;nbsp;&lt;span class="code-snippet__number"&gt;10&lt;/span&gt;&amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 请求过多时等待秒数&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;defget_column_letter(col_idx):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"""将列索引转换为Excel列字母（1-&amp;gt;A, 2-&amp;gt;B, ...）"""&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; result =&amp;nbsp;&lt;span class="code-snippet__string"&gt;""&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;while&lt;/span&gt;&amp;nbsp;col_idx &amp;gt;&amp;nbsp;&lt;span class="code-snippet__number"&gt;0&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; col_idx, remainder =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;divmod&lt;/span&gt;(col_idx -&amp;nbsp;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__number"&gt;26&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; result =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;chr&lt;/span&gt;(&lt;span class="code-snippet__number"&gt;65&lt;/span&gt;&amp;nbsp;+ remainder) + result&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;return&lt;/span&gt;&amp;nbsp;result&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;defextract_images_and_positions(excel_path):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"""&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; 从Excel文件中提取所有图片及其位置信息&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; 使用直接解析drawing XML的方法获取精确位置&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; """&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; images_info = []&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; position_info = {} &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 图片名 -&amp;gt; 位置信息&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; temp_dir = tempfile.mkdtemp()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;"从Excel文件中提取图片并分析位置..."&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 解压Excel文件到临时目录&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;with&lt;/span&gt;&amp;nbsp;zipfile.ZipFile(excel_path,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'r'&lt;/span&gt;)&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;zip_ref:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; zip_ref.extractall(temp_dir)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 1. 获取工作表信息&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; wb_xml_path = os.path.join(temp_dir,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'xl'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'workbook.xml'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; wb_xml = ET.parse(wb_xml_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; wb_root = wb_xml.getroot()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 提取所有工作表信息&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheets_info = {} &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# sheet_id -&amp;gt; sheet_name&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ns = {&lt;span class="code-snippet__string"&gt;''&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;'http://schemas.openxmlformats.org/spreadsheetml/2006/main'&lt;/span&gt;}&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;sheet_elem&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;wb_root.findall(&lt;span class="code-snippet__string"&gt;'.//sheets/sheet'&lt;/span&gt;, ns):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet_id = sheet_elem.get(&lt;span class="code-snippet__string"&gt;'sheetId'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet_name = sheet_elem.get(&lt;span class="code-snippet__string"&gt;'name'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; r_id = sheet_elem.get(&lt;span class="code-snippet__string"&gt;'{http://schemas.openxmlformats.org/officeDocument/2006/relationships}id'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheets_info[r_id] = {&lt;span class="code-snippet__string"&gt;'id'&lt;/span&gt;: sheet_id,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'name'&lt;/span&gt;: sheet_name}&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"找到工作表: ID=&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{sheet_id}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;, 名称=&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{sheet_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;, 关系ID=&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{r_id}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 2. 获取工作表与文件名的映射&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; rels_path = os.path.join(temp_dir,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'xl'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'_rels'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'workbook.xml.rels'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; rels_xml = ET.parse(rels_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; rels_root = rels_xml.getroot()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 工作表ID与文件的映射&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet_files = {} &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# r_id -&amp;gt; sheet xml path&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;rel&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;rels_root.findall(&lt;span class="code-snippet__string"&gt;'.//{http://schemas.openxmlformats.org/package/2006/relationships}Relationship'&lt;/span&gt;):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; r_id = rel.get(&lt;span class="code-snippet__string"&gt;'Id'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; target = rel.get(&lt;span class="code-snippet__string"&gt;'Target'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&lt;span class="code-snippet__string"&gt;'worksheets/sheet'&lt;/span&gt;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;target:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet_files[r_id] = os.path.join(temp_dir,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'xl'&lt;/span&gt;, target)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"工作表关系: ID=&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{r_id}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;, 文件=&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{target}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 3. 处理每个工作表的drawing文件&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;r_id, sheet_info&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;sheets_info.items():&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet_name = sheet_info[&lt;span class="code-snippet__string"&gt;'name'&lt;/span&gt;]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"分析工作表:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{sheet_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;r_id notin sheet_files:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 找不到工作表&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{sheet_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;的文件"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet_path = sheet_files[r_id]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ifnot os.path.exists(sheet_path):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 工作表文件不存在:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{sheet_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 查找工作表中的drawing引用&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet_xml = ET.parse(sheet_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet_root = sheet_xml.getroot()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; drawing_rid =&amp;nbsp;&lt;span class="code-snippet__literal"&gt;None&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; drawing_elem = sheet_root.find(&lt;span class="code-snippet__string"&gt;'.//drawing'&lt;/span&gt;, {&lt;span class="code-snippet__string"&gt;''&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;'http://schemas.openxmlformats.org/spreadsheetml/2006/main'&lt;/span&gt;})&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;drawing_elem isnotNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; drawing_rid = drawing_elem.get(&lt;span class="code-snippet__string"&gt;'{http://schemas.openxmlformats.org/officeDocument/2006/relationships}id'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 工作表&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{sheet_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;有绘图元素，关系ID:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{drawing_rid}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;drawing_rid isNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 工作表&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{sheet_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;没有绘图元素"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 获取drawing文件的路径&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet_dir = os.path.dirname(sheet_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet_rels_path = os.path.join(sheet_dir,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'_rels'&lt;/span&gt;, os.path.basename(sheet_path) +&amp;nbsp;&lt;span class="code-snippet__string"&gt;'.rels'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ifnot os.path.exists(sheet_rels_path):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 工作表关系文件不存在:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{sheet_rels_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet_rels_xml = ET.parse(sheet_rels_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet_rels_root = sheet_rels_xml.getroot()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; drawing_path =&amp;nbsp;&lt;span class="code-snippet__literal"&gt;None&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;rel&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;sheet_rels_root.findall(&lt;span class="code-snippet__string"&gt;'.//{http://schemas.openxmlformats.org/package/2006/relationships}Relationship'&lt;/span&gt;):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;rel.get(&lt;span class="code-snippet__string"&gt;'Id'&lt;/span&gt;) == drawing_rid:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; target = rel.get(&lt;span class="code-snippet__string"&gt;'Target'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 修正路径解析&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;target.startswith(&lt;span class="code-snippet__string"&gt;'../'&lt;/span&gt;):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 相对路径，需要从sheet目录向上&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; base_dir = os.path.dirname(sheet_dir)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; rel_target = target[&lt;span class="code-snippet__number"&gt;3&lt;/span&gt;:] &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 去掉开头的 '../'&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; drawing_path = os.path.join(base_dir, rel_target)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 直接路径&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; drawing_path = os.path.join(sheet_dir, target)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;break&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;drawing_path isNoneornot os.path.exists(drawing_path):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 找不到drawing文件:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{drawing_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 找到drawing文件:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{os.path.basename(drawing_path)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 解析drawing文件获取图片位置&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; drawing_xml = ET.parse(drawing_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; drawing_root = drawing_xml.getroot()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 获取drawing文件与图片的关系&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; drawing_dir = os.path.dirname(drawing_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; drawing_rels_path = os.path.join(drawing_dir,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'_rels'&lt;/span&gt;, os.path.basename(drawing_path) +&amp;nbsp;&lt;span class="code-snippet__string"&gt;'.rels'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ifnot os.path.exists(drawing_rels_path):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" drawing关系文件不存在:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{drawing_rels_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 尝试在其他位置查找drawing关系文件..."&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 尝试其他可能的路径&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; alt_rels_path = os.path.join(temp_dir,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'xl'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'drawings'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'_rels'&lt;/span&gt;, os.path.basename(drawing_path) +&amp;nbsp;&lt;span class="code-snippet__string"&gt;'.rels'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;os.path.exists(alt_rels_path):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; drawing_rels_path = alt_rels_path&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 找到替代的drawing关系文件:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{alt_rels_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ifnot os.path.exists(drawing_rels_path):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 无法找到drawing关系文件，跳过图片位置分析"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; drawing_rels_xml = ET.parse(drawing_rels_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; drawing_rels_root = drawing_rels_xml.getroot()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 创建关系ID到图片路径的映射&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_rels = {} &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# rel_id -&amp;gt; image_path&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;rel&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;drawing_rels_root.findall(&lt;span class="code-snippet__string"&gt;'.//{http://schemas.openxmlformats.org/package/2006/relationships}Relationship'&lt;/span&gt;):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; r_id = rel.get(&lt;span class="code-snippet__string"&gt;'Id'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; target = rel.get(&lt;span class="code-snippet__string"&gt;'Target'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&lt;span class="code-snippet__string"&gt;'../media/'&lt;/span&gt;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;target&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;or&lt;/span&gt;&amp;nbsp;target.endswith((&lt;span class="code-snippet__string"&gt;'.png'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'.jpg'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'.jpeg'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'.gif'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'.bmp'&lt;/span&gt;)):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_name = os.path.basename(target)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_rels[r_id] = image_name&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 图片关系: ID=&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{r_id}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;, 文件名=&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{image_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 分析drawing文件中的每个图片锚点&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ns = {&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'xdr'&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;'http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing'&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'a'&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;'http://schemas.openxmlformats.org/drawingml/2006/main'&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'r'&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;'http://schemas.openxmlformats.org/officeDocument/2006/relationships'&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 处理多种类型的锚点&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;anchor_type&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;[&lt;span class="code-snippet__string"&gt;'xdr:twoCellAnchor'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'xdr:oneCellAnchor'&lt;/span&gt;]:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;anchor&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;drawing_root.findall(&lt;span class="code-snippet__string"&gt;f'.//&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{anchor_type}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;'&lt;/span&gt;, ns):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 获取from位置 (左上角)&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; from_elem = anchor.find(&lt;span class="code-snippet__string"&gt;'.//xdr:from'&lt;/span&gt;, ns)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;from_elem isNoneand anchor_type ==&amp;nbsp;&lt;span class="code-snippet__string"&gt;'xdr:oneCellAnchor'&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# oneCellAnchor可能直接包含位置信息&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; from_elem = anchor.find(&lt;span class="code-snippet__string"&gt;'.//xdr:pos'&lt;/span&gt;, ns)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;from_elem isnotNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 找到oneCellAnchor位置元素"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;from_elem isNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 锚点没有from元素，跳过"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 变量初始化&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; from_col =&amp;nbsp;&lt;span class="code-snippet__literal"&gt;None&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; from_row =&amp;nbsp;&lt;span class="code-snippet__literal"&gt;None&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 对于twoCellAnchor&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;anchor_type ==&amp;nbsp;&lt;span class="code-snippet__string"&gt;'xdr:twoCellAnchor'&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; col_elem = from_elem.find(&lt;span class="code-snippet__string"&gt;'.//xdr:col'&lt;/span&gt;, ns)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; row_elem = from_elem.find(&lt;span class="code-snippet__string"&gt;'.//xdr:row'&lt;/span&gt;, ns)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;col_elem isNoneor row_elem isNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 锚点missing行或列信息，跳过"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; from_col =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;int&lt;/span&gt;(col_elem.text)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; from_row =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;int&lt;/span&gt;(row_elem.text)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 获取to位置 (右下角)&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; to_elem = anchor.find(&lt;span class="code-snippet__string"&gt;'.//xdr:to'&lt;/span&gt;, ns)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;to_elem isnotNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; to_col =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;int&lt;/span&gt;(to_elem.find(&lt;span class="code-snippet__string"&gt;'.//xdr:col'&lt;/span&gt;, ns).text)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; to_row =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;int&lt;/span&gt;(to_elem.find(&lt;span class="code-snippet__string"&gt;'.//xdr:row'&lt;/span&gt;, ns).text)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; to_col = from_col&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; to_row = from_row&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 对于oneCellAnchor&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;elif&lt;/span&gt;&amp;nbsp;anchor_type ==&amp;nbsp;&lt;span class="code-snippet__string"&gt;'xdr:oneCellAnchor'&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 尝试获取from元素中的行列信息&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; col_elem = from_elem.find(&lt;span class="code-snippet__string"&gt;'./xdr:col'&lt;/span&gt;, ns)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; row_elem = from_elem.find(&lt;span class="code-snippet__string"&gt;'./xdr:row'&lt;/span&gt;, ns)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;col_elem isnotNoneand row_elem isnotNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; from_col =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;int&lt;/span&gt;(col_elem.text)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; from_row =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;int&lt;/span&gt;(row_elem.text)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; to_col = from_col&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; to_row = from_row&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 如果没有行列信息，尝试获取ext元素中的尺寸信息&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ext_elem = anchor.find(&lt;span class="code-snippet__string"&gt;'.//xdr:ext'&lt;/span&gt;, ns)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;ext_elem isnotNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 获取客户端数据&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; client_data = anchor.find(&lt;span class="code-snippet__string"&gt;'.//xdr:clientData'&lt;/span&gt;, ns)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;client_data isnotNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 包含客户端数据"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 获取图片对象索引&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; img_index =&amp;nbsp;&lt;span class="code-snippet__number"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;i, an inenumerate(drawing_root.findall(&lt;span class="code-snippet__string"&gt;f'.//&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{anchor_type}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;'&lt;/span&gt;, ns)):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;an == anchor:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; img_index = i&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;break&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 使用索引生成位置&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; from_row = img_index&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; from_col =&amp;nbsp;&lt;span class="code-snippet__number"&gt;0&lt;/span&gt;&amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 第一列&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; to_row = from_row&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; to_col = from_col&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 获取图片信息&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pic_elem = anchor.find(&lt;span class="code-snippet__string"&gt;'.//xdr:pic'&lt;/span&gt;, ns)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;pic_elem isNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 锚点没有pic元素，跳过"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; blip_elem = pic_elem.find(&lt;span class="code-snippet__string"&gt;'.//a:blip'&lt;/span&gt;, ns)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;blip_elem isNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" pic元素没有blip子元素，跳过"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; embed_attr =&amp;nbsp;&lt;span class="code-snippet__string"&gt;'{http://schemas.openxmlformats.org/officeDocument/2006/relationships}embed'&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; embed = blip_elem.get(embed_attr)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;embed isNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" blip元素没有embed属性，跳过"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 找到图片引用:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{embed}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;embed notin image_rels:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 图片引用&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{embed}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;不在关系映射中，跳过"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_name = image_rels[embed]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 确保from_col和from_row已定义&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;from_col isnotNoneand from_row isnotNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; cell_address =&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{get_column_letter(from_col+&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;)}{from_row+&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 图片&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{image_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;位置:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{sheet_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;!&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{cell_address}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; position_info[image_name] = {&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'sheet'&lt;/span&gt;: sheet_name,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'cell'&lt;/span&gt;: cell_address,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'row'&lt;/span&gt;: from_row+&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'col'&lt;/span&gt;: from_col+&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'to_row'&lt;/span&gt;: to_row+&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;i&lt;span class="code-snippet__string"&gt;f'to_row'&lt;/span&gt;inlocals()&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;&amp;nbsp;from_row+&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'to_col'&lt;/span&gt;: to_col+&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;i&lt;span class="code-snippet__string"&gt;f'to_col'&lt;/span&gt;inlocals()&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;&amp;nbsp;from_col+&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 无法确定图片&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{image_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;的位置"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 4. 提取图片文件&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; media_dir = os.path.join(temp_dir,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'xl'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'media'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;os.path.exists(media_dir):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_files = [f&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;f&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;os.listdir(media_dir)&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;f.lower().endswith((&lt;span class="code-snippet__string"&gt;'.png'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'.jpg'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'.jpeg'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'.gif'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'.bmp'&lt;/span&gt;))]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"从Excel中提取&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;len&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(image_files)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;个图片文件"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 如果我们没有找到任何位置信息，但是drawing文件存在，&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 可能是Excel特殊格式，尝试简单地映射图片1-n到工作表的A1-An单元格&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ifnot position_info andlen(image_files) &amp;gt;&amp;nbsp;&lt;span class="code-snippet__number"&gt;0&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;"未找到图片位置信息，尝试自动分配位置..."&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 获取第一个工作表名称&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; first_sheet_name =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;next&lt;/span&gt;(&lt;span class="code-snippet__built_in"&gt;iter&lt;/span&gt;(sheets_info.values()))[&lt;span class="code-snippet__string"&gt;'name'&lt;/span&gt;]&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;sheets_info&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"Sheet1"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 为每个图片分配一个位置&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;i, img_file inenumerate(&lt;span class="code-snippet__built_in"&gt;sorted&lt;/span&gt;(image_files)):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; row = i +&amp;nbsp;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; col =&amp;nbsp;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# A列&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; cell_address =&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{get_column_letter(col)}{row}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; position_info[img_file] = {&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'sheet'&lt;/span&gt;: first_sheet_name,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'cell'&lt;/span&gt;: cell_address,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'row'&lt;/span&gt;: row,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'col'&lt;/span&gt;: col,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'to_row'&lt;/span&gt;: row,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'to_col'&lt;/span&gt;: col&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 自动分配图片&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{img_file}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;位置:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{first_sheet_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;!&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{cell_address}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;img_file&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;image_files:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; img_path = os.path.join(media_dir, img_file)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image = Image.&lt;span class="code-snippet__built_in"&gt;open&lt;/span&gt;(img_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 创建图片信息对象&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; img_info = {&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'image'&lt;/span&gt;: image,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'filename'&lt;/span&gt;: img_file&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 添加位置信息&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;img_file&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;position_info:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; img_info.update(position_info[img_file])&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 未找到图片&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{img_file}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;的位置信息"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; images_info.append(img_info)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 成功处理图片:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{img_file}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;&amp;nbsp;Exception&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;e:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 处理图片&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{img_file}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;时出错:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;str&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(e)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;"未找到Excel中的media目录"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;&amp;nbsp;Exception&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;e:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"分析Excel文件时出错:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;str&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(e)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;traceback&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; traceback.print_exc()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;finally&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; shutil.rmtree(temp_dir)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;pass&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;return&lt;/span&gt;&amp;nbsp;images_info&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;defcreate_github_folder(repo_owner, repo_name, folder_path, token, branch=&lt;span class="code-snippet__string"&gt;"main"&lt;/span&gt;):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"""在GitHub仓库中创建文件夹（通过创建一个.gitkeep文件）"""&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; url =&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"https://api.github.com/repos/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{repo_owner}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{repo_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/contents/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{folder_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/.gitkeep"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; headers = {&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"Authorization"&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"token&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{token}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"Accept"&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;"application/vnd.github.v3+json"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; data = {&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"message"&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"Create folder&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{folder_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"content"&lt;/span&gt;: base64.b64encode(&lt;span class="code-snippet__string"&gt;b""&lt;/span&gt;).decode(&lt;span class="code-snippet__string"&gt;'utf-8'&lt;/span&gt;),&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"branch"&lt;/span&gt;: branch&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;attempt inrange(MAX_RETRIES):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; response = requests.put(url, headers=headers, data=json.dumps(data), timeout=&lt;span class="code-snippet__number"&gt;30&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;response.status_code&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;[&lt;span class="code-snippet__number"&gt;201&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__number"&gt;200&lt;/span&gt;]: &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 201 Created, 200 OK&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"成功创建文件夹:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{folder_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; returnTrue&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;elif&lt;/span&gt;&amp;nbsp;response.status_code ==&amp;nbsp;&lt;span class="code-snippet__number"&gt;422&lt;/span&gt;: &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 文件可能已存在&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"文件夹可能已存在:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{folder_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; returnTrue&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;elif&lt;/span&gt;&amp;nbsp;response.status_code ==&amp;nbsp;&lt;span class="code-snippet__number"&gt;403&lt;/span&gt;&lt;span class="code-snippet__keyword"&gt;and&lt;/span&gt;&lt;span class="code-snippet__string"&gt;'rate limit'&lt;/span&gt;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;response.text.lower():&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; wait_time = RATE_LIMIT_DELAY * (attempt +&amp;nbsp;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"达到API限制，等待&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{wait_time}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;秒..."&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; time.sleep(wait_time)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"创建文件夹失败 (尝试&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{attempt+&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{MAX_RETRIES}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;):&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{response.status_code}{response.text}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; time.sleep(RETRY_DELAY)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;&amp;nbsp;Exception&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;e:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"创建文件夹时出错 (尝试&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{attempt+&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{MAX_RETRIES}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;):&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;str&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(e)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; time.sleep(RETRY_DELAY)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"无法创建文件夹&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{folder_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;，但将继续尝试上传"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; returnFalse&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;defupload_to_github_with_retry(image_data, image_name, repo_owner, repo_name, repo_path, token, branch=&lt;span class="code-snippet__string"&gt;"main"&lt;/span&gt;):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"""将图片上传到GitHub仓库，包含重试机制"""&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 创建临时文件保存图片&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; temp_dir = tempfile.mkdtemp()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; temp_path = os.path.join(temp_dir, image_name)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; image_data.save(temp_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 读取图片文件内容&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; withopen(temp_path,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'rb'&lt;/span&gt;)&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;f:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; content = f.read()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 清理临时文件&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; os.remove(temp_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; os.rmdir(temp_dir)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;pass&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# Base64编码图片内容&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; content_b64 = base64.b64encode(content).decode(&lt;span class="code-snippet__string"&gt;'utf-8'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 构建API请求&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; url =&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"https://api.github.com/repos/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{repo_owner}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{repo_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/contents/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{repo_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{image_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; headers = {&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"Authorization"&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"token&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{token}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"Accept"&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;"application/vnd.github.v3+json"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; data = {&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"message"&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"Upload image&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{image_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"content"&lt;/span&gt;: content_b64,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"branch"&lt;/span&gt;: branch&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 添加重试机制&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;attempt inrange(MAX_RETRIES):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; response = requests.put(url, headers=headers, data=json.dumps(data), timeout=&lt;span class="code-snippet__number"&gt;60&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;response.status_code&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;[&lt;span class="code-snippet__number"&gt;201&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__number"&gt;200&lt;/span&gt;]: &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 201 Created, 200 OK&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;return&lt;/span&gt;&lt;span class="code-snippet__string"&gt;f"https://raw.githubusercontent.com/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{repo_owner}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{repo_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{branch}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{repo_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{image_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;elif&lt;/span&gt;&amp;nbsp;response.status_code ==&amp;nbsp;&lt;span class="code-snippet__number"&gt;403&lt;/span&gt;&lt;span class="code-snippet__keyword"&gt;and&lt;/span&gt;&lt;span class="code-snippet__string"&gt;'rate limit'&lt;/span&gt;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;response.text.lower():&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; wait_time = RATE_LIMIT_DELAY * (attempt +&amp;nbsp;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"达到API限制，等待&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{wait_time}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;秒..."&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; time.sleep(wait_time)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"上传失败 (尝试&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{attempt+&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{MAX_RETRIES}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;):&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{response.status_code}{response.text}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; time.sleep(RETRY_DELAY)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;&amp;nbsp;Exception&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;e:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"上传过程中出错 (尝试&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{attempt+&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{MAX_RETRIES}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;):&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;str&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(e)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; time.sleep(RETRY_DELAY)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;raise&lt;/span&gt;&amp;nbsp;Exception(&lt;span class="code-snippet__string"&gt;f"上传失败，已达到最大重试次数(&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{MAX_RETRIES}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;)"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;defcreate_excel_with_urls(original_excel_path, images_info, urls):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"""创建带有URL的Excel文件，移除原始图片"""&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 读取原始Excel文件&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; wb = openpyxl.load_workbook(original_excel_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 创建URL映射：sheet_name -&amp;gt; cell_address -&amp;gt; url&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; url_map = {}&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; index_data = [] &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 保存URL索引数据&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;i, (info, url) inenumerate(&lt;span class="code-snippet__built_in"&gt;zip&lt;/span&gt;(images_info, urls)):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;url isNone: &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 跳过上传失败的图片&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet_name = info.get(&lt;span class="code-snippet__string"&gt;'sheet'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; cell_address = info.get(&lt;span class="code-snippet__string"&gt;'cell'&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; filename = info.get(&lt;span class="code-snippet__string"&gt;'filename'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"图片&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{i+&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 保存到索引数据&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; index_data.append({&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'index'&lt;/span&gt;: i+&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'filename'&lt;/span&gt;: filename,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'location'&lt;/span&gt;:&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{sheet_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;!&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{cell_address}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;sheet_name&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;and&lt;/span&gt;&amp;nbsp;cell_address&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"未知"&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;'url'&lt;/span&gt;: url&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; })&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 如果有有效的工作表和单元格地址&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;sheet_name&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;and&lt;/span&gt;&amp;nbsp;cell_address:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;sheet_name notin url_map:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; url_map[sheet_name] = {}&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; url_map[sheet_name][cell_address] = url&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 移除所有工作表中的图片&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;"移除原始Excel中的图片..."&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;sheet_name&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;wb.sheetnames:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet = wb[sheet_name]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ifhasattr(sheet,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'_images'&lt;/span&gt;):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet._images.clear()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 清除可能存在的drawing关系&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ifhasattr(sheet,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'_drawing'&lt;/span&gt;):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet._drawing =&amp;nbsp;&lt;span class="code-snippet__literal"&gt;None&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 在原始工作表中放置URL&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; urls_placed =&amp;nbsp;&lt;span class="code-snippet__literal"&gt;False&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;sheet_name, cell_urls&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;url_map.items():&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;sheet_name&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;wb.sheetnames:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sheet = wb[sheet_name]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"在工作表 '&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{sheet_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;' 中放置URL"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;cell_address, url&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;cell_urls.items():&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; cell = sheet[cell_address]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; cell.value = url&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" URL放置在&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{sheet_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;!&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{cell_address}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{url}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; urls_placed =&amp;nbsp;&lt;span class="code-snippet__literal"&gt;True&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;&amp;nbsp;Exception&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;e:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" 放置URL到&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{cell_address}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;时出错:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;str&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(e)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 创建索引表&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; index_sheet_name =&amp;nbsp;&lt;span class="code-snippet__string"&gt;"IMAGE_URLs"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;index_sheet_name&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;wb.sheetnames:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ws = wb[index_sheet_name]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ws = wb.create_sheet(index_sheet_name)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 设置表头&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; ws[&lt;span class="code-snippet__string"&gt;'A1'&lt;/span&gt;] =&amp;nbsp;&lt;span class="code-snippet__string"&gt;"序号"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; ws[&lt;span class="code-snippet__string"&gt;'B1'&lt;/span&gt;] =&amp;nbsp;&lt;span class="code-snippet__string"&gt;"图片文件名"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; ws[&lt;span class="code-snippet__string"&gt;'C1'&lt;/span&gt;] =&amp;nbsp;&lt;span class="code-snippet__string"&gt;"位置"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; ws[&lt;span class="code-snippet__string"&gt;'D1'&lt;/span&gt;] =&amp;nbsp;&lt;span class="code-snippet__string"&gt;"图片URL"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 填充数据&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;i, data inenumerate(index_data,&amp;nbsp;&lt;span class="code-snippet__number"&gt;2&lt;/span&gt;): &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 从第2行开始&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ws[&lt;span class="code-snippet__string"&gt;f'A&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{i}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;'&lt;/span&gt;] = data[&lt;span class="code-snippet__string"&gt;'index'&lt;/span&gt;]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ws[&lt;span class="code-snippet__string"&gt;f'B&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{i}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;'&lt;/span&gt;] = data[&lt;span class="code-snippet__string"&gt;'filename'&lt;/span&gt;]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ws[&lt;span class="code-snippet__string"&gt;f'C&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{i}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;'&lt;/span&gt;] = data[&lt;span class="code-snippet__string"&gt;'location'&lt;/span&gt;]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ws[&lt;span class="code-snippet__string"&gt;f'D&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{i}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;'&lt;/span&gt;] = data[&lt;span class="code-snippet__string"&gt;'url'&lt;/span&gt;]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 自动调整列宽&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;col&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;[&lt;span class="code-snippet__string"&gt;'A'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'B'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'C'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'D'&lt;/span&gt;]:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; max_length =&amp;nbsp;&lt;span class="code-snippet__number"&gt;0&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;i inrange(&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;len&lt;/span&gt;(index_data) +&amp;nbsp;&lt;span class="code-snippet__number"&gt;2&lt;/span&gt;): &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 包括表头和所有数据行&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; cell_value = ws[&lt;span class="code-snippet__string"&gt;f'&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{col}{i}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;'&lt;/span&gt;].value&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;cell_value:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; max_length =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;max&lt;/span&gt;(max_length,&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;len&lt;/span&gt;(&lt;span class="code-snippet__built_in"&gt;str&lt;/span&gt;(cell_value)))&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; adjusted_width = max_length +&amp;nbsp;&lt;span class="code-snippet__number"&gt;2&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ws.column_dimensions[col].width = adjusted_width&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 保存新的Excel文件&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; original_path = Path(original_excel_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; new_excel_path = original_path.with_name(&lt;span class="code-snippet__string"&gt;f"&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{original_path.stem}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;_with_urls&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{original_path.suffix}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 尝试使用不同的保存模式以确保图片被移除&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;"保存不包含图片的Excel文件..."&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; wb.save(new_excel_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;&amp;nbsp;Exception&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;e:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"保存Excel时出错:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;str&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(e)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 备用方法：创建新的Excel文件而不是修改现有文件&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;"尝试备用方法保存Excel..."&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 创建一个全新的工作簿&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;from&lt;/span&gt;&amp;nbsp;openpyxl&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;Workbook&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; new_wb = Workbook()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 删除默认创建的空白工作表&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"Sheet"&lt;/span&gt;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;new_wb.sheetnames:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;del&lt;/span&gt;&amp;nbsp;new_wb[&lt;span class="code-snippet__string"&gt;"Sheet"&lt;/span&gt;]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 复制所有工作表内容，但不包括图片&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;sheet_name&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;wb.sheetnames:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 创建新工作表&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; new_sheet = new_wb.create_sheet(sheet_name)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; old_sheet = wb[sheet_name]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 复制单元格值和格式&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;row&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;old_sheet.iter_rows(values_only=&lt;span class="code-snippet__literal"&gt;False&lt;/span&gt;):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;cell&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;row:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;cell.value isnotNone:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; new_sheet[cell.coordinate].value = cell.value&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 设置列宽&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;col&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;old_sheet.column_dimensions:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; new_sheet.column_dimensions[col].width = old_sheet.column_dimensions[col].width&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 保存新工作簿&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; new_wb.save(new_excel_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"使用备用方法保存成功"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;&amp;nbsp;Exception&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;ex:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"备用保存方法也失败:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;str&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(ex)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;return&lt;/span&gt;&amp;nbsp;new_excel_path&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;defsave_progress(folder_name, uploaded_images):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"""保存上传进度，用于断点续传"""&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; progress_file =&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{folder_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;_progress.pkl"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; withopen(progress_file,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'wb'&lt;/span&gt;)&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;f:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; pickle.dump(uploaded_images, f)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"进度已保存到文件:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{progress_file}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;&amp;nbsp;Exception&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;e:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"保存进度时出错:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;str&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(e)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;defload_progress(folder_name):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__string"&gt;"""加载上传进度，用于断点续传"""&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; progress_file =&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{folder_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;_progress.pkl"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;os.path.exists(progress_file):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; withopen(progress_file,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'rb'&lt;/span&gt;)&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;f:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; uploaded_images = pickle.load(f)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"已加载上传进度，有&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;len&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(uploaded_images)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;张图片已上传"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;return&lt;/span&gt;&amp;nbsp;uploaded_images&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;else&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;"没有找到保存的进度，将从头开始上传"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;&amp;nbsp;Exception&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;e:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"加载进度时出错:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;str&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(e)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;return&lt;/span&gt;&amp;nbsp;{}&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;defmain():&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 加载配置&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; config, missing = load_config()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;missing:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; message =&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"配置缺失:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__string"&gt;', '&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;.join(missing)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;\n\n请检查config.ini文件或环境变量。"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(message)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 初始化tkinter&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; root = Tk()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; root.withdraw()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; messagebox.showerror(&lt;span class="code-snippet__string"&gt;"配置错误"&lt;/span&gt;, message)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; root.destroy()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;pass&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;return&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 设置GUI选择文件&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; root = Tk()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; root.title(&lt;span class="code-snippet__string"&gt;"Excel图片提取器 - GitHub版"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; root.withdraw() &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 隐藏主窗口&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 设置初始目录为用户主目录&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; initial_dir = os.path.expanduser(&lt;span class="code-snippet__string"&gt;"~"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 让用户选择Excel文件&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; excel_path = filedialog.askopenfilename(&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; title=&lt;span class="code-snippet__string"&gt;"选择Excel文件"&lt;/span&gt;,&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; filetypes=[(&lt;span class="code-snippet__string"&gt;"Excel files"&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;"*.xlsx"&lt;/span&gt;), (&lt;span class="code-snippet__string"&gt;"Excel files"&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;"*.xls"&lt;/span&gt;), (&lt;span class="code-snippet__string"&gt;"All files"&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;"*.*"&lt;/span&gt;)],&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; initialdir=initial_dir&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; )&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; ifnot excel_path:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;"没有选择文件，程序退出"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;return&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 关闭Tk窗口&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; root.destroy()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"\n开始处理文件:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{excel_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 创建新的文件夹名称，基于当前日期和时间&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; now = datetime.now()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; folder_name = now.strftime(&lt;span class="code-snippet__string"&gt;"excel_images_%Y%m%d_%H%M%S"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 检查是否有未完成的上传任务&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; resume_folder =&amp;nbsp;&lt;span class="code-snippet__literal"&gt;None&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; saved_progress_files = [f&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;f&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;os.listdir(&lt;span class="code-snippet__string"&gt;'.'&lt;/span&gt;)&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;f.endswith(&lt;span class="code-snippet__string"&gt;'_progress.pkl'&lt;/span&gt;)]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;saved_progress_files:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;"检测到有未完成的上传任务:"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;i, f inenumerate(saved_progress_files):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; folder = f.replace(&lt;span class="code-snippet__string"&gt;'_progress.pkl'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;''&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" [&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{i+&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;]&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{folder}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f" [0] 创建新任务:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{folder_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; choice =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;input&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;"请选择要继续的任务编号，或输入0创建新任务: "&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; choice_idx =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;int&lt;/span&gt;(choice)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if1 &amp;lt;= choice_idx &amp;lt;=&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;len&lt;/span&gt;(saved_progress_files):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; resume_folder = saved_progress_files[choice_idx-&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;].replace(&lt;span class="code-snippet__string"&gt;'_progress.pkl'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;''&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; folder_name = resume_folder&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;pass&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; repo_path = folder_name&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; uploaded_images = {}&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 加载之前的进度&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;resume_folder:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; uploaded_images = load_progress(folder_name)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 创建GitHub上的文件夹&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; create_github_folder(config[&lt;span class="code-snippet__string"&gt;'username'&lt;/span&gt;], config[&lt;span class="code-snippet__string"&gt;'repo'&lt;/span&gt;], repo_path, config[&lt;span class="code-snippet__string"&gt;'token'&lt;/span&gt;], config[&lt;span class="code-snippet__string"&gt;'branch'&lt;/span&gt;])&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 提取图片和位置信息&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;"正在提取图片和分析位置..."&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; images_info = extract_images_and_positions(excel_path)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"共提取到&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;len&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(images_info)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;张图片"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ifnot images_info:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;"没有找到图片，程序退出"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;return&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 上传到GitHub&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"正在上传图片到GitHub仓库:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{config[&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__string"&gt;'username'&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;]}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{config[&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__string"&gt;'repo'&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;]}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{repo_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; urls = [&lt;span class="code-snippet__literal"&gt;None&lt;/span&gt;] *&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;len&lt;/span&gt;(images_info) &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 预先填充None值&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; batch_size =&amp;nbsp;&lt;span class="code-snippet__number"&gt;20&lt;/span&gt;&amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 每批处理的图片数量&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;batch_idx inrange(&lt;span class="code-snippet__number"&gt;0&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;len&lt;/span&gt;(images_info), batch_size):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; batch_end =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;min&lt;/span&gt;(batch_idx + batch_size,&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;len&lt;/span&gt;(images_info))&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"\n处理第&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{batch_idx+&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;到&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{batch_end}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;张图片（共&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;len&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(images_info)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;张）"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;for&lt;/span&gt;&amp;nbsp;i inrange(batch_idx, batch_end):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; info = images_info[i]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 生成唯一的文件名&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; original_name = info.get(&lt;span class="code-snippet__string"&gt;'filename'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"image_&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{i+&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; safe_name = re.sub(&lt;span class="code-snippet__string"&gt;r'[^\w.-]'&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__string"&gt;'_'&lt;/span&gt;, original_name)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; timestamp =&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;int&lt;/span&gt;(time.time() *&amp;nbsp;&lt;span class="code-snippet__number"&gt;1000&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_name =&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{safe_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;_&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{timestamp}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;.png"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 检查是否已上传此图片&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;original_name&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;in&lt;/span&gt;&amp;nbsp;uploaded_images:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"跳过已上传的图片 (&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{i+&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;len&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(images_info)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;):&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{original_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; urls[i] = uploaded_images[original_name]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;continue&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 上传并获取URL&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; url = upload_to_github_with_retry(&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; info[&lt;span class="code-snippet__string"&gt;'image'&lt;/span&gt;], image_name, config[&lt;span class="code-snippet__string"&gt;'username'&lt;/span&gt;], config[&lt;span class="code-snippet__string"&gt;'repo'&lt;/span&gt;],&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; repo_path, config[&lt;span class="code-snippet__string"&gt;'token'&lt;/span&gt;], config[&lt;span class="code-snippet__string"&gt;'branch'&lt;/span&gt;]&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; )&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; urls[i] = url&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; uploaded_images[original_name] = url&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"上传进度:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{i+&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;/&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;len&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(images_info)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;-&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{url}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 每上传5张图片保存一次进度&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;(i +&amp;nbsp;&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;) %&amp;nbsp;&lt;span class="code-snippet__number"&gt;5&lt;/span&gt;&amp;nbsp;==&amp;nbsp;&lt;span class="code-snippet__number"&gt;0&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; save_progress(folder_name, uploaded_images)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 添加短暂延迟避免API限制&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; time.sleep(random.uniform(&lt;span class="code-snippet__number"&gt;1&lt;/span&gt;,&amp;nbsp;&lt;span class="code-snippet__number"&gt;3&lt;/span&gt;))&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;&amp;nbsp;Exception&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;e:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"上传图片&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{original_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&amp;nbsp;失败:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;str&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(e)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; save_progress(folder_name, uploaded_images)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 每批处理完保存进度&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; save_progress(folder_name, uploaded_images)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 批量处理后等待一段时间，避免API限制&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;batch_end &amp;lt;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;len&lt;/span&gt;(images_info):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"批量处理完成，等待30秒后继续..."&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; time.sleep(&lt;span class="code-snippet__number"&gt;30&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 创建新的Excel文件&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;"\n正在创建新的Excel文件..."&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; new_excel_path = create_excel_with_urls(excel_path, images_info, urls)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; message =&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"处理完成！新文件保存在:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{new_excel_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(message)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 显示完成信息&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;os.name ==&amp;nbsp;&lt;span class="code-snippet__string"&gt;'posix'&lt;/span&gt;: &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# macOS或Linux&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; os.system(&lt;span class="code-snippet__string"&gt;f"osascript -e 'display notification \"新文件保存在:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{new_excel_path}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;\" with title \"处理完成\"'"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;elif&lt;/span&gt;&amp;nbsp;os.name ==&amp;nbsp;&lt;span class="code-snippet__string"&gt;'nt'&lt;/span&gt;: &amp;nbsp;&lt;span class="code-snippet__comment"&gt;# Windows&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; root = Tk()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; root.withdraw()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; messagebox.showinfo(&lt;span class="code-snippet__string"&gt;"处理完成"&lt;/span&gt;, message)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; root.destroy()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;pass&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__comment"&gt;# 处理完成后，删除进度文件&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; progress_file =&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{folder_name}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;_progress.pkl"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;os.path.exists(progress_file):&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; os.remove(progress_file)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(&lt;span class="code-snippet__string"&gt;f"已删除进度文件:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{progress_file}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;pass&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;&amp;nbsp;Exception&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;as&lt;/span&gt;&amp;nbsp;e:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; error_message =&amp;nbsp;&lt;span class="code-snippet__string"&gt;f"处理过程中出错:&amp;nbsp;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;&lt;span class="code-snippet__built_in"&gt;str&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;&lt;span class="code-snippet__subst"&gt;(e)}&lt;/span&gt;&lt;/span&gt;&lt;span class="code-snippet__string"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__built_in"&gt;print&lt;/span&gt;(error_message)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;import&lt;/span&gt;&amp;nbsp;traceback&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; traceback.print_exc()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;try&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; root = Tk()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; root.withdraw()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; messagebox.showerror(&lt;span class="code-snippet__string"&gt;"错误"&lt;/span&gt;, error_message)&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; root.destroy()&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;except&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="code-snippet__keyword"&gt;pass&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&lt;span class="code-snippet__keyword"&gt;if&lt;/span&gt;&amp;nbsp;__name__ ==&amp;nbsp;&lt;span class="code-snippet__string"&gt;"__main__"&lt;/span&gt;:&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span leaf=""&gt;&amp;nbsp; &amp;nbsp; main()&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/section&gt;&lt;section style="color: rgb(182, 182, 182);box-sizing: border-box;"&gt;&lt;p style="text-align: center;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;b style="box-sizing: border-box;"&gt;&lt;span leaf=""&gt;仅供参考，更具体请问 ai&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p style="text-align: center;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;b style="box-sizing: border-box;"&gt;&lt;span leaf=""&gt;&lt;br&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p data-pm-slice="0 0 []" style="box-sizing: border-box;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;overflow-wrap: break-word !important;clear: both;min-height: 1em;color: rgb(62, 62, 62);font-family: &amp;quot;PingFang SC&amp;quot;, system-ui, -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-size: 15px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 1px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"&gt;&lt;span leaf=""&gt;具体路径有些长，之后或许会写更详细的分享~但这件事对我来说很值得！&lt;/span&gt;&lt;/p&gt;&lt;p data-pm-slice="0 0 []" style="box-sizing: border-box;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;overflow-wrap: break-word !important;clear: both;min-height: 1em;color: rgb(62, 62, 62);font-family: &amp;quot;PingFang SC&amp;quot;, system-ui, -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-size: 15px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 1px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"&gt;&lt;span leaf="" style="box-sizing: border-box !important;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;overflow-wrap: break-word !important;"&gt;也??欢迎来这里：&lt;/span&gt;&lt;/p&gt;&lt;p style="box-sizing: border-box;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;overflow-wrap: break-word !important;clear: both;min-height: 1em;color: rgb(62, 62, 62);font-family: &amp;quot;PingFang SC&amp;quot;, system-ui, -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-size: 15px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 1px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"&gt;&lt;span leaf="" style="box-sizing: border-box !important;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;overflow-wrap: break-word !important;"&gt;&lt;span textstyle="" style="font-size: 12px;"&gt;cupaobaidou.com&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="box-sizing: border-box;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;overflow-wrap: break-word !important;clear: both;min-height: 1em;color: rgb(62, 62, 62);font-family: &amp;quot;PingFang SC&amp;quot;, system-ui, -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-size: 15px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 1px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"&gt;&lt;span leaf="" style="box-sizing: border-box !important;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;overflow-wrap: break-word !important;"&gt;&lt;span textstyle="" style="font-size: 12px;"&gt;baidou.work&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="box-sizing: border-box;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;overflow-wrap: break-word !important;clear: both;min-height: 1em;color: rgb(62, 62, 62);font-family: &amp;quot;PingFang SC&amp;quot;, system-ui, -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-size: 15px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 1px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"&gt;&lt;span leaf="" style="box-sizing: border-box !important;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;overflow-wrap: break-word !important;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;section class="mp_profile_iframe_wrp" nodeleaf="" style="box-sizing: border-box !important;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;display: block;max-width: 100%;overflow-wrap: break-word !important;color: rgb(62, 62, 62);font-family: &amp;quot;PingFang SC&amp;quot;, system-ui, -apple-system, &amp;quot;system-ui&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-size: 15px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 1px;orphans: 2;text-align: justify;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;background-color: rgb(255, 255, 255);"&gt;&lt;mp-common-profile class="js_uneditable custom_select_card mp_profile_iframe js_wx_tap_highlight mp_common_widget" data-pluginname="mpprofile" data-nickname="醋泡白豆" data-alias="cpbd1121" data-index="0" data-from="2" data-headimg="http://mmbiz.qpic.cn/mmbiz_png/4ADhmAJPyqCfQIeWCibmq12nNoQPoovmGAkQXibbHrPEWd6dbEMeXDsHmR2FvB44AqgIod9yvnvRyOiaOAicCc7C1g/300?wx_fmt=png&amp;amp;wxfrom=19" data-signature="Friendly Ambitious Nerd设计有趣支持系统 煽风点火个人生活" data-id="MzI2OTIxMTg1Nw==" data-is_biz_ban="0" data-origin_num="254" data-biz_account_status="0" data-service_type="1" data-verify_status="0" data-isban="0"&gt;&lt;/mp-common-profile&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;</description></item><item><title>不要打造「第二大脑」</title><link>https://new.cupaobaidou.com/archives/920/</link><pubDate>Tue, 12 Dec 2023 21:59:00 +0800</pubDate><guid>https://new.cupaobaidou.com/archives/920/</guid><description>&lt;section style="line-height: 2; font-size: 15px; letter-spacing: 1px; padding: 0px 10px; box-sizing: border-box; font-style: normal; font-weight: 400; text-align: justify; visibility: visible;"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; line-height: 2; font-size: 15px; letter-spacing: 1px; font-style: normal; font-weight: 400; text-align: justify; visibility: visible;" powered-by="xiumi.us"&gt;系列前篇：&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; line-height: 2; font-size: 15px; letter-spacing: 1px; font-style: normal; font-weight: 400; text-align: justify; visibility: visible;" powered-by="xiumi.us"&gt;&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247484638&amp;amp;idx=1&amp;amp;sn=15c745a4a8c015dbfb426fe095e34079&amp;amp;chksm=eae28560dd950c767d9a319df5c2a9a2229e65cd9271a91bd93105b2f7db6e938f09a0728395&amp;amp;scene=21#wechat_redirect" textvalue="《我是如何用「笔记」对抗现实世界的「不确定性」和「信息浪潮」？》" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2" hasload="1" style="visibility: visible;"&gt;《&lt;span style="font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; visibility: visible;"&gt;我是如何用「笔记」对抗现实世界的「不确定性」和「信息浪潮」？&lt;/span&gt;&lt;span style="font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; visibility: visible;"&gt;》&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; line-height: 2; font-size: 15px; letter-spacing: 1px; font-style: normal; font-weight: 400; text-align: justify; visibility: visible;" powered-by="xiumi.us"&gt;&lt;br style="visibility: visible;"&gt;&lt;/p&gt;&lt;section style="box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;不要打造完美的第二大脑，而是多精进第一大脑。所谓的「第二大脑」仅仅是协助第一大脑在思考时候的辅助工具，解放一些大脑带宽。&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;可以把&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247484638&amp;amp;idx=1&amp;amp;sn=15c745a4a8c015dbfb426fe095e34079&amp;amp;chksm=eae28560dd950c767d9a319df5c2a9a2229e65cd9271a91bd93105b2f7db6e938f09a0728395&amp;amp;scene=21#wechat_redirect" textvalue="构建第二大脑的「笔记」" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2" hasload="1" style="visibility: visible;"&gt;构建第二大脑的「笔记」&lt;/a&gt;看做一种网页 cookies 缓存，或是做数学题时候的辅助线。更具象化地说，笔记可以是卡扣，可以是电力工人爬电线杆时候穿的那双鞋，只能能够保证灵感不丢失，自己不往下掉，而自己切实的动脑理解、联系、思考，才能让自己往杆子向上爬。&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; box-sizing: border-box; visibility: visible;"&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.5879629629629629" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; width: 657px !important; box-sizing: border-box; height: auto !important; visibility: visible !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="1" src="https://new.cupaobaidou.com/usr/uploads/2024/01/3273642031.png" _width="100%" crossorigin="anonymous" alt="Image" data-fail="0"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;过于依赖笔记软件所构建的「完美第二大脑」，南辕北辙，还会减慢自己大脑的思考速度。这就像为浏览器安装了完备的各类插件——翻译、剪贴、Ai 总结等，却没有升级电脑本身的硬件，有时候这些个插件可能卡死，运行不起来。&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: left;justify-content: flex-start;margin: 10px 0px;display: flex;flex-flow: row;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;vertical-align: bottom;width: auto;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;align-self: flex-end;margin: 0px 10px 0px 0px;box-sizing: border-box;"&gt;&lt;section style="font-size: 18px;margin: 0px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;border-width: 1px;border-style: solid;border-color: rgb(255, 202, 0);background-color: rgb(255, 202, 0);text-align: center;width: 1.8em;height: 1.8em;line-height: 1.8em;border-radius: 100%;margin-left: auto;margin-right: auto;font-size: 20px;color: rgb(255, 255, 255);box-sizing: border-box;" data-style="display: inline-block; border-width: 1px; border-style: solid; border-color: rgb(255, 202, 0); background-color: rgb(255, 202, 0); text-align: center; width: 1.8em; height: 1.8em; line-height: 1.8em; border-radius: 100%; margin-left: auto; margin-right: auto; font-size: 20px; color: rgb(255, 255, 255); box-sizing: border-box;" class="js_darkmode__0"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;1&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: bottom;width: auto;border-bottom: 0px solid rgb(46, 65, 113);border-bottom-right-radius: 0px;align-self: flex-end;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;box-sizing: border-box;" data-style="display: inline-block; vertical-align: bottom; width: auto; border-bottom: 0px solid rgb(46, 65, 113); border-bottom-right-radius: 0px; align-self: flex-end; min-width: 10%; max-width: 100%; flex: 0 0 auto; height: auto; box-sizing: border-box;" class="js_darkmode__1"&gt;&lt;section style="font-size: 16px;color: rgb(0, 66, 91);text-align: justify;box-sizing: border-box;" powered-by="xiumi.us" data-style="font-size: 16px; color: rgb(0, 66, 91); text-align: justify; box-sizing: border-box;" class="js_darkmode__2"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;我对笔记看法的转变&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 4px 0px 2px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="background-color: rgb(37, 105, 117);height: 1px;box-sizing: border-box;" data-style="background-color: rgb(37, 105, 117); height: 1px; box-sizing: border-box;" class="js_darkmode__3"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: bottom;width: auto;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;align-self: flex-end;box-sizing: border-box;"&gt;&lt;section style="transform: perspective(0px);-webkit-transform: perspective(0px);-moz-transform: perspective(0px);-o-transform: perspective(0px);transform-style: flat;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="text-align: center;transform: rotateX(180deg);-webkit-transform: rotateX(180deg);-moz-transform: rotateX(180deg);-o-transform: rotateX(180deg);box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: 5px;height: 5px;vertical-align: top;overflow: hidden;border-width: 0px;border-radius: 227px;border-style: none;border-color: rgb(62, 62, 62);background-color: rgb(255, 202, 0);box-sizing: border-box;" data-style="display: inline-block; width: 5px; height: 5px; vertical-align: top; overflow: hidden; border-width: 0px; border-radius: 227px; border-style: none; border-color: rgb(62, 62, 62); background-color: rgb(255, 202, 0); box-sizing: border-box;" class="js_darkmode__4"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;今年，我对笔记的看法发生了改变。当然，之前文章的方法论也持续在应用，但目的已经改变，不是建立一个完美的第二大脑，而是把笔记作为方法，把让第一大脑更好思考作为最终目标。因此，自己的笔记系统看似混乱，看似永远处于未完成的状态也是可以接受的，只要大脑能够有条理地思考，有条理地写作。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;笔记是文字等信息载体的组织形式，什么情况下需要记笔记？&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;一种情况是间接信息输入，书籍、杂志、推文、电影等由他人创组的「意识凝固体」，我们享用之后，让他们通过自己之后，用自己的语言来进行重组，帮助自己理解。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;另一种情况是自己一手的感受、经历和经验。这是自己对现实世界的直接感受，从工作中生活中最私人最定制化的内容记录。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;我的知识更新的生命周期参考了 Heptabase 创始人 Alan 的文章做了更新：探索——收集——思考——创作——分享。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;探索：从各类成册的书籍、博客、播客等平台摄取信息。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;收集：划线高亮、自己的评论等收集到笔记工具中。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;思考：整理笔记的时候自动联系不同主题，或者 sleep on it 或者同类主题进行堆肥。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;创作：把各个想法（单个的珍珠）通过自己的方式组合起来（串成项链），单独做出完整的作品。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;分享：把阶段性的「作品」分享到别人能看到的地方，即能让大家纠错，也能为大家提供一个探索的对象。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;笔记工具在收集和思考的部分起到很大的作用。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;最原始的工具是纸质的笔记本，直接手动摘抄，或者从其他材料上裁剪下来，粘贴到自己的本子上。数字时代，合适的软件加速并优化了这一过程。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: left;justify-content: flex-start;margin: 10px 0px;display: flex;flex-flow: row;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;vertical-align: bottom;width: auto;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;align-self: flex-end;margin: 0px 10px 0px 0px;box-sizing: border-box;"&gt;&lt;section style="font-size: 18px;margin: 0px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;border-width: 1px;border-style: solid;border-color: rgb(255, 202, 0);background-color: rgb(255, 202, 0);text-align: center;width: 1.8em;height: 1.8em;line-height: 1.8em;border-radius: 100%;margin-left: auto;margin-right: auto;font-size: 20px;color: rgb(255, 255, 255);box-sizing: border-box;" data-style="display: inline-block; border-width: 1px; border-style: solid; border-color: rgb(255, 202, 0); background-color: rgb(255, 202, 0); text-align: center; width: 1.8em; height: 1.8em; line-height: 1.8em; border-radius: 100%; margin-left: auto; margin-right: auto; font-size: 20px; color: rgb(255, 255, 255); box-sizing: border-box;" class="js_darkmode__5"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;2&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: bottom;width: auto;border-bottom: 0px solid rgb(46, 65, 113);border-bottom-right-radius: 0px;align-self: flex-end;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;box-sizing: border-box;" data-style="display: inline-block; vertical-align: bottom; width: auto; border-bottom: 0px solid rgb(46, 65, 113); border-bottom-right-radius: 0px; align-self: flex-end; min-width: 10%; max-width: 100%; flex: 0 0 auto; height: auto; box-sizing: border-box;" class="js_darkmode__6"&gt;&lt;section style="font-size: 16px;color: rgb(0, 66, 91);text-align: justify;box-sizing: border-box;" powered-by="xiumi.us" data-style="font-size: 16px; color: rgb(0, 66, 91); text-align: justify; box-sizing: border-box;" class="js_darkmode__7"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;我的信息处理过程&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 4px 0px 2px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="background-color: rgb(37, 105, 117);height: 1px;box-sizing: border-box;" data-style="background-color: rgb(37, 105, 117); height: 1px; box-sizing: border-box;" class="js_darkmode__8"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: bottom;width: auto;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;align-self: flex-end;box-sizing: border-box;"&gt;&lt;section style="transform: perspective(0px);-webkit-transform: perspective(0px);-moz-transform: perspective(0px);-o-transform: perspective(0px);transform-style: flat;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="text-align: center;transform: rotateX(180deg);-webkit-transform: rotateX(180deg);-moz-transform: rotateX(180deg);-o-transform: rotateX(180deg);box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: 5px;height: 5px;vertical-align: top;overflow: hidden;border-width: 0px;border-radius: 227px;border-style: none;border-color: rgb(62, 62, 62);background-color: rgb(255, 202, 0);box-sizing: border-box;" data-style="display: inline-block; width: 5px; height: 5px; vertical-align: top; overflow: hidden; border-width: 0px; border-radius: 227px; border-style: none; border-color: rgb(62, 62, 62); background-color: rgb(255, 202, 0); box-sizing: border-box;" class="js_darkmode__9"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;硬件阅读工具为Pad、Mac；&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;软件阅读工具：微信读书来读书、Readwise 和 Heptabase 内置的浏览器来阅读长文。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;当然有很多可以替代的工具，选择自己喜欢的就好。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;重要的是构建自己信息输入整理和输出的流程。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;一般的阅读软件都能够快速将自己的随手写的感受、划线部分批量导出，导出之后就获得了更针对于自己的比较精华的部分，再针对这部分进行相关笔记的整理。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;遂到了针对这些内容进行思考的阶段。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;由自己的语言组织的笔记最能够帮助自己确认自己是否真正理解，这同时算是一种费曼学习法。他人对某个观点的排列组合已经非常完美的时候，我们能做到最好的就是录入最精简深刻的表达方式，当然自己转述的时候还是用自己的语言。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;但是这种线性重写笔记，其实对大脑是一种束缚。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;因为我们的思想由相互关联的思想网络组成。线性的笔记有三点问题：&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;首先，必须将观点想法强加到特定的顺序中。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;其次，必须做出权衡并放弃不适合当前顺序的想法。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;最后，有些观点想法可能出现在不同的主题中，组织起来非常混乱。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;理想的状态是我有一个全备的资料库，而针对不同的主题，都可以任意重复调用这些库中的观点，用网状的形式排列出来。排列布局是思考的过程。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%;text-align: left;justify-content: flex-start;display: flex;flex-flow: row;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;background-color: rgb(255, 255, 255);min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;padding: 15px;align-self: flex-start;box-sizing: border-box;" data-style="display: inline-block; width: auto; vertical-align: top; background-color: rgb(255, 255, 255); min-width: 10%; max-width: 100%; flex: 0 0 auto; height: auto; padding: 15px; align-self: flex-start; box-sizing: border-box;" class="js_darkmode__10"&gt;&lt;section style="margin: -17px 0% -11px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;vertical-align: top;overflow: hidden;height: 0px;width: 0px;padding: 0px;border-style: solid;border-width: 9px 7px 0px;border-color: rgb(255, 202, 0) rgba(255, 255, 255, 0) rgb(251, 133, 129);box-sizing: border-box;" data-style="display: inline-block; vertical-align: top; overflow: hidden; height: 0px; width: 0px; padding: 0px; border-style: solid; border-width: 9px 7px 0px; border-color: rgb(255, 202, 0) rgba(255, 255, 255, 0) rgb(251, 133, 129); box-sizing: border-box;" class="js_darkmode__11"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: justify;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&amp;nbsp;信息收集、思考用 Heptabase&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485232&amp;amp;idx=1&amp;amp;sn=0ead576de7242b33d60bb862747efbb4&amp;amp;chksm=eae2868edd950f9880f287e9d538564f0b8eaa5408733e116f8f1585a18521d939e56b7dc927&amp;amp;scene=21#wechat_redirect" textvalue="Heptabase" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;Heptabase&lt;/a&gt; 是我今年使用最多的软件，它的设计使用逻辑完美匹配了我的笔记系统，匹配了我将优化自身大脑作为第一目标的笔记记录系统。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;Card、Map 是其中最重要的两个概念。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;所有的 Card &amp;nbsp;都储存在卡片库中，而 Map 则是他们用不同的形式来排列组合呈现的形式，同一张 Card 能够重复出现在不同的 Map 中；&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.625" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 410.625px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="2" src="https://new.cupaobaidou.com/usr/uploads/2024/01/646142923.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 12px;color: rgb(160, 160, 160);box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="text-align: center;margin: 0px 0px 4px;white-space: normal;padding: 0px;box-sizing: border-box;"&gt;包含所有 Card 的卡片库&lt;/p&gt;&lt;p style="text-align: center;white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;Map 的是一个视觉化的大脑，我可以在 Heptabase 的右边栏通过各种方式调出自己所有卡片笔记，然后通过拖拽，将必要的信息放在 Map 上进行思考，重新排列。&amp;nbsp;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.625" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 410.625px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="3" src="https://new.cupaobaidou.com/usr/uploads/2024/01/81413839.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 12px;color: rgb(160, 160, 160);box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="text-align: center;margin: 0px 0px 4px;white-space: normal;padding: 0px;box-sizing: border-box;"&gt;这是「白豆入坑Heptabase记录」Map&lt;/p&gt;&lt;p style="text-align: center;white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.625" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 410.625px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="4" src="https://new.cupaobaidou.com/usr/uploads/2024/01/1819142205.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: center;font-size: 12px;color: rgb(160, 160, 160);box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px 0px 4px;padding: 0px;box-sizing: border-box;"&gt;这是最顶层的 Map ，每个都相当于一个文件夹&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.625" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 410.625px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="5" src="https://new.cupaobaidou.com/usr/uploads/2024/01/2336076931.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 12px;color: rgb(160, 160, 160);box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="text-align: center;margin: 0px 0px 4px;white-space: normal;padding: 0px;box-sizing: border-box;"&gt;这是最顶层「阅读」主题的 Map 中嵌套的 Map&lt;/p&gt;&lt;p style="text-align: center;white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;Section 和 Links 是 Map 中两个强大的功能，Section 可以把相似的卡片族群几种到一起，Links 是用「线」的方式在更小级别的内容块上进行跨区域的链接。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.625" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 410.625px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="6" src="https://new.cupaobaidou.com/usr/uploads/2024/01/1361412355.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 12px;color: rgb(160, 160, 160);box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="text-align: center;margin: 0px 0px 4px;white-space: normal;padding: 0px;box-sizing: border-box;"&gt;一个 Map 上可同时存在多种形式的信息介质&lt;/p&gt;&lt;p style="text-align: center;white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;在 Map 上的 Card 可以展开，也可以收起来只留下题目。Map 就像 Notion 中的块，可以无限制层级进行嵌套。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;我的使用方式是利用第三方软件将其他位置的阅读感受和划线导入 Heptabase 的卡片库。建立相应的自己主题的 Maps，除了项目制外的 Map， 其他的 Map 都算是我的永久笔记，都是永远处于未完成的状态，都是每周都会过几遍的。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;卡片库可能很乱，但 Map 就是我目前更新最前的关于该主题的思考，当然现在 Heptabase 的卡片库创作者也用了看板、标签、日志等系列的筛选方式，自动也非常可以。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;这算是超越了线性的逻辑记录的笔记。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%;text-align: left;justify-content: flex-start;display: flex;flex-flow: row;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;background-color: rgb(255, 255, 255);min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;padding: 15px;align-self: flex-start;box-sizing: border-box;" data-style="display: inline-block; width: auto; vertical-align: top; background-color: rgb(255, 255, 255); min-width: 10%; max-width: 100%; flex: 0 0 auto; height: auto; padding: 15px; align-self: flex-start; box-sizing: border-box;" class="js_darkmode__12"&gt;&lt;section style="margin: -17px 0% -11px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;vertical-align: top;overflow: hidden;height: 0px;width: 0px;padding: 0px;border-style: solid;border-width: 9px 7px 0px;border-color: rgb(255, 202, 0) rgba(255, 255, 255, 0) rgb(251, 133, 129);box-sizing: border-box;" data-style="display: inline-block; vertical-align: top; overflow: hidden; height: 0px; width: 0px; padding: 0px; border-style: solid; border-width: 9px 7px 0px; border-color: rgb(255, 202, 0) rgba(255, 255, 255, 0) rgb(251, 133, 129); box-sizing: border-box;" class="js_darkmode__13"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: justify;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;流水线记录用表单&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;为了降低日常事务性记录的阻力，我使用的&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485008&amp;amp;idx=1&amp;amp;sn=7f53aaa2624ba5b197f31f38de711ca1&amp;amp;chksm=eae287eedd950ef8f12bbce250b9a7f814f24a1671832f37cc9220f152f2c4adb9344e05b61f&amp;amp;scene=21#wechat_redirect" textvalue="另一工具即问卷表单" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;另一工具即问卷表单&lt;/a&gt;，目前这些个表单：&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;读书表单：每读完一本书，要填一份表单&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;周复盘表单：用结构化的方式来反思复盘一周&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;系统优化表单：阶段性反思自己的系统&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;朋友见面表单：和朋友见面聊天等的记录&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;这种结构化的记录适合我日常做的事情，减少了思考，不会让信息过度堆积。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;且结合上了一些自动化工具（如 Keyboard Maestro），输入阻力非常低，他们形成的 excel 表格也很容易进行二次编辑和迁移，如果要制作成 Anki 卡片也是非常方便。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(125, 133, 145);box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.5120370370370371" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 335.384px !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="7" src="https://new.cupaobaidou.com/usr/uploads/2024/01/3985202448.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 12px;color: rgb(160, 160, 160);box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="text-align: center;white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;周复盘表单自动组成的表格 结构化信息&lt;/p&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;section style="margin: 10px 0%;text-align: left;justify-content: flex-start;display: flex;flex-flow: row;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;background-color: rgb(255, 255, 255);min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;padding: 15px;align-self: flex-start;box-sizing: border-box;" data-style="display: inline-block; width: auto; vertical-align: top; background-color: rgb(255, 255, 255); min-width: 10%; max-width: 100%; flex: 0 0 auto; height: auto; padding: 15px; align-self: flex-start; box-sizing: border-box;" class="js_darkmode__14"&gt;&lt;section style="margin: -17px 0% -11px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;vertical-align: top;overflow: hidden;height: 0px;width: 0px;padding: 0px;border-style: solid;border-width: 9px 7px 0px;border-color: rgb(255, 202, 0) rgba(255, 255, 255, 0) rgb(251, 133, 129);box-sizing: border-box;" data-style="display: inline-block; vertical-align: top; overflow: hidden; height: 0px; width: 0px; padding: 0px; border-style: solid; border-width: 9px 7px 0px; border-color: rgb(255, 202, 0) rgba(255, 255, 255, 0) rgb(251, 133, 129); box-sizing: border-box;" class="js_darkmode__15"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: justify;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;不同软件中的内容如何整合呢？&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;目前我的系统中，只有问卷结果和 Heptabase 卡片库两种。之前使用的 Notion、flomo 等软件都成了一次记录的稿纸，不会重复查看的，记录的过程完成就达到了目的。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;问卷结果主要是调整复盘自己的行动，且都是自己输入的文字，功能性比较强，无需再迁移到 Heptabase。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;最终整合其实就是将笔记开源，即写成文章，&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485096&amp;amp;idx=1&amp;amp;sn=fa38cef7a328d8ed109011f3d04b6545&amp;amp;chksm=eae28716dd950e006642e200d7d86e24d079d1b0e8e365e6105db0ef9d82a937df940ab1cd08&amp;amp;scene=21#wechat_redirect" textvalue="「产粮食」" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;「产粮食」&lt;/a&gt;，&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247484836&amp;amp;idx=1&amp;amp;sn=7b1578eef919f8e16b5e27ca1b88a6ac&amp;amp;chksm=eae2841add950d0c0d9dd5cbe329cd3267f3d2782abafd540fa3ef305910252e5003d404179e&amp;amp;scene=21#wechat_redirect" textvalue="发在公众号、微博、网站上。" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;发在公众号、微博、网站上。&lt;/a&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;「粮食」产得越多，就越不担心笔记会丢失，因为这时候第一大脑已经不再需要笔记。阅读了&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485039&amp;amp;idx=1&amp;amp;sn=16d4fb05d754dba9cbae09a24e68e21f&amp;amp;chksm=eae287d1dd950ec7963c2108c5746b145b3cd477c7a0505f8f378dd56a4c8637691f001cdf0e&amp;amp;scene=21#wechat_redirect" textvalue="近三千篇胡老师瑚琏少年公众号文章" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;近三千篇胡老师瑚琏少年公众号文章&lt;/a&gt;，我相信他完全不需要笔记这一介质，因为针对类似的主题，产了太多粮食。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: left;justify-content: flex-start;margin: 10px 0px;display: flex;flex-flow: row;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;vertical-align: bottom;width: auto;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;align-self: flex-end;margin: 0px 10px 0px 0px;box-sizing: border-box;"&gt;&lt;section style="font-size: 18px;margin: 0px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;border-width: 1px;border-style: solid;border-color: rgb(255, 202, 0);background-color: rgb(255, 202, 0);text-align: center;width: 1.8em;height: 1.8em;line-height: 1.8em;border-radius: 100%;margin-left: auto;margin-right: auto;font-size: 20px;color: rgb(255, 255, 255);box-sizing: border-box;" data-style="display: inline-block; border-width: 1px; border-style: solid; border-color: rgb(255, 202, 0); background-color: rgb(255, 202, 0); text-align: center; width: 1.8em; height: 1.8em; line-height: 1.8em; border-radius: 100%; margin-left: auto; margin-right: auto; font-size: 20px; color: rgb(255, 255, 255); box-sizing: border-box;" class="js_darkmode__16"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;3&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: bottom;width: auto;border-bottom: 0px solid rgb(46, 65, 113);border-bottom-right-radius: 0px;align-self: flex-end;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;box-sizing: border-box;" data-style="display: inline-block; vertical-align: bottom; width: auto; border-bottom: 0px solid rgb(46, 65, 113); border-bottom-right-radius: 0px; align-self: flex-end; min-width: 10%; max-width: 100%; flex: 0 0 auto; height: auto; box-sizing: border-box;" class="js_darkmode__17"&gt;&lt;section style="font-size: 16px;color: rgb(0, 66, 91);text-align: justify;box-sizing: border-box;" powered-by="xiumi.us" data-style="font-size: 16px; color: rgb(0, 66, 91); text-align: justify; box-sizing: border-box;" class="js_darkmode__18"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;「 产粮食」让笔记流动&lt;/strong&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;也让粮食中的虫子被晒出来&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 4px 0px 2px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="background-color: rgb(37, 105, 117);height: 1px;box-sizing: border-box;" data-style="background-color: rgb(37, 105, 117); height: 1px; box-sizing: border-box;" class="js_darkmode__19"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: bottom;width: auto;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;align-self: flex-end;box-sizing: border-box;"&gt;&lt;section style="transform: perspective(0px);-webkit-transform: perspective(0px);-moz-transform: perspective(0px);-o-transform: perspective(0px);transform-style: flat;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="text-align: center;transform: rotateX(180deg);-webkit-transform: rotateX(180deg);-moz-transform: rotateX(180deg);-o-transform: rotateX(180deg);box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: 5px;height: 5px;vertical-align: top;overflow: hidden;border-width: 0px;border-radius: 227px;border-style: none;border-color: rgb(62, 62, 62);background-color: rgb(255, 202, 0);box-sizing: border-box;" data-style="display: inline-block; width: 5px; height: 5px; vertical-align: top; overflow: hidden; border-width: 0px; border-radius: 227px; border-style: none; border-color: rgb(62, 62, 62); background-color: rgb(255, 202, 0); box-sizing: border-box;" class="js_darkmode__20"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;"&gt;&lt;/span&gt;&lt;br&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;使用 Heptabase 搭建的笔记系统是第二大脑吗？并不完全是，这是因为使用Heptabase 时，最主要的部分是构建 Map ，在构建的时候，更多的是自己思考重组，对信息进行重新排列的过程，是一个学习的过程。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;做完这些后，再去写东西，进行分享。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;分享越多次，就越是自己的。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;堆积的笔记，只给自己看，可能堆积偏见。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;只有将笔记，在公开的地方发表，或让除自己以外的人看到，才算建立了个自己认识的纠错系统，和联想收集系统。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;谈到输出系统，最近使用最多的是 obsidian ，它可以安装 DangerZone 的插件，设置 30 秒没有输入则自动删掉所有之前输入的文字，这种压力能够让我克服完美主义，很快完成初稿，完成之后再复制到 Heptabase 中进行修改。再复制发表。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;如果要针对一个比较大的主题写文章，可以参考自己在 Heptabase 中的 Map。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;持续不断产粮食，就不会担心笔记丢失。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;（情绪笔记哪里去了？都在 gpt 的对话框里）&lt;/p&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;section class="mp_profile_iframe_wrp"&gt;&lt;mp-common-profile class="js_uneditable custom_select_card mp_profile_iframe mp_common_widget js_wx_tap_highlight" data-pluginname="mpprofile" data-id="MzI2OTIxMTg1Nw==" data-headimg="http://mmbiz.qpic.cn/mmbiz_png/4ADhmAJPyqCfQIeWCibmq12nNoQPoovmGAkQXibbHrPEWd6dbEMeXDsHmR2FvB44AqgIod9yvnvRyOiaOAicCc7C1g/300?wx_fmt=png&amp;amp;wxfrom=19" data-nickname="醋泡白豆" data-alias="cpbd1121" data-signature="勤读书，更周报。用文字拽住不可控的世界。我是一个学习了四年日语但做了五年英语导游的大饼爱好者。" data-from="0" data-is_biz_ban="0" data-origin_num="219" data-isban="0" data-biz_account_status="0" data-index="0"&gt;&lt;/mp-common-profile&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;br&gt;&lt;/p&gt;&lt;/section&gt;</description></item><item><title>如何快速提高职场英语口语？</title><link>https://new.cupaobaidou.com/archives/911/</link><pubDate>Wed, 06 Dec 2023 05:55:00 +0800</pubDate><guid>https://new.cupaobaidou.com/archives/911/</guid><description>&lt;section style="line-height: 2; font-size: 15px; letter-spacing: 1px; padding: 0px 10px; box-sizing: border-box; font-style: normal; font-weight: 400; text-align: justify; visibility: visible;"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;section style="box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;英语口语能力是一种技能，需要在特定的时刻和场景下发出有「有意义」「连续完整」「尽量符合语法」的「声音」。&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;技能需要刻意练习，练习需要持续性的时间、精力投入，在这个过程中，为了保证&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485025&amp;amp;idx=1&amp;amp;sn=16e0013f229fed7a7f7d8cd8f857367f&amp;amp;chksm=eae287dfdd950ec9c90276ee7e8803ecc8108d57e18d255d177b39aa7ce829c6145594910a41&amp;amp;scene=21#wechat_redirect" textvalue="「努力程度要大于自己的阈值」" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2" hasload="1" style="visibility: visible;"&gt;「努力程度要大于自己的阈值」&lt;/a&gt;，就要对自己的练习计划进行刻意的提前设计。&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;设计行为路径就是解决问题，解决问题首先要搞清楚问题是什么？&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; box-sizing: border-box; visibility: visible;"&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.3888888888888889" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; width: 657px !important; box-sizing: border-box; height: auto !important; visibility: visible !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="1" src="https://new.cupaobaidou.com/usr/uploads/2024/01/2275183555.png" _width="100%" crossorigin="anonymous" alt="Image" data-fail="0"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;通过以上对问题的分析，我们能够分解出几个具体的问题。&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;要达到怎样「展示」，就私下怎样进行「练习」。&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;职场场景下的口语能力提高，降低了部分难度，因为场景有些是固定的：&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;1. 自己工作内容向上或公开汇报&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;2. 对于各类项目和客户进行沟通&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;3. 若工作语言是英语，则有日常的交流寒暄&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;可见很多场景都是基于自己的工作项目内容的发言，因此我们需要在一段时间内，针对性进行练习。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;如何知道自己目前的口语水平呢？&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;我最近探索出来的一个方式：&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485201&amp;amp;idx=1&amp;amp;sn=338291637161c610d4498ae787584174&amp;amp;chksm=eae286afdd950fb95f5a55e66e72baa8b4298494c1e5a5a9b560f9c4c0d481c60169702cde90&amp;amp;scene=21#wechat_redirect" textvalue="打开手机飞书-飞书妙记，合上任何其他资料，「逼迫」自己讲出所有能讲的。" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;打开手机飞书-飞书妙记，合上任何其他资料，「逼迫」自己讲出所有能讲的。&lt;/a&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;飞书妙记在录音的同时，自动生成了文字稿。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;这个阶段可能有些痛苦，它让自己在没有任何帮助的情况下，直面自己当下的水平。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;最开始的时候说什么呢？&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;可以尝试建立一个问题清单，包含自己岗位上可能出现的场景：&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;- 自己这段时间在公司有什么感受？&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;- 自己的岗位都需要做什么事情，具体解决的是什么问题？&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;- 公司是处于什么行业地位，产品是什么，服务对象是谁，解决了什么问题？&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;- 公司的理念和发展史？&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;- 有什么提高自己工作效率的计划？&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;以上清单可能比较笼统，可以根据自己的岗位更细化。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;说完之后得到一份音频和文本资料，也对自己目前能力有个大致了解。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;做到「提高」，需要确定自己的目标水平，并写下来，记录过程，进行量化。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;具体到什么样的水平呢？可以找些行业内的会议公开音视频录像，或相关类似 Twitter space 的回放，如果没有，则可以职场美剧，对自己目标水平有个直观的感受。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;为了让自己进入正向循环，就要确保投入大于阈值（Activation Energy），&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzA3MzE5MjM2Mw==&amp;amp;mid=2672246635&amp;amp;idx=1&amp;amp;sn=2a34957c09397448fbeadfa19e49c1cd&amp;amp;chksm=85a159afb2d6d0b9e87d5ae37be1f51497ed52aee9ff847039e88ee2dff7886d9d4944829628&amp;amp;scene=21#wechat_redirect" textvalue="诀窍是以非对称的大量投入来逐个解决具体的小问题。" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;诀窍是以非对称的大量投入来逐个解决具体的小问题。&lt;/a&gt;说人话就是把大部分的时间精力投入到几个场景下的口语练习中去。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;要达到怎样的「展示」，就私下在高度还原的场景中进行练习？&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;所以理想状态下是尽量在公司的物理环境中进行练习，下班后或早些到。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;另外为了模仿和同事、领导、客户的对话，可以采用「视觉化」让自己更代入—— 淘宝购买桌面人物模型，打印他们的照片换上。或者直接在电脑上打开等大的照片。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;每次场景的练习最好都使用「飞书妙记」进行录制，一是能够留存资料，二是能够更直观给自己反馈。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;没有人给我口语内容上的反馈，怎么办？&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;谁的英文口语最地道？以英文为母语的人。能找到——约来练习。找不到——哪还有谁呢？&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247484990&amp;amp;idx=1&amp;amp;sn=765552cf9b305c6e1af9ed4e08f0466e&amp;amp;chksm=eae28780dd950e961b43a5008a22ede596f97501a7bbd4afac91572cdb30f47bcb6c3396ff3e&amp;amp;scene=21#wechat_redirect" textvalue="Ai。" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;Ai。&lt;/a&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;可以拿自己录制的「飞书妙记」文件直接丢给 &lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247484990&amp;amp;idx=1&amp;amp;sn=765552cf9b305c6e1af9ed4e08f0466e&amp;amp;chksm=eae28780dd950e961b43a5008a22ede596f97501a7bbd4afac91572cdb30f47bcb6c3396ff3e&amp;amp;scene=21#wechat_redirect" textvalue="chatgpt" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;chatgpt&lt;/a&gt;，让它进行评价，给出建议。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(62, 62, 62);box-sizing: border-box;" data-style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; border-style: solid; border-width: 1px; border-color: rgb(62, 62, 62); box-sizing: border-box;" class="js_darkmode__0"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.55" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 360.25px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="2" src="https://new.cupaobaidou.com/usr/uploads/2024/01/3606848307.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;也可以使用 chatgpt 的语音对话功能进行练习，不过速度比较慢，不是很建议。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;同类型的 Ai 工具有 Call Annie 和 Trancy。两个工具都可以尝试一下。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.5407407407407407" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 355.267px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="3" src="https://new.cupaobaidou.com/usr/uploads/2024/01/1477844585.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;根据我之前采用的英语口语练习经验，最有效的方式，还是采用「李阳疯狂英语」的方法论，即单位时间内，把固定的一段文章（可以是自己写的，也可以是 Ai 针对场景进行优化的）进行上百次的朗读、复述，虽然很笨，但确实有效，很多时候自己发言的内容都是可以提前确定，提前准备的。把各个场景下的「假大空」的基础话术联系熟了，也是个不错的选择。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;关于李阳疯狂英语的方法论，还有「三最训练法」即最大声、最快速、最清晰。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;最大声：尽量找空旷的场景，克服的是不感开头说的问题。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;最快速：要块的前提是熟悉，熟悉就必须要联系，最快速是克服流利度的问题。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;最清晰：克服的是发音准确性的问题。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;完成了以上基础的练习后，就可以进阶了—— 给自己录制各类场景下的英文回复视频，能够观察自己的神态、表情，得到更多的反馈。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;这些都是私下自己的练习，能够补足一下基础。想要获得更多的反馈，可以尝试在人群中 &lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247483909&amp;amp;idx=1&amp;amp;sn=56acfc178a57548300b4ff7e13edc040&amp;amp;chksm=eae283bbdd950aad6b5be9c6f23e79ce167153e8c2b89c045564ad3b435decc699b44da9a6f6&amp;amp;scene=21#wechat_redirect" textvalue="Show your Work" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;Show your Work&lt;/a&gt;。具体咋办呢？&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;公司场景中&lt;/strong&gt;：Skin in the game ，抓住任何能够发言的机会，在公开的场合去说英文，Change the Default，当把自己的默认状态改变成有关无关都要发言之后，会发现自己对于会议、沟通的注意力就会提高，毕竟说不好可能让自己尴尬。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;其他场景&lt;/strong&gt;：让别人听自己说话，其实同时占据了别人的注意力和时间，是很难得的亲身经历，场景要素也都拉满，可以尝试找类似的英文俱乐部（头马？）或英文读书会。针对一个主题，多次练习，报名去做发言人，如果不能成为发言人，可以先尝试在提问环节多提问。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;口语是一种发言沟通行为，发言是理解信息并传递信息，设计到阅读场景、理解处理信息、按照逻辑性进行信息的梳理发言。思路很重要，为了 Make a Point，除了「场面话」联系之外，可以尝试日常生活中增加写作的训练。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;能够写清楚，就基本意味着想清楚了，再要达到「讲清楚」，就是多次进行口腔肌肉锻炼就可以了。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;总结下来：&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;1. 使用 Ai 或自己对工作场景进行细化分类，列出一个详细具体的问题清单&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;2. 针对问题清单，使用「飞书妙记」进行「干说练习」，搞清楚自己的水平&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;3. 把留存的资料发给 Ai 获得反馈，让它给出相对地道的答复&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;4. 把 Ai 的答复或自己找到自己公司领导的曾经发言、或网上的范文进行「百次重复」&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;5. 真实场景实验：抓住公司发言机会或报名相关俱乐部，多说&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;6. 为了提高听力能力，可以使用自己职业相关的播客进行「影子练习」&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;为了让自己能够&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485065&amp;amp;idx=1&amp;amp;sn=319d73244740aa0108de20e9d503297e&amp;amp;chksm=eae28737dd950e21bea0f5f6706cb2adf9d0e835a2f874b96e225f56387171afaf7c215f0b9d&amp;amp;scene=21#wechat_redirect" textvalue="坚持下去" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;坚持下去&lt;/a&gt;，可以尝试：&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;- 固定时间、固定环境进行练习&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247484290&amp;amp;idx=1&amp;amp;sn=0a03bc4e90da40ebf9d4012cfc7ca0a4&amp;amp;chksm=eae2823cdd950b2a5e6439971efcfb7b76c89f5d5fc4ac1c0f341e1efffc1b036765ae52e7fc&amp;amp;scene=21#wechat_redirect" textvalue="- 记录每次练习，可以采用视觉化，及时给自己奖励" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;- 记录每次练习，可以采用视觉化，及时给自己奖励&lt;/a&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247484290&amp;amp;idx=1&amp;amp;sn=0a03bc4e90da40ebf9d4012cfc7ca0a4&amp;amp;chksm=eae2823cdd950b2a5e6439971efcfb7b76c89f5d5fc4ac1c0f341e1efffc1b036765ae52e7fc&amp;amp;scene=21#wechat_redirect" textvalue="- 记录每次练习，可以采用视觉化，及时给自己奖励" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;- 制作一个「夸夸Ai」&lt;/a&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;- 场景化自己口语提升后的好处，比如更自由的表达、更多的升职计划等&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;- 心中重复最多的话就是信念，可以尝试制作自己的「早晨宣言」，每天来一遍&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;section class="mp_profile_iframe_wrp"&gt;&lt;mp-common-profile class="js_uneditable custom_select_card mp_profile_iframe mp_common_widget js_wx_tap_highlight" data-pluginname="mpprofile" data-id="MzI2OTIxMTg1Nw==" data-headimg="http://mmbiz.qpic.cn/mmbiz_png/4ADhmAJPyqCfQIeWCibmq12nNoQPoovmGAkQXibbHrPEWd6dbEMeXDsHmR2FvB44AqgIod9yvnvRyOiaOAicCc7C1g/300?wx_fmt=png&amp;amp;wxfrom=19" data-nickname="醋泡白豆" data-alias="cpbd1121" data-signature="勤读书，更周报。用文字拽住不可控的世界。我是一个学习了四年日语但做了五年英语导游的大饼爱好者。" data-from="0" data-is_biz_ban="0" data-origin_num="219" data-isban="0" data-biz_account_status="0" data-index="0"&gt;&lt;/mp-common-profile&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;</description></item><item><title>我设计了张「支票」—— 个人任务支票</title><link>https://new.cupaobaidou.com/archives/906/</link><pubDate>Thu, 16 Nov 2023 05:55:00 +0800</pubDate><guid>https://new.cupaobaidou.com/archives/906/</guid><description>&lt;section style="line-height: 2; font-size: 15px; letter-spacing: 1px; padding: 0px 10px; box-sizing: border-box; font-style: normal; font-weight: 400; text-align: justify; visibility: visible;"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;br style="visibility: visible;"&gt;&lt;/p&gt;&lt;section style="line-height: 0; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; box-sizing: border-box; visibility: visible;"&gt;&lt;img class="rich_pages wxw-img" data-ratio="1.15" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; width: 657px !important; box-sizing: border-box; height: auto !important; visibility: visible !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="1" src="https://new.cupaobaidou.com/usr/uploads/2024/01/3491160589.png" _width="100%" crossorigin="anonymous" alt="Image" data-fail="0"&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;section style="text-align: center; justify-content: center; margin: 10px 0px; display: flex; flex-flow: row; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block; vertical-align: middle; width: 50px; align-self: center; flex: 0 0 auto; height: auto; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="margin: 0.5em 0px; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="height: 1px; background-color: rgb(95, 156, 239); box-sizing: border-box; visibility: visible;" data-style="height: 1px; background-color: rgb(95, 156, 239); box-sizing: border-box;" class="js_darkmode__0"&gt;&lt;svg viewBox="0 0 1 1" style="float: left; line-height: 0; width: 0px; vertical-align: top; visibility: visible;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block; vertical-align: middle; width: auto; align-self: center; min-width: 10%; max-width: 100%; flex: 0 0 auto; height: auto; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="color: rgb(52, 54, 121); text-align: justify; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us" data-style="color: rgb(52, 54, 121); text-align: justify; box-sizing: border-box;" class="js_darkmode__1"&gt;&lt;p style="text-align: center; white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;✦&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block; vertical-align: top; width: auto; min-width: 10%; max-width: 100%; flex: 0 0 auto; height: auto; align-self: flex-start; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="color: rgb(95, 156, 239); text-align: justify; font-size: 17px; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;strong style="box-sizing: border-box; visibility: visible;"&gt;设计缘由&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block; vertical-align: middle; width: auto; align-self: center; min-width: 10%; max-width: 100%; flex: 0 0 auto; height: auto; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="color: rgb(52, 54, 121); text-align: right; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us" data-style="color: rgb(52, 54, 121); text-align: right; box-sizing: border-box;" class="js_darkmode__2"&gt;&lt;p style="text-align: center; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;✦&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block; vertical-align: middle; width: 50px; align-self: center; flex: 0 0 auto; height: auto; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="margin: 0.5em 0px; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="height: 1px; background-color: rgb(95, 156, 239); box-sizing: border-box; visibility: visible;" data-style="height: 1px; background-color: rgb(95, 156, 239); box-sizing: border-box;" class="js_darkmode__3"&gt;&lt;svg viewBox="0 0 1 1" style="float: left; line-height: 0; width: 0px; vertical-align: top; visibility: visible;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="color: rgb(217, 33, 66);"&gt;仪式感和视觉化能够提高做事情的动力。&lt;/span&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485008&amp;amp;idx=1&amp;amp;sn=7f53aaa2624ba5b197f31f38de711ca1&amp;amp;chksm=eae287eedd950ef8f12bbce250b9a7f814f24a1671832f37cc9220f152f2c4adb9344e05b61f&amp;amp;scene=21#wechat_redirect" textvalue="番茄闹钟" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;番茄闹钟&lt;/a&gt;适合以小时为单位的工作任务，能够让自己在几十分钟内保持专注，但一个番茄闹钟能够完成的任务有限，有时只是一个大项目的一部分。&lt;br&gt;（推荐阅读：&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485008&amp;amp;idx=1&amp;amp;sn=7f53aaa2624ba5b197f31f38de711ca1&amp;amp;chksm=eae287eedd950ef8f12bbce250b9a7f814f24a1671832f37cc9220f152f2c4adb9344e05b61f&amp;amp;scene=21#wechat_redirect" textvalue="《开地铁，而不是开公交》" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;《开地铁，而不是开公交》&lt;/a&gt;）&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;而使用的滴答清单类的待办事项管理软件，有些「虚」，需要自己主动打开相应的界面才能够看到，且动手机、电脑的时候往往会代替掉眼前的屏幕工作区域（多屏幕除外），注意力也会被劫持。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;实体便利贴又太过随意，写字的空间比较小，全空白，仪式感不够强。&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;所以我一直在探索针对 2-5 天的任务的视觉化管理工具。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;第一个想法是制作成僵尸片中的黄色道教符咒，场景代入感很强，对抗「 各类问题」需要自己画符，张贴，完成一个工作任务或自己定的任务，就获得一张封印符。后因想到晚上在办公桌上看到这东西有些渗人、实际制作黄色纸写字儿也看不太清，遂搁置这个思路。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.6907407407407408" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 453.817px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="2" src="https://new.cupaobaidou.com/usr/uploads/2024/01/662360829.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;又开始寻找是否有其他更好的表现形式，最后确定了「给自己开支票」的想法，做出了这第一版的「个人任务支票」。根据支票模板修改，实际制作成 A5 铁线圈笔记本的形式，可以配合尺子，实现给自己「开」支票的场景代入。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.4703703703703704" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 309.033px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="3" src="https://new.cupaobaidou.com/usr/uploads/2024/01/3913773771.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;section style="text-align: center;justify-content: center;margin: 10px 0px;display: flex;flex-flow: row;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;vertical-align: middle;width: 50px;align-self: center;flex: 0 0 auto;height: auto;box-sizing: border-box;"&gt;&lt;section style="margin: 0.5em 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="background-color: rgb(52, 54, 121);height: 1px;box-sizing: border-box;" data-style="background-color: rgb(52, 54, 121); height: 1px; box-sizing: border-box;" class="js_darkmode__4"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: middle;width: auto;align-self: center;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;box-sizing: border-box;"&gt;&lt;section style="color: rgb(52, 54, 121);text-align: justify;box-sizing: border-box;" powered-by="xiumi.us" data-style="color: rgb(52, 54, 121); text-align: justify; box-sizing: border-box;" class="js_darkmode__5"&gt;&lt;p style="text-align: center;white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;✦&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: top;width: auto;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;align-self: flex-start;box-sizing: border-box;"&gt;&lt;section style="color: rgb(52, 54, 121);text-align: justify;font-size: 17px;box-sizing: border-box;" powered-by="xiumi.us" data-style="color: rgb(52, 54, 121); text-align: justify; font-size: 17px; box-sizing: border-box;" class="js_darkmode__6"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;设计思路&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: middle;width: auto;align-self: center;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;box-sizing: border-box;"&gt;&lt;section style="color: rgb(52, 54, 121);text-align: right;box-sizing: border-box;" powered-by="xiumi.us" data-style="color: rgb(52, 54, 121); text-align: right; box-sizing: border-box;" class="js_darkmode__7"&gt;&lt;p style="text-align: center;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;✦&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: middle;width: 50px;align-self: center;flex: 0 0 auto;height: auto;box-sizing: border-box;"&gt;&lt;section style="margin: 0.5em 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="background-color: rgb(52, 54, 121);height: 1px;box-sizing: border-box;" data-style="background-color: rgb(52, 54, 121); height: 1px; box-sizing: border-box;" class="js_darkmode__8"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong&gt;「个人任务支票」的设计理念是让中短期的任务（工作任务或自己给自己定的目标）视觉化、实体化、仪式化，让完成任务的过程更好玩一些，让完成的任务堆叠成一沓票子，带来一种成就感。&lt;/strong&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;支票上方是使用 DALL3生成修改后的「TASK CHECK」的 LOGO， 直译为「任务支票」，同时 「CHECK」也有「检查」的含义，Check your &amp;nbsp;wallet！遂也很贴合它的使用场景——实体化、场景化的代办检查清单。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;中间部分是魔改普通银行支票的条目。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;下方增加「进度追踪」，五个圆圈，银行支票只需开一次，而任务支票不仅能写出来提示自己要完成的任务详情是什么，最好还能在执行的过程中，记录下自己的进度。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;英文水印「Your Effort，Your Currency」，对标真实银行支票的本质——一种货币形式，储存劳动价值的一般等价物。而这里用「完成任务自己做所的努力」赋予支票价值，有种比特币 POW（proof of work）机制的感觉。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;最左侧文字「本票执行期限七天」表示这是为了中短期任务设计的支票，如果拖延时间太长，人会逐渐疲惫，老干活不发钱累啊。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.625" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 410.625px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="4" src="https://new.cupaobaidou.com/usr/uploads/2024/01/4142253011.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: center;font-size: 12px;color: rgb(160, 160, 160);box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;过程思路图（Heptabase 在设计时帮到了大忙！）&lt;/p&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;section style="text-align: center;justify-content: center;margin: 10px 0px;display: flex;flex-flow: row;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;vertical-align: middle;width: 50px;align-self: center;flex: 0 0 auto;height: auto;box-sizing: border-box;"&gt;&lt;section style="margin: 0.5em 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="background-color: rgb(52, 54, 121);height: 1px;box-sizing: border-box;" data-style="background-color: rgb(52, 54, 121); height: 1px; box-sizing: border-box;" class="js_darkmode__9"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: middle;width: auto;align-self: center;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;box-sizing: border-box;"&gt;&lt;section style="color: rgb(52, 54, 121);text-align: justify;box-sizing: border-box;" powered-by="xiumi.us" data-style="color: rgb(52, 54, 121); text-align: justify; box-sizing: border-box;" class="js_darkmode__10"&gt;&lt;p style="text-align: center;white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;✦&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: top;width: auto;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;align-self: flex-start;box-sizing: border-box;"&gt;&lt;section style="font-size: 17px;color: rgb(52, 54, 121);text-align: justify;box-sizing: border-box;" powered-by="xiumi.us" data-style="font-size: 17px; color: rgb(52, 54, 121); text-align: justify; box-sizing: border-box;" class="js_darkmode__11"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;使用参考&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: middle;width: auto;align-self: center;min-width: 10%;max-width: 100%;flex: 0 0 auto;height: auto;box-sizing: border-box;"&gt;&lt;section style="color: rgb(52, 54, 121);text-align: right;box-sizing: border-box;" powered-by="xiumi.us" data-style="color: rgb(52, 54, 121); text-align: right; box-sizing: border-box;" class="js_darkmode__12"&gt;&lt;p style="text-align: center;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;✦&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: middle;width: 50px;align-self: center;flex: 0 0 auto;height: auto;box-sizing: border-box;"&gt;&lt;section style="margin: 0.5em 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="background-color: rgb(52, 54, 121);height: 1px;box-sizing: border-box;" data-style="background-color: rgb(52, 54, 121); height: 1px; box-sizing: border-box;" class="js_darkmode__13"&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;section style="line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.562962962962963" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 657px !important; height: 369.867px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="5" src="https://new.cupaobaidou.com/usr/uploads/2024/01/309205249.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;1. 抬头四个选项，填入任务的基础信息。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;ul class="list-paddingleft-1" style="list-style-type: square;"&gt;&lt;li&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;任务种类：按照自己的系统进行归类，比如我目前使用的是&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485096&amp;amp;idx=1&amp;amp;sn=fa38cef7a328d8ed109011f3d04b6545&amp;amp;chksm=eae28716dd950e006642e200d7d86e24d079d1b0e8e365e6105db0ef9d82a937df940ab1cd08&amp;amp;scene=21#wechat_redirect" textvalue="「增肥力」「产粮食」" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;「增肥力」「产粮食」&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;下达方：自己或公司或其他&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;难度系数：按照自己的系统，对任务进行难度评估。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;出票日期：可写开始的时间点，也可时间段。&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;2. 中部是填写任务的详细内容。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;ul class="list-paddingleft-1" style="list-style-type: square;"&gt;&lt;li&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;金额栏：我是完成这项任务后，对自己的努力做个虚拟评估，填个金额&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;达成目标：尽量量化，描述自己产出的成果或要达到的状态&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;任务详情：用几句话描述任务的场景&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;3. 进度追踪有五个圆圈，使用&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247485008&amp;amp;idx=1&amp;amp;sn=7f53aaa2624ba5b197f31f38de711ca1&amp;amp;chksm=eae287eedd950ef8f12bbce250b9a7f814f24a1671832f37cc9220f152f2c4adb9344e05b61f&amp;amp;scene=21#wechat_redirect" textvalue="番茄闹钟体系" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;番茄闹钟体系&lt;/a&gt;的伙伴可以把每个圈当做一个番茄钟，完成之后在圈上打钩或涂黑圈。如果没有用番茄闹钟，可以把每个圆圈当做 20% 的进度。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;4. 完成时间、签名/盖章：便于归档，为了增加仪式感，可以给自己定制个红印章，盖戳归档。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;5. 任务复盘收获可写在支票背面，turn over the CHECK，如果使用了软木板，翻过支票，即是一种归类。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;6. 其他：在一周开始前，规划自己的一周任务可以在笔记本上先填写内容，到开始执行的时候，再撕下来。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;第一版个人任务支票「空投」了几本给朋友，定制的还有 3 本，感兴趣想要尝试一下的朋友欢迎后台联系我，不过使用了之后需要给个体验反馈，便于对后续版本进行优化。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;section class="mp_profile_iframe_wrp"&gt;&lt;mp-common-profile class="js_uneditable custom_select_card mp_profile_iframe mp_common_widget js_wx_tap_highlight" data-pluginname="mpprofile" data-id="MzI2OTIxMTg1Nw==" data-headimg="http://mmbiz.qpic.cn/mmbiz_png/4ADhmAJPyqCfQIeWCibmq12nNoQPoovmGAkQXibbHrPEWd6dbEMeXDsHmR2FvB44AqgIod9yvnvRyOiaOAicCc7C1g/300?wx_fmt=png&amp;amp;wxfrom=19" data-nickname="醋泡白豆" data-alias="cpbd1121" data-signature="勤读书，更周报。用文字拽住不可控的世界。我是一个学习了四年日语但做了五年英语导游的大饼爱好者。" data-from="0" data-is_biz_ban="0" data-origin_num="219" data-isban="0" data-biz_account_status="0" data-index="0"&gt;&lt;/mp-common-profile&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;</description></item><item><title>如何把喜欢的博主的个人博客制作成 EPUB 格式的双语电子书</title><link>https://new.cupaobaidou.com/archives/891/</link><pubDate>Wed, 27 Sep 2023 05:55:00 +0800</pubDate><guid>https://new.cupaobaidou.com/archives/891/</guid><description>&lt;section style="line-height: 2; font-size: 15px; letter-spacing: 1px; padding: 0px 10px; box-sizing: border-box; font-style: normal; font-weight: 400; text-align: justify; visibility: visible;"&gt;&lt;section style="text-align: unset; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;?我经常遇到这种情况：&amp;nbsp;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;偶然通过一篇博客，发现一位非常有趣的博主，恨不得把 ta 的个人网站上的所有文章全读了。&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;也确实做了，比如 Derek Sivers 、Neel Nanda、Randy 等的博客。&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;?使用电脑浏览器阅读博客的过程中有几个小障碍：&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;1. 做笔记比较繁琐 &lt;br style="box-sizing: border-box; visibility: visible;"&gt;2. 容易点点链接就跳转到其他网页摸鱼去了&lt;br style="box-sizing: border-box; visibility: visible;"&gt;3. 转换地点，没办法用电脑的时候，手机太小，iPad 网络在地铁太差。且移动端没有翻译插件，有阅读阻力。&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;?于是前段时间探索出一条针对特别喜欢的外语博主blog 的双语电子书制作流程：&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;1. 打开浏览器安装 「epubpress 插件」&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="visibility: visible;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center; margin-top: 10px; margin-bottom: 10px; line-height: 0; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; border-style: solid; border-width: 1px; border-color: rgb(4, 4, 23); box-sizing: border-box; visibility: visible;" data-style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; border-style: solid; border-width: 1px; border-color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__0"&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.5217391304347826" data-s="300,640" data-w="690" style="vertical-align: middle; max-width: 100%; width: 655px !important; box-sizing: border-box; height: auto !important; visibility: visible !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="1" src="https://new.cupaobaidou.com/usr/uploads/2024/01/756118865.png" _width="100%" crossorigin="anonymous" alt="Image" data-fail="0"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: unset;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;2. 打开博主的个人网站，将喜欢的 blog 都在一个浏览器中打开&lt;br style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;3. 点击 「epubpress 插件」，选中要制作电子书的文章导入，制作并下载 epub 格式的文件&lt;br style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;4. 打开 「沉浸式翻译」插件——更多——制作双语电子书—— 上传刚下载的文件——点击插件进行翻译——下载电子书&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(4, 4, 23);box-sizing: border-box;" data-style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; border-style: solid; border-width: 1px; border-color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__1"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.7971014492753623" data-s="300,640" data-w="690" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 522.101px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="2" src="https://new.cupaobaidou.com/usr/uploads/2024/01/2281893954.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: unset;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;5. 在本地用微信读书打开&lt;br style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;?这样更能融入到我的个人阅读流程中去，有这些好处：&lt;br style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;1. 随时随地阅读，微信读书自动同步多个移动端&lt;br style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;2. 微信读书的高亮划线，可以使用 Notepal 插件自动同步到 readwise 或 Notion 等笔记软件&lt;br style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;3. readwise 内容又能自动同步到 Heptabase &lt;br style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;4. 梳理主题笔记的时候我就打开 Heptabase 进行拖拖拽拽就好了&lt;br style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;?不过，要注意版权：&lt;br style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;博客的内容原本是属于作者或博客主的知识产权。&lt;br style="box-sizing: border-box;"&gt;除非博客的内容已经明确地声明是在公有领域或已经获得相应的使用许可，否则转载、复制或制作成电子书等都可能侵犯原作者的权利。&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: unset;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;p&gt;&lt;br&gt;&lt;/p&gt;&lt;section style="padding-right: 10px;padding-left: 10px;outline: 0px;line-height: 2;letter-spacing: 1px;font-size: 15px;visibility: visible;"&gt;&lt;section powered-by="xiumi.us" style="outline: 0px;text-align: unset;"&gt;&lt;section style="padding-right: 10px;padding-left: 10px;outline: 0px;line-height: 2;visibility: visible;"&gt;&lt;section style="padding-right: 10px;padding-left: 10px;outline: 0px;line-height: 2;visibility: visible;"&gt;&lt;section style="padding-right: 10px;padding-left: 10px;outline: 0px;line-height: 2;visibility: visible;"&gt;&lt;section powered-by="xiumi.us" style="outline: 0px;visibility: visible;"&gt;&lt;section style="padding-right: 10px;padding-left: 10px;outline: 0px;line-height: 2;visibility: visible;"&gt;&lt;section powered-by="xiumi.us" style="outline: 0px;text-align: unset;visibility: visible;"&gt;&lt;section style="padding-right: 10px;padding-left: 10px;outline: 0px;line-height: 2;visibility: visible;"&gt;&lt;section powered-by="xiumi.us" style="outline: 0px;text-align: unset;"&gt;&lt;p style="outline: 0px;font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;white-space: normal;background-color: rgb(255, 255, 255);" data-style="outline: 0px; font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);" class="js_darkmode__2"&gt;&lt;strong style="outline: 0px;"&gt;&lt;span style="outline: 0px;font-size: 12px;"&gt;如果你喜欢我的推文，请关注公众号醋泡白豆~&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;section class="mp_profile_iframe_wrp" style="outline: 0px;"&gt;&lt;mp-common-profile class="custom_select_card mp_profile_iframe js_wx_tap_highlight mp_common_widget" data-pluginname="mpprofile" data-weuitheme="light" data-id="MzI2OTIxMTg1Nw==" data-headimg="http://mmbiz.qpic.cn/mmbiz_png/4ADhmAJPyqCfQIeWCibmq12nNoQPoovmGAkQXibbHrPEWd6dbEMeXDsHmR2FvB44AqgIod9yvnvRyOiaOAicCc7C1g/300?wx_fmt=png&amp;amp;wxfrom=19" data-nickname="醋泡白豆" data-alias="cpbd1121" data-signature="勤读书，更周报。用文字拽住不可控的世界。我是一个学习了四年日语但做了五年英语导游的大饼爱好者。" data-from="2" data-is_biz_ban="0" data-origin_num="219" data-isban="0" data-biz_account_status="0" data-index="0"&gt;&lt;/mp-common-profile&gt;&lt;span style="outline: 0px;color: rgba(0, 0, 0, 0.3);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;font-size: var(--articleFontsize);letter-spacing: 0.034em;" data-style="outline: 0px; color: rgba(0, 0, 0, 0.3); font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; font-size: var(--articleFontsize); letter-spacing: 0.034em;" class="js_darkmode__3"&gt;&lt;/span&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;</description></item><item><title>为什么要记日志，怎样降低记日志的阻力？</title><link>https://new.cupaobaidou.com/archives/846/</link><pubDate>Tue, 01 Aug 2023 22:22:00 +0800</pubDate><guid>https://new.cupaobaidou.com/archives/846/</guid><description>&lt;section style="line-height: 2; font-size: 15px; letter-spacing: 1px; padding: 0px 10px; box-sizing: border-box; font-style: normal; font-weight: 400; text-align: justify; visibility: visible;"&gt;&lt;section style="text-align: unset; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;p style="text-align: center; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="text-align: left; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span style="text-align: unset; box-sizing: border-box; visibility: visible;"&gt;大家好，我是白豆。我从 2022年1月1日开始，记录了 500 多天的日志。&lt;/span&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="text-align: left; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;span style="text-align: unset; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center; margin-top: 10px; margin-bottom: 10px; line-height: 0; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; border-style: solid; border-width: 1px; border-color: rgb(4, 4, 23); box-sizing: border-box; visibility: visible;" data-style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; border-style: solid; border-width: 1px; border-color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__0"&gt;&lt;img class="rich_pages wxw-img" data-ratio="0.5564814814814815" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; width: 655px !important; box-sizing: border-box; height: auto !important; visibility: visible !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="1" src="https://new.cupaobaidou.com/usr/uploads/2024/01/633362143.png" _width="100%" crossorigin="anonymous" alt="Image" data-fail="0"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: unset; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;去年一整年是自己在电脑上写，读的人只有自己，偶尔会一天补一周的日志，形式逐渐取代了目的；&lt;span style="box-sizing: border-box; visibility: visible;"&gt;今年偶然参加了一个月的博主组织的微信群日志写作打卡活动，每天把自己的日志分享到群里打卡，虽然不一定有人看，但「分享」这种行为确实给我带来了不一样的感受，日志的记录更准时、认真了。&lt;/span&gt;&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;在二白的鼓励下，我第一次做了线上社群的群主，运营了三个多月的日志写作打卡群。&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;今天是八月一日，八月的打卡群也组建了，有新的伙伴加入，最近工作不是很忙，好久没有写东西，遂打算把自己日志写作的感受和经验分享一下。希望对新搬进来我们微信「群小区」的朋友有点帮助。&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;接下来，我从&lt;strong style="box-sizing: border-box; visibility: visible;"&gt;&lt;span style="color: rgb(4, 4, 23); box-sizing: border-box; visibility: visible;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__1"&gt;「为什么要记日志」&lt;/span&gt;&lt;/strong&gt;和&lt;strong style="box-sizing: border-box; visibility: visible;"&gt;&lt;span style="color: rgb(4, 4, 23); box-sizing: border-box; visibility: visible;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__2"&gt;「怎样降低记日志的阻力，让自己养成记日志的习惯」&lt;/span&gt;&lt;/strong&gt;这两个方面来写。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin: 10px 0%;font-size: 16px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;min-width: 10%;max-width: 100%;vertical-align: top;line-height: 0;box-sizing: border-box;"&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;min-width: 10%;max-width: 100%;vertical-align: top;border-bottom: 2px solid rgb(62, 62, 62);border-bottom-right-radius: 0px;line-height: 0;box-sizing: border-box;" data-style="display: inline-block; min-width: 10%; max-width: 100%; vertical-align: top; border-bottom: 2px solid rgb(62, 62, 62); border-bottom-right-radius: 0px; line-height: 0; box-sizing: border-box;" class="js_darkmode__3"&gt;&lt;section style="transform: translate3d(10px, 0px, 0px);-webkit-transform: translate3d(10px, 0px, 0px);-moz-transform: translate3d(10px, 0px, 0px);-o-transform: translate3d(10px, 0px, 0px);margin: 0px 0% 5px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="line-height: 1;padding: 0px 10px;font-size: 20px;text-align: justify;box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&amp;nbsp;为什么要记日志？&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: left;margin: -25px 0% -2px;transform: translate3d(-15px, 0px, 0px);-webkit-transform: translate3d(-15px, 0px, 0px);-moz-transform: translate3d(-15px, 0px, 0px);-o-transform: translate3d(-15px, 0px, 0px);box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: 30px;height: 30px;vertical-align: top;overflow: hidden;border-width: 2px;border-radius: 50px;border-style: solid;border-color: rgb(62, 62, 62);line-height: 1;background-color: rgb(255, 219, 0);letter-spacing: 0px;box-sizing: border-box;" data-style="display: inline-block; width: 30px; height: 30px; vertical-align: top; overflow: hidden; border-width: 2px; border-radius: 50px; border-style: solid; border-color: rgb(62, 62, 62); line-height: 1; background-color: rgb(255, 219, 0); letter-spacing: 0px; box-sizing: border-box;" class="js_darkmode__4"&gt;&lt;section style="margin: 5px 0% 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="text-align: center;box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;box-sizing: border-box;"&gt;&lt;em style="box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;1&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: right;margin: -13px 0% 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: 37px;height: 20px;vertical-align: top;overflow: hidden;background-position: 50% 50%;background-repeat: no-repeat;background-size: contain;background-attachment: scroll;background-image: url(&amp;quot;https://mmbiz.qpic.cn/mmbiz_jpg/PJlRribMEuBDR6ia2ql8icCILpubOJQgO7B097pNX89ZscsOUTBENk35g0b0BDEMdmFKQ5U4vWpOvsBic1bL471vXQ/640?wx_fmt=jpeg&amp;quot;);box-sizing: border-box;" class="js_darkmode__bg__0 js_darkmode__5" data-style="display: inline-block; width: 37px; height: 20px; vertical-align: top; overflow: hidden; background-position: 50% 50%; background-repeat: no-repeat; background-size: contain; background-attachment: scroll; background-image: url(&amp;quot;https://mmbiz.qpic.cn/mmbiz_jpg/PJlRribMEuBDR6ia2ql8icCILpubOJQgO7B097pNX89ZscsOUTBENk35g0b0BDEMdmFKQ5U4vWpOvsBic1bL471vXQ/640?wx_fmt=jpeg&amp;quot;); box-sizing: border-box;"&gt;&lt;section style="line-height: 0;text-align: justify;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: unset;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;1. 记日志可以带来一种仪式感。&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;在一切都在加速的生活节奏中，今天和明天界限越来越不明显，都是在不停工作加班、赶忙娱乐、或者阶段性躺平。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;而记日志，是每隔 24 小时进行一次记录，像是给生活加入了一个特殊的仪式，生活节点化，在那几分钟内，我是自由的，我的思绪会间歇性回到熟悉的地方，进行这项确定性的活动。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;2. 记日志可以解放大脑带宽。&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;记日志是以文字为载体，是大脑内部思考的外部符号显化。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;当我们写下自己的已做、待做、感受的时候，笔尖下的墨迹或显示屏上的字符将大脑中抽象的神经链接具象化，我们可以不再担心丢失这些想法，可以把注意力放到更需要的事情上去。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;3. 记日志可以促使我们行动，做些事情。&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: unset;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;如果日志记录很充实，就相当于每天给旋转的飞轮轻推一把，保持这种运转的惯性。&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: unset;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;如果日志没什么可写，那么写的时候就会有点愧疚感——我最近好像没做什么事情，于是可能第二天就至少做了点可以写在日志上，稍微让自己「虚荣」一下的实事。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;4. 记日志可以追踪个人目标、监控个人情绪。&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;记日志还能够纾解情绪，因为写这个行为本身就需要一定程度的理智，较为理智的敲下自己的感受，更了解自己在什么时候会有什么样的情绪，对自己观察更多。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;通过记录每天做的事情，可以更好理解自己的进程，调整自己要达到目标的策略和计划。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;5. 记日志能够增进对自己的了解。&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;每天写 100 字的日志，一年时间就是 36500 字，十年时间就是近 40 万字，这 40 万字都是自己真切的所思所想，真的可以喂给 Ai 来造个数字分身了。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247483810&amp;amp;idx=1&amp;amp;sn=078de8dfd3a07152608dd237fca00f1d&amp;amp;chksm=eae2801cdd95090aaca8a2b82f2b76b9a55a5be6631396e4a22fd2eafc6972dff265493bb441&amp;amp;scene=21#wechat_redirect" textvalue="以及其他写作有对好处，记日志也都有。" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;以及其他写作有的好处，记日志也都有。&lt;/a&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin: 10px 0%;font-size: 16px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;min-width: 10%;max-width: 100%;vertical-align: top;line-height: 0;box-sizing: border-box;"&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;min-width: 10%;max-width: 100%;vertical-align: top;border-bottom: 2px solid rgb(62, 62, 62);border-bottom-right-radius: 0px;line-height: 0;box-sizing: border-box;" data-style="display: inline-block; min-width: 10%; max-width: 100%; vertical-align: top; border-bottom: 2px solid rgb(62, 62, 62); border-bottom-right-radius: 0px; line-height: 0; box-sizing: border-box;" class="js_darkmode__6"&gt;&lt;section style="transform: translate3d(10px, 0px, 0px);-webkit-transform: translate3d(10px, 0px, 0px);-moz-transform: translate3d(10px, 0px, 0px);-o-transform: translate3d(10px, 0px, 0px);margin: 0px 0% 5px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="line-height: 1;padding: 0px 10px;font-size: 20px;text-align: justify;box-sizing: border-box;"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;/strong&gt;&lt;span style="box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;怎样降低记日志的阻力？&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: left;margin: -25px 0% -2px;transform: translate3d(-15px, 0px, 0px);-webkit-transform: translate3d(-15px, 0px, 0px);-moz-transform: translate3d(-15px, 0px, 0px);-o-transform: translate3d(-15px, 0px, 0px);box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: 30px;height: 30px;vertical-align: top;overflow: hidden;border-width: 2px;border-radius: 50px;border-style: solid;border-color: rgb(62, 62, 62);line-height: 1;background-color: rgb(255, 219, 0);letter-spacing: 0px;box-sizing: border-box;" data-style="display: inline-block; width: 30px; height: 30px; vertical-align: top; overflow: hidden; border-width: 2px; border-radius: 50px; border-style: solid; border-color: rgb(62, 62, 62); line-height: 1; background-color: rgb(255, 219, 0); letter-spacing: 0px; box-sizing: border-box;" class="js_darkmode__7"&gt;&lt;section style="margin: 5px 0% 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="text-align: center;box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;box-sizing: border-box;"&gt;&lt;em style="box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;2&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: right;margin: -13px 0% 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: 37px;height: 20px;vertical-align: top;overflow: hidden;background-position: 50% 50%;background-repeat: no-repeat;background-size: contain;background-attachment: scroll;background-image: url(&amp;quot;https://mmbiz.qpic.cn/mmbiz_jpg/PJlRribMEuBDR6ia2ql8icCILpubOJQgO7B097pNX89ZscsOUTBENk35g0b0BDEMdmFKQ5U4vWpOvsBic1bL471vXQ/640?wx_fmt=jpeg&amp;quot;);box-sizing: border-box;" class="js_darkmode__bg__1 js_darkmode__8" data-style="display: inline-block; width: 37px; height: 20px; vertical-align: top; overflow: hidden; background-position: 50% 50%; background-repeat: no-repeat; background-size: contain; background-attachment: scroll; background-image: url(&amp;quot;https://mmbiz.qpic.cn/mmbiz_jpg/PJlRribMEuBDR6ia2ql8icCILpubOJQgO7B097pNX89ZscsOUTBENk35g0b0BDEMdmFKQ5U4vWpOvsBic1bL471vXQ/640?wx_fmt=jpeg&amp;quot;); box-sizing: border-box;"&gt;&lt;section style="line-height: 0;text-align: justify;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: unset;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;1. 加入一个社群&lt;/strong&gt;，「被看到」以及潜在公开的承诺能够促使自己迈过行动阈值（Activation energy），转起飞轮。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;2. 制定一个模板&lt;/strong&gt;，给自己的日志记录「挖沟渠」。一张白纸，第一个字最难写，因为可写的东西太多，或者太少，给自己选择的压力，而提前设置好一个模板，有「死板」的部分让自己写下第一话，也可以有开放的部分，让自己随便写。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;line-height: 0;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(4, 4, 23);box-sizing: border-box;" data-style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; border-style: solid; border-width: 1px; border-color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__9"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.6657407407407407" data-s="300,640" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 436.06px !important;" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="2" src="https://new.cupaobaidou.com/usr/uploads/2024/01/2795858443.png" _width="100%" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: unset;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;3. 应用&lt;a target="_blank" href="http://mp.weixin.qq.com/s?__biz=MzI2OTIxMTg1Nw==&amp;amp;mid=2247484290&amp;amp;idx=1&amp;amp;sn=0a03bc4e90da40ebf9d4012cfc7ca0a4&amp;amp;chksm=eae2823cdd950b2a5e6439971efcfb7b76c89f5d5fc4ac1c0f341e1efffc1b036765ae52e7fc&amp;amp;scene=21#wechat_redirect" textvalue="福格行为模型" linktype="text" imgurl="" imgdata="null" data-itemshowtype="0" tab="innerlink" data-linktype="2"&gt;福格行为模型&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;及时庆祝，在群里打卡完毕后，可以给自己设计个庆祝行为，可以是内心的肯定，也可以是一句出声的「Yes！」加强正循环。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;Lower the bar. 降低要求，放弃完美心态，写一句话就是胜利。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;把记日志这个新习惯加到你本就有的行为后面，比如我每天基本都回到办公室打开电脑，列一天的工作计划，我就打开电脑之后开始写昨天的日志。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;4. 设计视觉标记&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;可以放开想象，给自己设计一面视觉墙，每天贴个小红花。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;比如使用类似下图的小学生自律神器，提醒自己，写完之后可以把「❌」拨到「✅」&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;p style="text-align: center;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-galleryid="" data-ratio="0.44074074074074077" data-s="300,640" data-type="png" data-w="1080" style="width: 657px !important; height: 289.567px !important;" data-original-style="" data-index="3" src="https://new.cupaobaidou.com/usr/uploads/2024/01/4185878657.png" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;5. 让自己心理上舒服&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;找到自己喜欢的记录介质，可以手写、可以用手机、可以用电脑；&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;允许自己不写，给自己随时重新开始的机会。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;6. 使用科技帮助&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;可以给自己定闹钟，可以使用 iPhone 的快捷指令，设置到某个地点就弹出日志记录的提醒。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;出差或其他不能好好坐在桌前写日志的时候，可以使用手机的语音转文字。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin: 10px 0%;font-size: 16px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;min-width: 10%;max-width: 100%;vertical-align: top;line-height: 0;box-sizing: border-box;"&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;min-width: 10%;max-width: 100%;vertical-align: top;border-bottom: 2px solid rgb(62, 62, 62);border-bottom-right-radius: 0px;line-height: 0;box-sizing: border-box;" data-style="display: inline-block; min-width: 10%; max-width: 100%; vertical-align: top; border-bottom: 2px solid rgb(62, 62, 62); border-bottom-right-radius: 0px; line-height: 0; box-sizing: border-box;" class="js_darkmode__10"&gt;&lt;section style="transform: translate3d(10px, 0px, 0px);-webkit-transform: translate3d(10px, 0px, 0px);-moz-transform: translate3d(10px, 0px, 0px);-o-transform: translate3d(10px, 0px, 0px);margin: 0px 0% 5px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="line-height: 1;padding: 0px 10px;font-size: 20px;text-align: justify;box-sizing: border-box;"&gt;&lt;p style="margin: 0px 0px 4px;white-space: normal;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;记日志带给我的&lt;strong style="font-size: 25px;box-sizing: border-box;"&gt;&amp;nbsp;&lt;/strong&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: left;margin: -25px 0% -2px;transform: translate3d(-15px, 0px, 0px);-webkit-transform: translate3d(-15px, 0px, 0px);-moz-transform: translate3d(-15px, 0px, 0px);-o-transform: translate3d(-15px, 0px, 0px);box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: 30px;height: 30px;vertical-align: top;overflow: hidden;border-width: 2px;border-radius: 50px;border-style: solid;border-color: rgb(62, 62, 62);line-height: 1;background-color: rgb(255, 219, 0);letter-spacing: 0px;box-sizing: border-box;" data-style="display: inline-block; width: 30px; height: 30px; vertical-align: top; overflow: hidden; border-width: 2px; border-radius: 50px; border-style: solid; border-color: rgb(62, 62, 62); line-height: 1; background-color: rgb(255, 219, 0); letter-spacing: 0px; box-sizing: border-box;" class="js_darkmode__11"&gt;&lt;section style="margin: 5px 0% 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="text-align: center;box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;box-sizing: border-box;"&gt;&lt;em style="box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;3&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: right;margin: -13px 0% 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: 37px;height: 20px;vertical-align: top;overflow: hidden;background-position: 50% 50%;background-repeat: no-repeat;background-size: contain;background-attachment: scroll;background-image: url(&amp;quot;https://mmbiz.qpic.cn/mmbiz_jpg/PJlRribMEuBDR6ia2ql8icCILpubOJQgO7B097pNX89ZscsOUTBENk35g0b0BDEMdmFKQ5U4vWpOvsBic1bL471vXQ/640?wx_fmt=jpeg&amp;quot;);box-sizing: border-box;" class="js_darkmode__bg__2 js_darkmode__12" data-style="display: inline-block; width: 37px; height: 20px; vertical-align: top; overflow: hidden; background-position: 50% 50%; background-repeat: no-repeat; background-size: contain; background-attachment: scroll; background-image: url(&amp;quot;https://mmbiz.qpic.cn/mmbiz_jpg/PJlRribMEuBDR6ia2ql8icCILpubOJQgO7B097pNX89ZscsOUTBENk35g0b0BDEMdmFKQ5U4vWpOvsBic1bL471vXQ/640?wx_fmt=jpeg&amp;quot;); box-sizing: border-box;"&gt;&lt;section style="line-height: 0;text-align: justify;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: unset;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;1. 做自己没做过的事情，组建打卡群，认识了新的朋友，和物理距离上很远的老朋友，也好像每天都能见到一样。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;2. 积极的虚荣感，可以在介绍自己的时候说自己连续记录了几百天的日志，用这种行为来定义部分的自己。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;3. 给我写「阅读周报」带来很大便利，写每周的复盘之前粗略过一遍这周的日志就好了。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;4. 能够练习打字，日志作为一天最开始要做的事情，阻力很低，很快就能进入写东西的状态，这种状态就能开启一天的一个文字表达的状态。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: unset;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p&gt;&lt;br&gt;&lt;/p&gt;&lt;section style="padding-right: 10px;padding-left: 10px;outline: 0px;line-height: 2;font-size: 15px;letter-spacing: 1px;visibility: visible;"&gt;&lt;section powered-by="xiumi.us" style="outline: 0px;text-align: unset;"&gt;&lt;p style="outline: 0px;font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif;white-space: normal;background-color: rgb(255, 255, 255);" data-style="outline: 0px; font-family: system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;PingFang SC&amp;quot;, &amp;quot;Hiragino Sans GB&amp;quot;, &amp;quot;Microsoft YaHei UI&amp;quot;, &amp;quot;Microsoft YaHei&amp;quot;, Arial, sans-serif; white-space: normal; background-color: rgb(255, 255, 255);" class="js_darkmode__13"&gt;&lt;strong style="outline: 0px;"&gt;&lt;span style="outline: 0px;font-size: 12px;"&gt;如果你喜欢我的推文，请关注公众号醋泡白豆~&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;section class="mp_profile_iframe_wrp" style="outline: 0px;"&gt;&lt;mp-common-profile class="custom_select_card mp_profile_iframe js_wx_tap_highlight mp_common_widget" data-pluginname="mpprofile" data-weuitheme="light" data-id="MzI2OTIxMTg1Nw==" data-headimg="http://mmbiz.qpic.cn/mmbiz_png/4ADhmAJPyqCfQIeWCibmq12nNoQPoovmGAkQXibbHrPEWd6dbEMeXDsHmR2FvB44AqgIod9yvnvRyOiaOAicCc7C1g/300?wx_fmt=png&amp;amp;wxfrom=19" data-nickname="醋泡白豆" data-alias="cpbd1121" data-signature="勤读书，更周报。用文字拽住不可控的世界。我是一个学习了四年日语但做了五年英语导游的大饼爱好者。" data-from="2" data-is_biz_ban="0" data-origin_num="219" data-isban="0" data-biz_account_status="0" data-index="0"&gt;&lt;/mp-common-profile&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;</description></item><item><title>醋泡白豆：搭建个人网站指南1.0</title><link>https://new.cupaobaidou.com/archives/726/</link><pubDate>Sun, 10 Apr 2022 11:11:00 +0800</pubDate><guid>https://new.cupaobaidou.com/archives/726/</guid><description>&lt;section style="line-height: 2; font-size: 15px; letter-spacing: 1px; padding: 0px 10px; box-sizing: border-box; font-style: normal; font-weight: 400; text-align: justify; visibility: visible;"&gt;&lt;section style="box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%; text-align: left; justify-content: flex-start; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block; vertical-align: middle; width: auto; box-shadow: rgb(0, 0, 0) 0px 0px 0px; line-height: 0; min-width: 10%; max-width: 100%; height: auto; align-self: center; margin: 0px 10px 0px 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="text-align: center; margin: 0px 0%; justify-content: center; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%; vertical-align: middle; display: inline-block; line-height: 0; border-width: 0px; border-radius: 257px; border-style: solid; border-color: rgb(255, 255, 255); overflow: hidden; width: 60px; height: auto; box-sizing: border-box; visibility: visible;"&gt;&lt;img class="rich_pages wxw-img" data-ratio="1" data-type="png" data-w="640" style="vertical-align: middle; max-width: 100%; width: 60px !important; box-sizing: border-box; height: auto !important; visibility: visible !important;" width="100%" data-original-style="vertical-align: middle;max-width: 100%;width: 100%;box-sizing: border-box;" data-index="1" src="https://new.cupaobaidou.com/usr/uploads/2024/01/3814070318.png" _width="100%" crossorigin="anonymous" alt="Image" data-fail="0"&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block; vertical-align: middle; width: auto; min-width: 10%; max-width: 100%; height: auto; align-self: center; border-style: solid; border-width: 2px 0px; border-color: rgb(0, 0, 0) rgb(62, 62, 62); padding: 4px; box-sizing: border-box; visibility: visible;" data-style="display: inline-block; vertical-align: middle; width: auto; min-width: 10%; max-width: 100%; height: auto; align-self: center; border-style: solid; border-width: 2px 0px; border-color: rgb(0, 0, 0) rgb(62, 62, 62); padding: 4px; box-sizing: border-box;" class="js_darkmode__0"&gt;&lt;section style="margin: 0px 0%; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="font-size: 16px; text-align: center; box-sizing: border-box; visibility: visible;"&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;strong style="box-sizing: border-box; visibility: visible;"&gt;写在前面&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="font-size: 14px; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;笔者在建立个人网站之前未接触过编程，偶然在一篇文章中看到，有位国外的博主Derek Sivers把自己读过的书做的笔记放在了自己的网站上，比尔盖茨也有个专门的笔记网站。恰逢双十一阿里巴巴的云服务器有特价活动，于是就了自建网站的念头。（链接见第四部分）&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;通过互联网十几篇图文教程和几个视频教程，以及朋友的答疑解惑，搭建了一个个人博客网站，建站成功之后很是激动。当然做出来的网站页面很朴素，是套用的免费模板。但作为一个分享笔记的地方是足够了。&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;从购买云服务器到上传成功笔记，耗时一个多月。首次建站，遇到问题就搁置，耽搁了很长时间。实际搭建时间，应该不到半天。打算以现在的视角给当时的自己写份指南，也分享到公众号，供有兴趣自己建站的小伙伴参考。&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;这篇文章主要分以下四部分：&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;1、开始前的几点建议&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;2、建站准备：了解流程和概念&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;3、建站七个流程&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;4、需要用到的网站和软件的地址&lt;/p&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="align-items: center; display: flex; margin: 10px 0%; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="display: inline-block; vertical-align: bottom; width: auto; flex: 1 0 1px; letter-spacing: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="margin: 0.5em 0px; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="border-top: 1px dashed rgb(62, 62, 62); box-sizing: border-box; visibility: visible;" data-style="border-top: 1px dashed rgb(62, 62, 62); box-sizing: border-box;" class="js_darkmode__1"&gt;&lt;section style="visibility: visible;"&gt;&lt;svg viewBox="0 0 1 1" style="float: left; line-height: 0; width: 0px; vertical-align: top; visibility: visible;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block; vertical-align: bottom; width: auto; flex: 0 1 auto; box-shadow: rgb(0, 0, 0) 0px 0px 0px; line-height: 0; padding: 0px 5px; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="transform: rotateZ(45deg); box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="text-align: center; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="display: inline-block; width: 10px; height: 10px; vertical-align: top; overflow: hidden; background-color: rgb(255, 222, 23); border-width: 1px; border-style: solid; border-color: rgb(62, 62, 62); box-shadow: rgb(255, 255, 255) 1px 1px 0px inset; line-height: 0; letter-spacing: 0px; box-sizing: border-box; visibility: visible;" data-style="display: inline-block; width: 10px; height: 10px; vertical-align: top; overflow: hidden; background-color: rgb(255, 222, 23); border-width: 1px; border-style: solid; border-color: rgb(62, 62, 62); box-shadow: rgb(255, 255, 255) 1px 1px 0px inset; line-height: 0; letter-spacing: 0px; box-sizing: border-box;" class="js_darkmode__2"&gt;&lt;section style="box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block; vertical-align: bottom; width: auto; flex: 1 0 1px; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="margin: 0.5em 0px; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="border-top: 1px dashed rgb(62, 62, 62); box-sizing: border-box; visibility: visible;" data-style="border-top: 1px dashed rgb(62, 62, 62); box-sizing: border-box;" class="js_darkmode__3"&gt;&lt;section style="visibility: visible;"&gt;&lt;svg viewBox="0 0 1 1" style="float: left; line-height: 0; width: 0px; vertical-align: top; visibility: visible;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%; text-align: left; justify-content: flex-start; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block; vertical-align: middle; width: 79.0634%; box-shadow: rgb(0, 0, 0) 0px 0px 0px; line-height: 0; height: auto; align-self: center; margin: 0px 10px 0px 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;section style="visibility: visible;"&gt;&lt;svg viewBox="0 0 1 1" style="float: left; line-height: 0; width: 0px; vertical-align: top; visibility: visible;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block; vertical-align: middle; width: auto; min-width: 10%; max-width: 100%; height: auto; align-self: center; border-style: solid; border-width: 2px 0px; border-color: rgb(0, 0, 0) rgb(62, 62, 62); padding: 4px; box-sizing: border-box; visibility: visible;" data-style="display: inline-block; vertical-align: middle; width: auto; min-width: 10%; max-width: 100%; height: auto; align-self: center; border-style: solid; border-width: 2px 0px; border-color: rgb(0, 0, 0) rgb(62, 62, 62); padding: 4px; box-sizing: border-box;" class="js_darkmode__4"&gt;&lt;section style="margin: 0px 0%; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;section style="text-align: center; font-size: 16px; box-sizing: border-box; visibility: visible;"&gt;&lt;p style="margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;strong style="box-sizing: border-box; visibility: visible;"&gt;开始前的几点建议：&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px; box-sizing: border-box; visibility: visible;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;&lt;br style="box-sizing: border-box; visibility: visible;"&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;1、&lt;strong style="box-sizing: border-box; visibility: visible;"&gt;&lt;span style="color: rgb(173, 46, 46); box-sizing: border-box; visibility: visible;" data-style="color: rgb(173, 46, 46); box-sizing: border-box;" class="js_darkmode__5"&gt;要有信心。&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;现在网络基础设施，以及网络上的信息完全可以让一个不懂编程的人建立自己的个人网站。&lt;/p&gt;&lt;p style="white-space: normal; margin: 0px; padding: 0px; box-sizing: border-box; visibility: visible;"&gt;2、&lt;span style="color: rgb(173, 46, 46); box-sizing: border-box; visibility: visible;" data-style="color: rgb(173, 46, 46); box-sizing: border-box;" class="js_darkmode__6"&gt;&lt;strong style="box-sizing: border-box; visibility: visible;"&gt;要有耐心。&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;自建网站并不难，只是步骤比较多。分解任务，一步步来，每一小步你都是可以做到的。如果觉得有难度，继续分解任务。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;3、&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(173, 46, 46);box-sizing: border-box;" data-style="color: rgb(173, 46, 46); box-sizing: border-box;" class="js_darkmode__7"&gt;做好记录。&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;中途放弃多次但最后还是搭建成功，很大一部分靠做的记录笔记。建立专门的文档，每一步的操作，每一个设置的账号密码，最好都记录下来。以便下次不用从头开始。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;4、&lt;span style="color: rgb(173, 46, 46);box-sizing: border-box;" data-style="color: rgb(173, 46, 46); box-sizing: border-box;" class="js_darkmode__8"&gt;&lt;strong style="box-sizing: border-box;"&gt;多方参考，善于求助。&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;网上有很多教程，但有可能发布时间很早、使用的机器和软件和你不是同款，实际操作的时候会遇到一些教程上没有的问题，这时候要善用搜索引擎。实在解决不了，可以求助专业的朋友。&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;5、&lt;span style="color: rgb(173, 46, 46);box-sizing: border-box;" data-style="color: rgb(173, 46, 46); box-sizing: border-box;" class="js_darkmode__9"&gt;&lt;strong style="box-sizing: border-box;"&gt;勤读文档。&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;任何软件或网站的帮助页面的内容，其实可以解决大部分的问题。&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%;text-align: left;justify-content: flex-start;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: 79.0634%;vertical-align: middle;box-shadow: rgb(0, 0, 0) 0px 0px 0px;line-height: 0;height: auto;align-self: center;margin: 0px 10px 0px 0px;box-sizing: border-box;"&gt;&lt;section&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: middle;width: auto;min-width: 10%;max-width: 100%;height: auto;align-self: center;border-style: solid;border-width: 2px 0px;border-color: rgb(0, 0, 0) rgb(62, 62, 62);padding: 4px;box-sizing: border-box;" data-style="display: inline-block; vertical-align: middle; width: auto; min-width: 10%; max-width: 100%; height: auto; align-self: center; border-style: solid; border-width: 2px 0px; border-color: rgb(0, 0, 0) rgb(62, 62, 62); padding: 4px; box-sizing: border-box;" class="js_darkmode__10"&gt;&lt;section style="margin: 0px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="text-align: center;font-size: 16px;box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;建站准备: 了解流程和概念&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;从流程上主要分为以下七个部分 ：&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="1.0564815" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 691.995px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="2" src="https://new.cupaobaidou.com/usr/uploads/2024/01/3300121028.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;形象一些来说，你租用了一个智能仓库。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;box-sizing: border-box;"&gt;网站的&lt;span style="text-decoration: underline;color: rgb(4, 4, 23);box-sizing: border-box;" data-style="text-decoration: underline; color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__11"&gt;&lt;strong style="box-sizing: border-box;"&gt;IP地址&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;就相当于仓库的具体地址，比如北京市区街道**楼单元号；&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;访问网站就像用地图导航，只知道IP的话，每次都要输入很长的信息，但网站有了&lt;span style="color: rgb(4, 4, 23);text-decoration: underline;box-sizing: border-box;" data-style="color: rgb(4, 4, 23); text-decoration: underline; box-sizing: border-box;" class="js_darkmode__12"&gt;&lt;strong style="box-sizing: border-box;"&gt;域名&lt;/strong&gt;&lt;/span&gt;，就如同你的仓库有了具体的名字，例如“醋豆仓库”，每次只需要输入这四个字，就能找到你的仓库。当然域名有唯一性，别人注册了，你就不能用了。www.jd.com、www.mi.com 这些简短好记的域名都是企业花了大价钱买回来的。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;color: rgb(4, 4, 23);box-sizing: border-box;" data-style="text-decoration: underline; color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__13"&gt;云服务器&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;是一种虚拟的基础架构，作用是执行应用和储存信息。其实相当于另一种形式的PC，24小时不停机运转。现在大部分人使用的都是云服务器，性价比更高，安全性也相对自己架服务器要高。用租仓库的比喻，云服务器相当于你购买的仓库以及可以用手机远程操作仓库开关门的这些服务。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;color: rgb(4, 4, 23);box-sizing: border-box;" data-style="text-decoration: underline; color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__14"&gt;xshell&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;是用于远程连接Linux服务器，方便用户对Linux服务器上的资源文件进行远程操控的一个安全终端模拟软件。相当于连接智能仓库和你的手机的一个软件。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);text-decoration: underline;box-sizing: border-box;" data-style="color: rgb(4, 4, 23); text-decoration: underline; box-sizing: border-box;" class="js_darkmode__15"&gt;宝塔面板&lt;/span&gt;&lt;/strong&gt;主要用于管理、维护服务器使用，是一款服务器管理软件，支持windows和linux系统，通过浏览器管理服务器，比如创建新网站、FTP、数据库等，具有可视化的功能。相当于你手机上远程管理智能仓库的一个软件，页面很简单，适合技术小白。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;box-sizing: border-box;"&gt;xshell和宝塔面板的区别&lt;/span&gt;在于，xshell只能通过SSH方式登录服务器，使用shell命令来控制和操作服务器和文件，比如安装软件和程序，复制粘贴，创建文件等，任何操作都是没有图形界面，都是在黑色界面上敲代码命令实现的，这样对于技术小白比较有难度的，不适合初学建站的人使用，于是&lt;span style="text-decoration: underline;box-sizing: border-box;"&gt;可视化简单易操作的宝塔面板就来了&lt;/span&gt;。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;color: rgb(4, 4, 23);box-sizing: border-box;" data-style="text-decoration: underline; color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__16"&gt;WordPress&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;是是一种使用php开发语言和数据库的内容管理系统，有很多免费和付费的模板。有点像你用来管理智能仓库的金蝶库存管理软件。我的网站界面都是通过修改WordPress上的模板做出来的。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;备案的全称叫做&lt;span style="text-decoration: underline;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;color: rgb(4, 4, 23);box-sizing: border-box;" data-style="text-decoration: underline; color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__17"&gt;ICP备案&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;。ICP也就是Internet Content Provider，指的是网络内容服务商 ，即向广大用户综合提供互联网信息业务和增值业务的网络运营商。相当于你的智能仓库向政府申请相应的执照。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="text-decoration: underline;color: rgb(4, 4, 23);box-sizing: border-box;" data-style="text-decoration: underline; color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__18"&gt;SSL证书&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;是HTTP明文协议升级HTTPS加密协议必备的数字证书。它在客户端（浏览器）与服务端（网站服务器）之间搭建一条安全的加密通道，对两者之间交换的信息进行加密，确保传输数据不被泄露或篡改。部署了SSL证书的网站，在浏览器的地址栏前面会增加一个小锁的标志，没有部署，则会显示红色的“不安全”字样。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;前几周还有条新闻，因为颁发SSL证书的公司基本都是欧美国家的，俄乌战争开始，著名SSL认证机构Sectigo拒绝为俄罗斯域名颁发HTTPS证书，甚至还吊销了已经办理的证书。&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%;text-align: left;justify-content: flex-start;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;vertical-align: middle;width: 79.0634%;box-shadow: rgb(0, 0, 0) 0px 0px 0px;line-height: 0;height: auto;align-self: center;margin: 0px 10px 0px 0px;box-sizing: border-box;"&gt;&lt;section&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: middle;width: auto;min-width: 10%;max-width: 100%;height: auto;align-self: center;border-style: solid;border-width: 2px 0px;border-color: rgb(0, 0, 0) rgb(62, 62, 62);padding: 4px;box-sizing: border-box;" data-style="display: inline-block; vertical-align: middle; width: auto; min-width: 10%; max-width: 100%; height: auto; align-self: center; border-style: solid; border-width: 2px 0px; border-color: rgb(0, 0, 0) rgb(62, 62, 62); padding: 4px; box-sizing: border-box;" class="js_darkmode__19"&gt;&lt;section style="margin: 0px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="text-align: center;font-size: 16px;box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;建站七个流程&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;border-left: 5px solid rgb(4, 4, 23);border-bottom-left-radius: 0px;padding: 0px 0px 0px 9px;min-width: 10%;max-width: 100%;height: auto;box-sizing: border-box;" data-style="display: inline-block; width: auto; vertical-align: top; border-left: 5px solid rgb(4, 4, 23); border-bottom-left-radius: 0px; padding: 0px 0px 0px 9px; min-width: 10%; max-width: 100%; height: auto; box-sizing: border-box;" class="js_darkmode__20"&gt;&lt;section style="margin: 2px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="color: rgb(4, 4, 23);font-size: 18px;line-height: 1.3;box-sizing: border-box;" data-style="color: rgb(4, 4, 23); font-size: 18px; line-height: 1.3; box-sizing: border-box;" class="js_darkmode__21"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;1、购买云服务器&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;建议618或者是双十一购买，各大平台都对新用户非常友好，轻量性的服务器前三年的价格一年100元左右。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;我搭建个人网站的用途主要是放文字类的笔记和文章，所以选择了阿里云轻量性云服务器ECS s6 1核2G。操作系统选择Alibaba Cloud Lunix3.2104 64位，宽带1M。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-color: rgb(160, 160, 160);border-width: 1px;border-style: solid;overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.3935185" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 257.755px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="3" src="https://new.cupaobaidou.com/usr/uploads/2024/01/1803777826.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="text-decoration: none;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="text-decoration: none;color: rgb(4, 4, 23);box-sizing: border-box;" data-style="text-decoration: none; color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__22"&gt;地域选择：&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;取决于访问网站的人群，某些地区用户多，就选择最近城市的实例，无法确定的话，直接选择北京或上海即可。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;更根据自己的需求购买云服务器之后，如果是个人的网站，暂未有商业化需求，按照我的配置选择就可以。后续的操作基本都在页面右上角的&lt;span style="text-decoration: underline;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;控制台&lt;/strong&gt;&lt;/span&gt;，可以多熟悉一下。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="text-decoration: none;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="text-decoration: none;color: rgb(4, 4, 23);box-sizing: border-box;" data-style="text-decoration: none; color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__23"&gt;实例：&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;从控制台进入购买的服务器，点击左侧栏的实例，再点击创建实例， Lunix系统用户名为root，只要设置自己实例的密码即可。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.5018519" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 328.713px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="4" src="https://new.cupaobaidou.com/usr/uploads/2024/01/3208742303.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;border-left: 5px solid rgb(4, 4, 23);border-bottom-left-radius: 0px;padding: 0px 0px 0px 9px;min-width: 10%;max-width: 100%;height: auto;box-sizing: border-box;" data-style="display: inline-block; width: auto; vertical-align: top; border-left: 5px solid rgb(4, 4, 23); border-bottom-left-radius: 0px; padding: 0px 0px 0px 9px; min-width: 10%; max-width: 100%; height: auto; box-sizing: border-box;" class="js_darkmode__24"&gt;&lt;section style="margin: 2px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="color: rgb(4, 4, 23);font-size: 18px;line-height: 1.3;box-sizing: border-box;" data-style="color: rgb(4, 4, 23); font-size: 18px; line-height: 1.3; box-sizing: border-box;" class="js_darkmode__25"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;2、域名购买、认证以及解析&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__26"&gt;购买：&lt;/span&gt;&lt;/strong&gt;购买域名的平台有很多，国内头部公司有腾讯云、阿里云、华为云等，价格上有些差异，其他方便都基本类似。我用的是阿里云。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.5018519" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 328.713px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="5" src="https://new.cupaobaidou.com/usr/uploads/2024/01/906044429.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;.com是国际顶级域名，全球都可以访问，.cn是中国国家顶级域名，.io是科技圈子喜欢的域名，比如nft最大的交易网站的域名就是www.opensea.io 。建议选择以大众接受度高的.com结尾的域名，不是特别突出的域名大概50元以内一年。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__27"&gt;&lt;strong style="box-sizing: border-box;"&gt;认证：&lt;/strong&gt;&lt;/span&gt;购买好自己的域名之后，点击控制台，再点击阿里云最左侧的导航条，找到域名，进行实名认证，一般需要1~2个工作日。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-width: 1px;border-style: solid;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.3564815" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 233.495px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="6" src="https://new.cupaobaidou.com/usr/uploads/2024/01/1565561378.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.3564815" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 233.495px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="7" src="https://new.cupaobaidou.com/usr/uploads/2024/01/1420158833.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__28"&gt;解析：&lt;/span&gt;&lt;/strong&gt;域名的解析相当于把IP地址与购买的域名绑定，让别人可以通过简单的域名来访问你的网站。在控制台——云服务器ECS——实例——复制自己的公网IP地址。回到我的域名界面，点击解析。按照引导，粘贴公网IP即可进行解析。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;border-left: 5px solid rgb(4, 4, 23);border-bottom-left-radius: 0px;padding: 0px 0px 0px 9px;min-width: 10%;max-width: 100%;height: auto;box-sizing: border-box;" data-style="display: inline-block; width: auto; vertical-align: top; border-left: 5px solid rgb(4, 4, 23); border-bottom-left-radius: 0px; padding: 0px 0px 0px 9px; min-width: 10%; max-width: 100%; height: auto; box-sizing: border-box;" class="js_darkmode__29"&gt;&lt;section style="margin: 2px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="color: rgb(4, 4, 23);font-size: 18px;line-height: 1.3;box-sizing: border-box;" data-style="color: rgb(4, 4, 23); font-size: 18px; line-height: 1.3; box-sizing: border-box;" class="js_darkmode__30"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;3、SSH软件xshell安装与设置&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__31"&gt;下载：&lt;/span&gt;&lt;/strong&gt;可以通过下面的地址，选择家庭和学校使用的非商用版本，填写邮箱，官方会把下载地址发送到你的邮箱。这样就不会出现xshell软件过试用期需要付费的情况了。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.5018519" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 328.713px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="8" src="https://new.cupaobaidou.com/usr/uploads/2024/01/2276327658.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.5018519" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 328.713px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="9" src="https://new.cupaobaidou.com/usr/uploads/2024/01/783201515.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__32"&gt;连接服务器：&lt;/span&gt;&lt;/strong&gt;安装好软件后，进入xshell，点击左上角的“文件”，再点击“新建”。名称可以随意修改，协议为SSH，不用修改。主机后面填入你的阿里云服务器公网IP，点击确定。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.9498554" data-w="1037" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 622.155px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="10" src="https://new.cupaobaidou.com/usr/uploads/2024/01/3912295316.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;这时候会弹出对话框，我们按照要求填入登录的用户名（root）和服务器的密码。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.7021475" data-w="1071" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 459.907px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="11" src="https://new.cupaobaidou.com/usr/uploads/2024/01/3407946426.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;到这里，我们就使用xshell连接上了服务器。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;不要关闭xshell，安装宝塔面板还需要在此界面。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;border-left: 5px solid rgb(4, 4, 23);border-bottom-left-radius: 0px;padding: 0px 0px 0px 9px;min-width: 10%;max-width: 100%;height: auto;box-sizing: border-box;" data-style="display: inline-block; width: auto; vertical-align: top; border-left: 5px solid rgb(4, 4, 23); border-bottom-left-radius: 0px; padding: 0px 0px 0px 9px; min-width: 10%; max-width: 100%; height: auto; box-sizing: border-box;" class="js_darkmode__33"&gt;&lt;section style="margin: 2px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="color: rgb(4, 4, 23);font-size: 18px;line-height: 1.3;box-sizing: border-box;" data-style="color: rgb(4, 4, 23); font-size: 18px; line-height: 1.3; box-sizing: border-box;" class="js_darkmode__34"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;4、安装与设置宝塔面板&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__35"&gt;安装：&lt;/span&gt;&lt;/strong&gt;在安装宝塔面板之前，我们需要打开服务器8888端口。我们到阿里云服务器ECS页面——网络与安全——安全组——服务器右边的“配置规则”——手动添加——在“目的”后输入“8888”，在“源”后边选择“0”最多的那个选项，点击保存。这样8888端口就被放行，就可以安装访问宝塔面板了。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.3185185" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 208.63px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="12" src="https://new.cupaobaidou.com/usr/uploads/2024/01/1100314289.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;在xshell的黑色界面，输入&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="color: rgb(71, 193, 168);box-sizing: border-box;"&gt;yum install -y wget &amp;amp;&amp;amp; wget -O install.sh http://download.bt.cn/install/install_6.0.sh &amp;amp;&amp;amp; sh install.sh&lt;/span&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="color: rgb(71, 193, 168);box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;然后黑屏上的代码滚动一段时间后，底部出现：&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="color: rgb(71, 193, 168);box-sizing: border-box;"&gt;Do you want to install BT-Panel to the / www directory now?(y/n)：&lt;/span&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;输入：&lt;span style="color: rgb(71, 193, 168);box-sizing: border-box;"&gt;y&lt;/span&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.7324074" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 479.727px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="13" src="https://new.cupaobaidou.com/usr/uploads/2024/01/1867073157.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;黑屏上的代码开始滚动，大概需要一分钟左右，耐心等待。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;出现：&lt;span style="color: rgb(71, 193, 168);box-sizing: border-box;"&gt;Congratulations！Installed successfully!&lt;/span&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;说明宝塔面板按照成功。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.7305556" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 478.514px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="14" src="https://new.cupaobaidou.com/usr/uploads/2024/01/2953534454.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;保存好红色框中的内外面板地址和username、password。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__36"&gt;登录：&lt;/span&gt;&lt;/strong&gt;宝塔面板无需下载客户端，那么怎么登录呢？&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;打开浏览器，在地址处输入刚才外网面板地址，确认，即可来到宝塔面板的登录页面。输入username和password登录。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.4759259" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 311.731px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="15" src="https://new.cupaobaidou.com/usr/uploads/2024/01/2498228857.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__37"&gt;&lt;strong style="box-sizing: border-box;"&gt;设置：&lt;/strong&gt;&lt;/span&gt;登录宝塔Linux面板——点击左侧菜单“软件商店”——宝塔插件——找到“宝塔一件部署源代码”并安装。&lt;/p&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;部署完源代码插件后，点击“设置”进入到一键部署源代码页面——点击“博客”——找到“WordPress”，点击右侧的“一键部署”。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.5018519" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 328.713px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="16" src="https://new.cupaobaidou.com/usr/uploads/2024/01/1555119318.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;在弹出的页面中，我们需要输入“域名”，其他内容系统会自动创建，保持默认，点击“提交”。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;几十秒后会弹出“已成功部署WordPress站点”，这时候要保存好数据库的账号资料（数据库名、用户、密码、访问站点）&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;访问站点，点击“现在就开始！”，在弹出的对话框中填入相应的内容，记得修改“表前缀”，点击“提交”。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;在新的对话框中填入相应的站点标题、用户名、密码、电子与邮件，点击“安装WordPress”。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;稍等片刻，显示“成功！” ，WordPress站点就安装完成了。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;border-left: 5px solid rgb(4, 4, 23);border-bottom-left-radius: 0px;padding: 0px 0px 0px 9px;min-width: 10%;max-width: 100%;height: auto;box-sizing: border-box;" data-style="display: inline-block; width: auto; vertical-align: top; border-left: 5px solid rgb(4, 4, 23); border-bottom-left-radius: 0px; padding: 0px 0px 0px 9px; min-width: 10%; max-width: 100%; height: auto; box-sizing: border-box;" class="js_darkmode__38"&gt;&lt;section style="margin: 2px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="color: rgb(4, 4, 23);font-size: 18px;line-height: 1.3;box-sizing: border-box;" data-style="color: rgb(4, 4, 23); font-size: 18px; line-height: 1.3; box-sizing: border-box;" class="js_darkmode__39"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;5、设置WordPress&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;我们在WordPress后台可以实现写文章、安装插件、通过拖拽的方式来定制自己的网站页面等功能。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;WordPress是今后我们运营和维护网站&lt;span style="text-decoration: underline;box-sizing: border-box;"&gt;最常来的地方&lt;/span&gt;了，请务必记好登录名和密码。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__40"&gt;登录：&lt;/span&gt;&lt;/strong&gt;WordPress在电脑端也不需要安装客户端，直接使用浏览器登录。WordPress登录网址默认是：域名/wp-admin/，输入登录名和密码，我们就能进入到管理网站内容的后台了。当然这样域名/wp-admin/登录有一定风险，网站搭建完毕后可自己研究换其他方式。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.5018519" data-type="png" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 328.713px !important;" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="17" src="https://new.cupaobaidou.com/usr/uploads/2024/01/2668824685.png" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__41"&gt;插件：&lt;/span&gt;&lt;/strong&gt;登录WordPress——点击左侧“插件”——“安装插件”——即可在右侧的搜索框中搜索网站UI编辑器、邮件收发器、主题等各种实用插件。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img data-ratio="0.5018519" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 328.713px !important;" data-type="png" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="18" src="https://new.cupaobaidou.com/usr/uploads/2024/01/740003057.png" class="js_img_placeholder wx_img_placeholder" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__42"&gt;主题：&lt;/span&gt;&lt;/strong&gt;登录WordPress——点击左侧“外观”—— 搜索安装你喜欢的主题。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__43"&gt;发文：&lt;/span&gt;&lt;/strong&gt;登录WordPress——点击左侧“文章”即可进入编辑和发表文章的界面。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;这部分大家可按照自己的喜好，搭建独特风格的网站页面。在这里推荐B站up主梧桐小课堂老师的视频，他的建站视频帮了我很多，我的网站目前使用的也是他推荐的Blocksy主题，免费且简洁。（链接在第四部分）&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.6435185" data-type="png" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 421.505px !important;" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="19" src="https://new.cupaobaidou.com/usr/uploads/2024/01/2447651609.png" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;border-left: 5px solid rgb(4, 4, 23);border-bottom-left-radius: 0px;padding: 0px 0px 0px 9px;min-width: 10%;max-width: 100%;height: auto;box-sizing: border-box;" data-style="display: inline-block; width: auto; vertical-align: top; border-left: 5px solid rgb(4, 4, 23); border-bottom-left-radius: 0px; padding: 0px 0px 0px 9px; min-width: 10%; max-width: 100%; height: auto; box-sizing: border-box;" class="js_darkmode__44"&gt;&lt;section style="margin: 2px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="color: rgb(4, 4, 23);font-size: 18px;line-height: 1.3;box-sizing: border-box;" data-style="color: rgb(4, 4, 23); font-size: 18px; line-height: 1.3; box-sizing: border-box;" class="js_darkmode__45"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;6、网站备案&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;域名的持有者要和备案填入的信息相一致。登录阿里云账户，点击右上角“ICP备案”，按照引导备案即可。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="text-align: center;margin-top: 10px;margin-bottom: 10px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="max-width: 100%;vertical-align: middle;display: inline-block;line-height: 0;border-style: solid;border-width: 1px;border-color: rgb(160, 160, 160);overflow: hidden;box-sizing: border-box;"&gt;&lt;img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-ratio="0.5018519" data-type="png" data-w="1080" style="vertical-align: middle; max-width: 100%; box-sizing: border-box; width: 655px !important; height: 328.713px !important;" data-original-style="vertical-align: middle;max-width: 100%;box-sizing: border-box;" data-index="20" src="https://new.cupaobaidou.com/usr/uploads/2024/01/1639282257.png" _width="677px" crossorigin="anonymous" alt="Image"&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;width: auto;vertical-align: top;border-left: 5px solid rgb(4, 4, 23);border-bottom-left-radius: 0px;padding: 0px 0px 0px 9px;min-width: 10%;max-width: 100%;height: auto;box-sizing: border-box;" data-style="display: inline-block; width: auto; vertical-align: top; border-left: 5px solid rgb(4, 4, 23); border-bottom-left-radius: 0px; padding: 0px 0px 0px 9px; min-width: 10%; max-width: 100%; height: auto; box-sizing: border-box;" class="js_darkmode__46"&gt;&lt;section style="margin: 2px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="color: rgb(4, 4, 23);font-size: 18px;line-height: 1.3;box-sizing: border-box;" data-style="color: rgb(4, 4, 23); font-size: 18px; line-height: 1.3; box-sizing: border-box;" class="js_darkmode__47"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;7、免费申请SSL证书&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;每个实名认证过的阿里云账号都可以免费申请20个SSL。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__48"&gt;申请：&lt;/span&gt;&lt;/strong&gt;登录阿里云官网——搜索框输入“SSL”——点击证书控制台——选择“单域名 DVSSL 免费版”—— 点击立即购买支付0元，成功购买。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;&lt;span style="color: rgb(4, 4, 23);box-sizing: border-box;" data-style="color: rgb(4, 4, 23); box-sizing: border-box;" class="js_darkmode__49"&gt;绑定：&lt;/span&gt;&lt;/strong&gt;在证书控制台，找到购买的证书，点击“证书申请”——填写对应内容，等待审核通过——审核通过后即与所填写的域名绑定即可下载对应的SSL证书——下载证书替换掉本地证书就成功了。&lt;/p&gt;&lt;/section&gt;&lt;section style="margin: 10px 0%;text-align: left;justify-content: flex-start;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="display: inline-block;vertical-align: middle;width: 79.0634%;box-shadow: rgb(0, 0, 0) 0px 0px 0px;line-height: 0;height: auto;align-self: center;margin: 0px 10px 0px 0px;box-sizing: border-box;"&gt;&lt;section&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: middle;width: auto;min-width: 10%;max-width: 100%;height: auto;align-self: center;border-style: solid;border-width: 2px 0px;border-color: rgb(0, 0, 0) rgb(62, 62, 62);padding: 4px;box-sizing: border-box;" data-style="display: inline-block; vertical-align: middle; width: auto; min-width: 10%; max-width: 100%; height: auto; align-self: center; border-style: solid; border-width: 2px 0px; border-color: rgb(0, 0, 0) rgb(62, 62, 62); padding: 4px; box-sizing: border-box;" class="js_darkmode__50"&gt;&lt;section style="margin: 0px 0%;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="text-align: center;font-size: 16px;box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong style="box-sizing: border-box;"&gt;需要用到的网站和软件的地址&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;ol class="list-paddingleft-1" style="list-style-type: decimal;box-sizing: border-box;"&gt;&lt;li style="box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;阿里云官网：https://www.aliyun.com/&lt;/p&gt;&lt;/li&gt;&lt;li style="box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;Derek Sivers网站：https://sive.rs/&lt;/p&gt;&lt;/li&gt;&lt;li style="box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;盖茨笔记网站：https://www.gatesnotes.com/&lt;/p&gt;&lt;/li&gt;&lt;li style="box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;xshell下载：&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;https://www.xshell.com/zh/xshell-download/&lt;/p&gt;&lt;/li&gt;&lt;li style="box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;WordPress登录网址：域名/wp-admin/&lt;/p&gt;&lt;/li&gt;&lt;li style="box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;梧桐小课堂：&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;https://www.bilibili.com/video/BV1az4y1d7Ai?spm_id_from=333.999.0.0&lt;/p&gt;&lt;/li&gt;&lt;li style="box-sizing: border-box;"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;我的个人网站：www.cupaobaidou.com&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="white-space: normal;margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="align-items: center;display: flex;margin: 10px 0%;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;vertical-align: bottom;width: auto;flex: 1 0 1px;letter-spacing: 0px;box-sizing: border-box;"&gt;&lt;section style="margin: 0.5em 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="border-top: 1px dashed rgb(62, 62, 62);box-sizing: border-box;" data-style="border-top: 1px dashed rgb(62, 62, 62); box-sizing: border-box;" class="js_darkmode__51"&gt;&lt;section&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: bottom;width: auto;flex: 0 1 auto;box-shadow: rgb(0, 0, 0) 0px 0px 0px;line-height: 0;padding: 0px 5px;box-sizing: border-box;"&gt;&lt;section style="transform: rotateZ(45deg);-webkit-transform: rotateZ(45deg);-moz-transform: rotateZ(45deg);-o-transform: rotateZ(45deg);box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="text-align: center;box-sizing: border-box;"&gt;&lt;section style="display: inline-block;width: 10px;height: 10px;vertical-align: top;overflow: hidden;background-color: rgb(255, 222, 23);border-width: 1px;border-style: solid;border-color: rgb(62, 62, 62);box-shadow: rgb(255, 255, 255) 1px 1px 0px inset;line-height: 0;letter-spacing: 0px;box-sizing: border-box;" data-style="display: inline-block; width: 10px; height: 10px; vertical-align: top; overflow: hidden; background-color: rgb(255, 222, 23); border-width: 1px; border-style: solid; border-color: rgb(62, 62, 62); box-shadow: rgb(255, 255, 255) 1px 1px 0px inset; line-height: 0; letter-spacing: 0px; box-sizing: border-box;" class="js_darkmode__52"&gt;&lt;section style="box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="display: inline-block;vertical-align: bottom;width: auto;flex: 1 0 1px;box-sizing: border-box;"&gt;&lt;section style="margin: 0.5em 0px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;section style="border-top: 1px dashed rgb(62, 62, 62);box-sizing: border-box;" data-style="border-top: 1px dashed rgb(62, 62, 62); box-sizing: border-box;" class="js_darkmode__53"&gt;&lt;section&gt;&lt;svg viewBox="0 0 1 1" style="float:left;line-height:0;width:0;vertical-align:top;"&gt;&lt;/svg&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;&lt;section style="font-size: 14px;box-sizing: border-box;" powered-by="xiumi.us"&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;以上就是我的个人建站全部记录了，搭建过程中参考了很多博主的技术博客、建站视频，还得到了计算机专业的朋友郭瑞的帮助，尝试多次才上线网站成功。建站的过程对我这样一个技术小白来说，是很艰难，但网站上线成功之后获得的成就感是无可比拟的。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;这篇指南有些地方不太详细，但大体梳理了一遍技术小白自己动手建站从头到尾的思路，也可能存在错误之处，大家还是要多方搜索来辩证参考。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;终于写出来了，希望能有借鉴的意义。&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;br style="box-sizing: border-box;"&gt;&lt;/p&gt;&lt;p style="margin: 0px;padding: 0px;box-sizing: border-box;"&gt;&lt;strong&gt;&lt;span style="font-size: 12px;"&gt;如果你喜欢我的推文，请关注公众号醋泡白豆~&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;section class="mp_profile_iframe_wrp"&gt;&lt;mp-common-profile class="mp_common_widget js_wx_tap_highlight" data-index="0" data-id="MzI2OTIxMTg1Nw==" data-headimg="http://mmbiz.qpic.cn/mmbiz_png/4ADhmAJPyqCfQIeWCibmq12nNoQPoovmGAkQXibbHrPEWd6dbEMeXDsHmR2FvB44AqgIod9yvnvRyOiaOAicCc7C1g/300?wx_fmt=png&amp;amp;wxfrom=19" data-nickname="醋泡白豆" data-alias="cpbd1121" data-signature="勤读书，更周报。用文字拽住不可控的世界。我是一个学习了四年日语但做了五年英语导游的大饼爱好者。" data-origin_num="219" data-is_biz_ban="0" data-isban="0" data-biz_account_status="0"&gt;&lt;/mp-common-profile&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;</description></item></channel></rss>