python - 如何从远程服务器检索文件目录?

标签 python file directory screen-scraping

如果我在允许目录浏览的远程 Web 服务器上有一个目录,我将如何从我的其他 Web 服务器获取所有列出的文件?我知道我可以使用 urllib2.urlopen 来获取单个文件,但我如何获得该远程目录中所有文件的列表?

最佳答案

如果网络服务器启用了目录浏览,它将返回一个包含所有文件链接的 HTML 文档。您可以解析 HTML 文档并提取所有链接。这将为您提供文件列表。

您可以使用 HTMLParser类来提取您感兴趣的元素。像这样的东西会起作用:

from HTMLParser import HTMLParser
import urllib

class AnchorParser(HTMLParser):
    def handle_starttag(self, tag, attrs):
            if tag =='a':
                    for key, value in attrs.iteritems()):
                            if key == 'href':
                                    print value

parser = AnchorParser()
data = urllib.urlopen('http://somewhere').read()
parser.feed(data)

关于python - 如何从远程服务器检索文件目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1699634/

相关文章:

python - 在 Python 中迭代列以获取单独的图

python - Scrapy爬虫不处理XHR请求

python - 如何在 for 语句中获取数字列表

android:如何隐藏文件夹不出现在图库中

c# - 迭代文件夹和子文件夹的最佳方式

列出文件夹中的子文件夹 - Matlab(仅子文件夹,不是文件)

python 何时编码、何时解码?

python - 值错误: I/O operation on closed file (File shouldn't be closed)

c++ - 我想存储从文件中获取的数字及其计数

java - 使用测试文件找不到符号