self的参数是什么?

2024-04-27 05:19:29 发布

您现在位置:Python中文网/ 问答频道 /正文

youtube-dl在它们的CONTRIBUTING documentation中有

description = self._search_regex(
    r'<span[^>]+id="title"[^>]*>([^<]+)<',
    webpage, 'description', fatal=False)

_search_regex的参数是什么?文档没有显示'description'是什么?这是一个HTML属性吗?在


Tags: selfidfalsesearch参数titleyoutubedocumentation
1条回答
网友
1楼 · 发布于 2024-04-27 05:19:29

作为一个内部函数(它以下划线开头),它没有很好的文档,但是您可以找到its definition in the source code。在

_search_regex是一个实用函数,基本上调用^{},但在正则表达式不匹配的情况下统一处理。这一点很重要,因为许多提取器都使用正则表达式,而且在所有地方复制错误处理会很烦人(更不用说大量的代码重复)。在

其参数如下:

  • pattern:正在搜索的正则表达式。例如r'(?:foo|href)\s*=\s*(http://[^"]*)"。通常,第一个捕获的组(即括号中的内容,但不能以?:开头。有关正则表达式的详细信息,请参阅Python standard library documentation。在
  • string:要搜索的字符串(即haystack),从连接到的服务下载。在
  • name:您选择的名称;如果发生故障,它将显示给用户。你的提取器应该是独一无二的。例如'manifest URL'或{}。这样,如果用户在没有堆栈跟踪的情况下发布错误消息,您就可以立即知道问题所在。在
  • default=NO_DEFAULT:默认值。有时,如果regexp不匹配,会有一个默认值。如果是的话,把它递过来。在
  • fatal=True:如果没有给定默认值,则确定正则表达式匹配失败时的行为。True:中止提取并抛出详细错误;例如,如果提取视频URL失败。False:如果搜索可选字段(例如description)失败,则只忽略警告并继续。在
  • flags=0-显式正则表达式标志。很少使用;有关详细信息,请参阅Python standard library documentation。在
  • group=None-匹配除第一个组之外的其他组。很少使用,只有在正则表达式包含命名组时才有意义。有关详细信息,请参阅Python standard library documentation(关键字命名组)。在

相关问题 更多 >