在我的testkernel程序中,我想通过各种协议遍历目录树。我认为我想要的是os.walk
,但它适用于ftp,也适用于典型的http目录列表(如http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.2-precise/)。这符合openanything.py
对于FTP行走,我发现了几个选项,包括ftptool和ftputil模块,它具有Ubuntu的优势。我已经使用Beautiful Soup实现了我自己非常简单的http目录列表的递归遍历。但在我将它们与os.walk
组合在一起之前,我想知道它是否已经完成。
我知道http walk的语义没有像文件系统和ftp一样明确定义,所以我想我必须猜测目录是由一个带有斜杠的URL表示的,它扩展了URL的URL目录。而且我必须小心避免无限次走。但即使是os.walk的一个子集(例如只有topdown),这种事情似乎也很有用。
这已经完成了吗?有什么建议吗?
答案 0 :(得分:-1)
好吧,我写了一段实际遍历网页目录并下载文件的代码: (虽然这段代码可能需要改进,如图像下载,pdf下载等), 但无论如何这里是源/模块: