一日一技:不走常规路线,列表页1秒搞定

一日一技:不走常规路线,列表页1秒搞定

💡 原文中文,约1000字,阅读约需3分钟。
📝

内容提要

最近遇到一个需求,需要抓取Docusaurus和Uniswap Docs上的全部文档。通过研究网站,发现可以在域名后加上 /sitemap.xml ,然后搜索关键词 /docs/ 或 /concepts 就能找到所有文档URL。使用Charles抓取Ajax请求解析起来麻烦,可以采用这种简单的方法获取URL。

🎯

关键要点

  • 最近需要抓取Docusaurus和Uniswap Docs上的全部文档。
  • 抓取文档的正文可以使用GNE高级版,只需有URL即可。
  • Docusaurus的页面和目录是JavaScript实时渲染的,XPath提取的链接有限。
  • 使用Requests获取源代码无法获取每条目录的URL,Selenium执行XPath也不完整。
  • 可以使用Charles抓取Ajax请求,但Docusaurus的URL在一个js文件中。
  • 对于Docusaurus,可以在域名后加上/sitemap.xml并搜索/docs/来获取所有文档URL。
  • Uniswap Docs的URL分散在多个JS文件中,解析较为复杂。
  • 同样可以在Uniswap Docs的域名后加上/sitemap.xml并搜索/concepts来获取文档URL。
  • 在进行爬虫任务时,先研究网站可以减少不必要的工作量。
➡️

继续阅读