python - 如何生成大型网站的图形站点地图

标签 python web sitemap web-crawler

<分区>

我想为我的网站生成图形站点地图。据我所知,有两个阶段:

  1. 抓取网站并分析链接关系,提取树形结构
  2. 生成一个视觉上令人愉悦的树渲染图

有没有人有实现此目标的建议或经验,或者知道我可以基于现有工作(最好是 Python)?

我遇到了一些 nice CSS用于渲染树,但它仅适用于 3 个级别。

谢谢

最佳答案

创建站点地图的唯一自动方法是了解您站点的结构并编写基于该知识的程序。仅仅爬取链接通常是行不通的,因为链接可以位于任何页面之间,因此您可以获得图表(即节点之间的连接)。在一般情况下,无法将图转换为树。

所以你必须自己识别你的树的结构,然后爬取相关页面以获取页面的标题。

至于“但它只适用于3级”:三级绰绰有余。如果您尝试创建更多级别,您的站点地图将变得不可用(太大、太宽)。没有人愿意下载一个 1MB 的站点地图,然后滚动浏览 100'000 页的链接。如果您的网站增长到那么大,那么您必须实现某种搜索。

关于python - 如何生成大型网站的图形站点地图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1672532/

相关文章:

python - 创建多人二十一点游戏

javascript - 在 Typed.js 中的字符串前面获取退格键

python - AttributeError ("' list'对象没有属性 'keys'“,)在带有sqlachemy的 flask 中

python - lxml objectify 不会调用自定义元素类的构造函数

python - 使用多个拟合图像制作图像立方体

javascript - 如何在 React 中合并 &lt;script&gt; 来添加 Google map 实例

javascript - 修复当站点移动到子目录时 Assets 的 "/"(根)引用

javascript - Javascript 中的站点地图 lastmod 日期

Magento,拆分 sitemap.xml 和 cron 作业

sitemap - 在站点地图中,是否建议包含指向站点上每个页面的链接,或者只包含需要它的页面?