python – 如何检测网页上的导航(菜单)

所以我正在编写这个打开页面的程序,它应该做的事情之一是检测网页有多少导航(菜单),主导航多长时间(多少元素),导航元素中的平均文本等等…

无论如何,我有一些问题检测菜单.我在想网络导航有两种编码方式:

1. <ul><li><a>Home</a><li><a>Products</a></li>...</ul>
2. <div><a>Home</a><a>Product</a>...</div>

所以如果我发现这个结构我知道(或者我应该说“我认为”)它的导航.但这不是防弹的.我得到了很多错过的点击率.

那么any1如何更好地了解如何检测网页上的导航?

最佳答案 没有通用的解决方案.你需要实现一些启发式方法.我会尝试这样的:

>获取递归限制= 1的所有网站页面(如wget -r -l1 http://example.com/)
>对于每个内部页面,在该页面上保留一组内部链接
>得到所有集合的交集.

通过这种方式,您将获得一组固定的内部链接,在大多数情况下,这些链接将成为网站的“菜单”.

点赞