如何用Xidel打印返回200状态码的请求URL?
使用Xidel打印返回200状态码的请求URL
完全可以实现,只需调整查询表达式,借助Xidel的内置功能筛选状态码为200的URL,以下是具体方案:
基础用法(提取页面所有**标签链接)
执行以下命令即可只输出返回200状态码的链接:
xidel -s --error-handling=4xx=skip,5xx=skip "你的目标网页URL" -e "//a/@href[doc(., {'': ''}) => status-code() = 200]"
关键部分说明:
//a/@href:定位并提取页面中所有<a>标签的链接地址doc(., {'': ''}):对提取到的每个URL发起请求,空字典用于传递默认请求配置=> status-code():获取该请求返回的HTTP状态码= 200:筛选出状态码严格等于200的URL
扩展用法(提取所有资源URL)
如果需要追踪页面内所有类型的资源URL(如图片、脚本、样式等),可以修改查询范围,涵盖*src、data-src*等属性:
xidel -s --error-handling=4xx=skip,5xx=skip "你的目标网页URL" -e "//@src | //@href | //@data-src"[doc(., {'': ''}) => status-code() = 200]
内容的提问来源于stack exchange,提问作者Sanchu Varkey
相关产品推荐
相关产品推荐

