
# 1. 运行环境
安装nodejs v18.7.1

# 2. 运行数据飞轮

```bash
sh run_crawler.sh
```

- 修改入口URL：修改crawl_grafana_v18.js中所有play.grafana.org的网址。
- 停止任务：目前程序不会自动停止，需要手工杀进程；程序维持一个任务队列，队列为空就不再继续爬。



# 3. 产出物
运行数据飞轮以后，会自动创建axtrees, pages, path, screenshots, storage等目录：
- storage：（运行状态数据）crawlee框架运行过程记录任务。
   - 其中`storage/key_value_stores/default/SDK_CRAWLER_STATISTICS_0.json`中记录
      - "requestsFinished": 4136, // 记录完成多少个请求（即遍历了多少个网页）
      - "requestsFailed": 14, // 记录失败数
   - `storage/request_queues/default`目录下记录爬到并且加入队列的的链接，其中里边的json.userData字段记录了从首页到当前页面的路径等轨迹元数据
- page/screenshots/axtree（快照数据）: 记录遍历的网页的html, 截图和axtree
- path（轨迹数据）: 记录每个网页父节点到子节点的边(child目录)，以及processedutlToPath记录到达某个网页地址的路径/最短路径。

# 4. 分析轨迹数据
停止数据飞轮以后，使用 `analysis_v18.js` 可以对轨迹数据进行进一步的处理，按照最短路径长度分组，保存在path目录下。

# 5. 可视化展示
- vscode安装Live Server插件。右键点击`index.html`，选择"Open with Live Server"。在浏览器中查看轨迹数据。
- 归档的产出物在`archive_artifact_v18.tar.gz`中，可以解压缩，然后测试可视化展示。


# 6. 其他
在`misc`目录下有对轨迹进行总结的测试，以及使用模型和总结后的任务，评估模型每一步正确率 temp_analysis。
