我目前正在尝试解析以下网页上的不同配置:
https://nvd.nist.gov/vuln/detail/CVE-2020-3661
具体来说,我正在寻找 ID 匹配的"config-div-\d+"的"div"标签中的数据
我尝试运行以下内容:
parsed = BeautifulSoup(requests.get('https://nvd.nist.gov/vuln/detail/CVE-2020-3661').content, 'html5lib')
configs = parsed.findAll('div', {'id' : re.compile('config-div-d+')})
但是,配置将始终产生 None。我已经尝试了 BeautifulSoup 文档页面上列出的所有解析器,它们都产生了相同的结果。
所以我尝试只找到父节点(div id="vulnCpeTree"(,并通过手动从正文向下钻取来确保我有正确的父节点。
parent = parsed.find('div', {'id' : 'vulnCpeTree'})
parent.findChildren()
[]
所有解析器可以解析的深度是否有限制?有没有办法改变这个/解决这个问题?还是我错过了什么?
感谢您的帮助!
@Sushanth和@Scratch'N'Purr都为这个问题提供了很好的答案。 @Sushanth提供了您在尝试了解漏洞时应该使用的方法,@Scratch'N'Purr 解释了如果我真的想走网络抓取路线,为什么我在原始问题中遇到这些问题。
谢谢你们。