Skip to content

v0.3

Choose a tag to compare

@huaimeng666 huaimeng666 released this 23 Jul 04:48
· 6 commits to main since this release

核心功能优化 (v0.3)

  • 问题:
    1. 基本路径解析不完整: 原版本仅通过相对路径和当前URL进行拼接,未考虑HTML中 <base> 标签或JS中 baseUrl 变量对路径的影响,导致URL解析不准。
    2. 缺少Referer头: 发送请求时未携带 Referer,可能导致无法访问有防盗链机制的网站。
    3. URL解码错误: url.QueryUnescape 函数在遇到无效编码时会返回空字符串,且未处理该错误,导致链接丢失。
  • 解决方案:
    1. 增强基本URL检测: 在 crawler/crawler.go 中,新增了对HTML中 <base href="..."> 标签以及JS中 base:"...", baseUrl:"..." 等变量的提取逻辑,使相对路径的解析更加精准。
    2. 自动添加Referer: 程序现在会自动将来源页面的URL作为 Referer 添加到HTTP请求头中,提升了抓取成功率。
    3. 修复URL解码问题: 在 crawler/filter.go 中,增加了对 url.QueryUnescape 函数错误的检查。如果解码失败,将回退使用原始URL,确保链接不会丢失。