chore: 更新技能引用名称并新增 yt-studio-auth-prep 登录脚本
This commit is contained in:
68
skills/yt-download-place/references/troubleshooting.md
Normal file
68
skills/yt-download-place/references/troubleshooting.md
Normal file
@@ -0,0 +1,68 @@
|
||||
# 工作区排查
|
||||
|
||||
## uv 不识别(按序排查)
|
||||
|
||||
1. **刚装完、当前会话不认识**:会话内刷新 PATH——
|
||||
- PowerShell:`$env:Path = [Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [Environment]::GetEnvironmentVariable("Path","User")`
|
||||
- Git Bash / zsh:`export PATH="$PATH:$HOME/.local/bin"`
|
||||
- cmd:重开终端。
|
||||
2. **试试模块入口**:`python -m uv --version`。可用则后续所有 `uv <子命令>` 都换成 `python -m uv <子命令>`。
|
||||
3. **用 pip 兜底安装**:`pip install uv` 后回到第 2 条,立即生效(winget/官方脚本方式要等新终端)。
|
||||
4. **彻底没有 Python/uv**:先装 Python 3.10+(或让 uv 官方脚本一并装好托管 Python),再走第 3 条。
|
||||
|
||||
## 网络与镜像(国内环境)
|
||||
|
||||
`uv sync` / `uv run` 拉包慢或超时时,临时切换清华镜像:
|
||||
|
||||
```powershell
|
||||
$env:UV_DEFAULT_INDEX = "https://pypi.tuna.tsinghua.edu.cn/simple"
|
||||
uv sync
|
||||
```
|
||||
|
||||
要持久化则写入工作区 `pyproject.toml`:
|
||||
|
||||
```toml
|
||||
[[tool.uv.index]]
|
||||
url = "https://pypi.tuna.tsinghua.edu.cn/simple"
|
||||
default = true
|
||||
```
|
||||
|
||||
## sync / add 相关
|
||||
|
||||
- **`No solution found` / 依赖解析冲突**:`dependencies` 里的版本约束互相矛盾(含 `uv add` 追加的包与既有约束冲突)。放宽或修正 `pyproject.toml` 后重试。
|
||||
- **缺必需包**:`pyproject.toml` 里没有 pandas/openpyxl/playwright/requests(常见于复用已有项目)。工作区根执行 `uv add pandas openpyxl playwright requests` 补齐(幂等)。
|
||||
- **lock 与 pyproject 不一致**:`uv.lock` 过期,`uv sync` / `uv add` 会自动更新;若报 lock 损坏,删除 `uv.lock` 后重新 `uv sync`。
|
||||
- **`requires-python` 不满足**:本机 Python 全部低于 3.10。让 uv 自动下载即可:`uv sync -p 3.12`(或省略,uv 自选)。
|
||||
|
||||
## .venv 损坏 / 重建
|
||||
|
||||
症状:`uv run` 报奇怪的导入错误、DLL 加载失败,或 `.venv` 被移动过。工作区根执行:
|
||||
|
||||
```powershell
|
||||
Remove-Item -Recurse -Force .venv
|
||||
uv sync
|
||||
```
|
||||
|
||||
## playwright 相关
|
||||
|
||||
- **`ModuleNotFoundError: playwright`**(或其他必需包缺失):环境未同步或缺包。工作区根执行 `uv add pandas openpyxl playwright requests` 补齐,或直接用 `uv run python <脚本>`。
|
||||
- **复用系统 Chrome/Edge 无需 `playwright install`**:只有用工作区内置 Chromium 时才需要 `uv run playwright install chromium`。
|
||||
- **`playwright install` 下载浏览器慢**:`$env:PLAYWRIGHT_DOWNLOAD_HOST = "https://npmmirror.com/mirrors/playwright"` 后重试。
|
||||
|
||||
## 无工作区目录临时跑脚本(PEP 723 兜底)
|
||||
|
||||
技能脚本头部带 PEP 723 内联依赖声明(`# /// script ... ///`),在无 `pyproject.toml` 的目录直接 `uv run <脚本>` 也可运行,uv 自动建缓存环境:
|
||||
|
||||
- 报「无法解析依赖/找不到脚本」时:确认路径存在且为正斜杠写法;确认脚本头部声明未被删改。
|
||||
- 需要重建缓存环境:删除 `%LOCALAPPDATA%\uv\cache\environments-v2` 下对应目录(或整体 `uv cache clean`)后重试。
|
||||
- 批量/长期使用仍建议按 SKILL.md 建正式工作区,避免缓存环境碎片化。
|
||||
|
||||
## 无 uv 的最终兜底
|
||||
|
||||
uv 完全装不上时,用标准库 venv 手动搭(仅应急,失去 lock 可复现性):
|
||||
|
||||
```powershell
|
||||
python -m venv .venv
|
||||
.venv\Scripts\python.exe -m pip install pandas openpyxl playwright requests
|
||||
# 此后所有命令用 .venv\Scripts\python.exe 替代 uv run python
|
||||
```
|
||||
Reference in New Issue
Block a user