有沒有方法可以查找某個文件或目錄是否存在於使用http目錄瀏覽的Web服務器上?我有一個網站,其中包含一些文件和目錄。我想遍歷目錄並找到可以位於子目錄中任何位置的給定文件。通常情況下,我們可以在文件系統上使用os.path.isfile("file_name")
,但這不適用於HTTP上的目錄瀏覽。我們怎麼做到這一點?在具有目錄瀏覽的網站上遞歸搜索文件
0
A
回答
3
在網絡上做這件事並不像做文件系統那樣直截了當。首先,文件夾列表會有差異,具體取決於它是什麼網絡服務器。所以你必須知道列表是如何格式化的。例如,我注意到w /大部分linux/apache服務器的模式是文件夾以斜槓'/'結尾。父文件夾以斜線開頭,文件夾不...等等...
這只是一個示例(可行),應該讓您開始朝正確的方向發展。要運行示例,您必須安裝BeautifulSoup
import urllib.request
from bs4 import BeautifulSoup
def RecurseLinks(base):
f = urllib.request.urlopen(base)
soup = BeautifulSoup(f.read())
for anchor in soup.find_all('a'):
href = anchor.get('href')
if (href.startswith('/')):
print ('skip, most likely the parent folder -> ' + href)
elif (href.endswith('/')):
print ('crawl -> [' + base + href + ']')
RecurseLinks(base + href) # make recursive call w/ the new base folder
else:
print ('some file, check if xyz.txt -> ' + href) # save it to a list or return
# call the initial root web folder
RecurseLinks('http://somesite-xyx.com.com/directory-browsing/')
+0
btw,這是Python 3代碼:) – jross 2013-03-06 07:59:49
相關問題
- 1. Lotusscript搜索窗口目錄的子目錄和文件。遞歸?
- 2. TCL:遞歸搜索子目錄以獲取所有.tcl文件
- 3. Python遞歸搜索目錄以查找文件的存在
- 4. MS-DOS批處理:在目錄中搜索非遞歸文件
- 5. 遞歸搜索Linux中父目錄中的文件
- 6. 遞歸文件搜索.net
- 7. 遞歸搜索文件
- 8. 遞歸文件搜索(PHP)
- 9. 遞歸搜索文件
- 10. 用os.walk遞歸搜索多個目錄()
- 11. 遞歸目錄和文件流和搜索字符串
- 12. 遞歸地搜索文件,而不是當前目錄
- 13. 爲SQL文件遞歸搜索目錄中(NSIS)
- 14. 瀏覽器搜索工具如何在網頁上工作?
- 15. 循環瀏覽目錄並搜索.JPG文件
- 16. 遞歸搜索C目錄下的根目錄#
- 17. Emacs遞歸項目搜索
- 18. 下面的遞歸目錄搜索和文件打開有什麼問題?
- 19. 遞歸找到具有相同文件名集的目錄
- 20. 模板文件夾子目錄中的遞歸樹枝模板文件搜索
- 21. C++ Windows API遞歸搜索沒有返回預期的目錄
- 22. 遞歸獲取具有多個子目錄的目錄中的文件
- 23. PowerShell的:遞歸搜索文件類型的驅動器或目錄在創作
- 24. 如何在網站搜索的任何網站上搜索
- 25. 遞歸的比較具體的文件在不同的目錄
- 26. 搜索遞歸文件名的外殼
- 27. 如何檢索具有Powershell的遞歸目錄名稱?
- 28. 搜索文件的目錄
- 29. 搜索所有目錄中的文件
- 30. ASP.NET網站有哪些搜索工具?
我剛纔注意到你必須張貼在同樣的問題相同的問題 - 你可能想要刪除這些。 – jross 2013-03-06 08:22:10