Codecademy已开始课程时长查询及源码格式解析求助
解答你的Codecademy课程时长相关问题
1. 页面源码中的内容是否为JSON?
大概率是!Codecademy这类平台通常会把课程的核心数据(包括预估时长、进度、课程结构等)以压缩后的JSON格式嵌入到页面的<script>标签里(常见的变量名比如window.__INITIAL_STATE__或者类似的全局状态变量)。哪怕你执行了Reset Progress,前端界面显示进度为0%,页面源码里的原始课程元数据(包括预估时长)往往还是存在的,只是前端逻辑选择不渲染出来而已。
2. 能否转为可读格式?
当然可以!你可以按以下步骤操作:
- 打开课程页面的源码(快捷键
Ctrl+U或Cmd+U),搜索关键词比如estimatedDuration、courseDuration,定位到包含课程数据的JSON块; - 如果这段JSON是被包裹在变量赋值里(比如
var appState = {...};),先把大括号{}之间的内容单独复制出来; - 用浏览器开发者工具的Console面板:粘贴复制的内容,前面加
JSON.parse(,后面加),回车后就能看到格式化好的结构;或者用本地的代码编辑器(比如VS Code),把内容粘贴进去,用格式化快捷键(Ctrl+Shift+I/Cmd+Shift+I)整理成带缩进的可读格式; - 格式化后,你就能轻松找到对应课程的预估时长字段了。
3. 关于仅部分课程标注时长的问题
这个子站的定位和数据同步策略和主站不一样,它可能只筛选了特定类型的课程(比如短时长、适合单日完成的课程)来展示元数据,所以并非所有你在主站学习过的课程都会在这里显示预估时长。如果需要完整的时长信息,还是得从主站的页面源码里提取更靠谱。
内容的提问来源于stack exchange,提问作者s15o
相关产品推荐
相关产品推荐

