我使用linkchecker抓取英国政府网站,映射超链接之间的关系,并输出到GML文件。在
我不想包含图像的URL,例如任何包含jpeg或png文件格式引用的URL(例如www.gov.uk/somefile.jpeg"). 在
我已经尝试了几个小时来使用--ignore-url
命令行参数和各种正则表达式来实现这一点。这是我放弃之前的最后一次尝试:
linkchecker --ignore-url='(png|jpg|jpeg|gif|tiff|bmp|svg|js)$' -r1 --verbose --no-warnings -ogml/utf_8 --file-output=gml/utf_8/www.gov.uk_RECURSION_1_LEVEL_NO_IMAGES.gml https://www.gov.uk
有谁能告诉我这是否可行,如果有,请提出解决办法?在
琐事:
根据docs:
因此,我们可以很容易地用python检查regex,看看它为什么不起作用(live test):
输出:
^{pr2}$我想,这里的问题是因为部分匹配,所以让我们试试完全匹配(pattern,live test):
…输出为:
解决方案:
如您所见,在您的尝试中,您的url与给定的正则表达式不匹配,因此不会被忽略。唯一与regex匹配的是列出的扩展名(png,jpg,…)。在
要解决此问题,请使用
.*
匹配扩展名之前的所有字符。 另一个问题是加引号。在根据doc的例子:
所以你最后的选择是:
希望有帮助!在
相关问题 更多 >
编程相关推荐