识别URL的文件扩展名

凯里尼亚

我想提取文件扩展名(如果它存在于网址中)(试图确定哪些链接指向我不希望的扩展名列表,例如.jpg.exe等等)。

因此,我想从以下URL中提取www.example.com/image.jpg扩展名jpg,并处理没有扩展名的情况,例如www.example.com/file(即不返回任何内容)。

我不知道如何实现它,但是我想到的一种方法是在最后一个点之后获取所有内容,如果有扩展名,则可以让我向上查找该扩展名,如果没有,例如www.example.com/file它会返回com/file(给定的不在我的排除文件扩展名列表中,可以)。

使用我不知道的软件包可能会有另一种更好的方式,它可以识别什么是/不是实际的扩展。(即应对URL实际上没有扩展名的情况)。

零比雷埃夫斯

urlparse模块(urllib.parse在Python 3中)提供了用于处理URL的工具。尽管它没有提供从URL提取文件扩展名的方法,但可以通过将其与结合使用来实现os.path.splitext

from urlparse import urlparse
from os.path import splitext

def get_ext(url):
    """Return the filename extension from url, or ''."""
    parsed = urlparse(url)
    root, ext = splitext(parsed.path)
    return ext  # or ext[1:] if you don't want the leading '.'

用法示例:

>>> get_ext("www.example.com/image.jpg")
'.jpg'
>>> get_ext("https://www.example.com/page.html?foo=1&bar=2#fragment")
'.html'
>>> get_ext("https://www.example.com/resource")
''

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据文件干名称识别文件扩展名

来自分类Dev

识别不带扩展名的文件的文件类型

来自分类Dev

`file`无法识别几种文件类型的文件扩展名

来自分类Dev

从 URL 中删除文件扩展名

来自分类Dev

使Eclipse将未知文件扩展名识别为xml

来自分类Dev

从URL删除文件扩展名和文件名

来自分类Dev

提取具有扩展名URL的文件名

来自分类Dev

SWI-Prolog和文件扩展名:为什么swipl无法识别带有扩展名的文件?

来自分类Dev

知道非扩展名时有效的方法来识别文件扩展名

来自分类Dev

htaccess重写不带.php扩展名的URL到文件

来自分类Dev

如何从nginx中的URL删除文件扩展名?

来自分类Dev

以url扩展名作为参数的文件名

来自分类Dev

.htaccesss从URL删除文件扩展名和变量

来自分类Dev

在没有文件扩展名的javascript中获取URL

来自分类Dev

从R中的URL路径提取文件扩展名

来自分类Dev

从 URL 中删除文件扩展名,例如 .php 或 .html

来自分类Dev

如何使用别名从 url 中删除文件扩展名

来自分类Dev

如何识别仆人所需的扩展名

来自分类Dev

文件扩展名Python

来自分类Dev

文件扩展名规则?

来自分类Dev

正确的文件扩展名

来自分类Dev

正确的文件扩展名

来自分类Dev

更改文件扩展名

来自分类Dev

伪造文件扩展名

来自分类Dev

获取文件扩展名

来自分类Dev

文件扩展名规则?

来自分类Dev

文件扩展名问题

来自分类Dev

Bash 文件扩展名

来自分类Dev

将不带扩展名的文件重定向到特定的URL,并忽略带扩展名的文件