我们可以使用os.walk()在本地光盘上轻松找到子目录,但是如果这些目录不是本地的并且在Web服务器上呢?
例如,我有一个名为http://www.geoglobaldomination.org的网站。主页上没有引用几个子目录。例如。http://www.geoglobaldomination.org/kml和http://www.geoglobaldomination.org/kml/temp。
如何在不使用HTML标记作为参考点的情况下使用简单的python爬虫找到这些子目录?
答案 0 :(得分:2)
嗯,从最普遍的意义上讲,你不能。
当您使用'/'或“index.html”结束uri时,有些网站可能会为您提供子目录索引,但他们不必这样做。当您访问他们的网站(使用浏览器或程序)时,网站作者基本上可以返回他们想要的任何内容。他们可以返回NOT FOUND(即使您请求的文档存在于您请求的确切位置)。
完全依赖于实现。
答案 1 :(得分:2)
您想要从远程服务器访问的任何内容都需要以某种方式公开。没有自动发现机制 - 这就是为什么搜索引擎需要网站的站点地图。在这种情况下,最佳做法是制作站点地图并让您的抓取工具从那里开始。