浏览器自动化文件下载框架
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_656c2e70/browser-file-downloader 到我的 AI 助手。
技能介绍
解决什么问题
许多金融机构或政府网站不会提供目标文件的直接下载链接:内容可能依赖登录态、Cookie、Session,或只能通过「打印到 PDF」生成;部分任务还要翻页、搜索和过滤后批量处理。这类场景用 requests 往往拿不到真实数据。
技能如何工作
该技能把特定网站的文件下载逻辑抽象为可复用的浏览器自动化模式:先判断是否需要保持会话、是否有直接下载链接,再选择最稳定的文件获取路径。核心策略按优先级分为:直接下载链接、Print 页面加 page.pdf()、详情页 page.pdf() 兜底。实现上会先诊断页面 DOM,再按网站类型适配 URL、等待策略和打开方式。对 ASP.NET WebForms 网站,资料强调不要用 page.goto() 直接跳转详情页,避免丢失 __VIEWSTATE;更稳的方式是用 window.open(url, '_blank') 在新标签页打开,并让同一上下文共享 Cookie 与 Session。等待策略优先使用 domcontentloaded、expect_download,避免 networkidle 被广告或分析脚本拖住。下载后还要验证 PDF 内容,防止把页面顶部的「操作指南」误当目标文件。
适用边界与注意点
如果文件有直接 .pdf / .xlsx 链接且无需登录,直接用 requests 即可。若目标网站使用复杂前端渲染、分页或跨实体列表,仅匹配列表页文本容易出现假阳性,必须打开详情页验证。Print 页面通常比原始详情页更干净,但也要排除「列印」「Print」等功能按钮造成的遮挡误报。
使用场景
- 从港交所披露易按股东名称搜索,下载其某只股票的全部历史披露 PDF。
- 在登录态的 WebForms 系统中翻页搜索,批量下载过滤后的业务报表文件。
- 处理无直接下载链接、只能从 Print 页面生成 PDF 的政府机构网页。
- 批量下载后校验 PDF 文本,排除操作指南和页面导航遮挡造成的误判。
适合人员
- 需要定期下载港交所披露易披露 PDF 并核验内容的投研分析
- 维护内网报表导出脚本、需要处理登录态和分页的数据工程师
- 整理政府表单 PDF 并校验内容完整性的合规专员
- 需要为新网站编写可复用下载脚本的自动化工程师