Python 提取 HTML 内容中的可见文本及其 CSS 选择器
申请找到所有用户可见的文本和对应的 CSS 选择器的方法。你可以使用 Python 的 BeautifulSoup 库来解析 HTML 内容。并使用 CSS 选择器来找到对应的元素。 首先。你需要安装 BeautifulSoup 库。可以使用以下命令来安装它。 ````第一步安装库```` pip install beautifulsoup4 ```` 然后。你可以使用以下代码来实现。 ```` python 代码 ```` from bs4 import BeautifulSoup def find_visible_text(html): soup = BeautifulSoup(html, 'html.parser') visible_text = [] def is_visible(element): if element.parent.name in ['style', 'script', 'head', 'title', 'meta', '[document]']: return False elif isinstance(element, Comment): return False return True for element in soup.find_all(text=is_visible): if element.strip(): visible_text.append(element.strip()) return visible_text def find_css_selectors(html, visible_text): soup = BeautifulSoup(html, 'html.parser') css_selectors = [] for text in visible_text: elements = soup.find_all(text=text) for element in elements: css_selectors.append(get_css_selector(element)) return css_selectors def get_css_selector(element): selectors = [] while element.parent: selector = element.name if element.get('id'): selector += '#{}'.format(element.get('id')) selectors.insert(0, selector) break elif element.get('class'): selector += '.{}'.format('.'.join(element.get('class'))) selectors.insert(0, selector) element = element.parent return ' > '.join(selectors) # 示例使用法 html = '''
Hello World
This is a paragraph.
This is another paragraph.
find_visible_text 和 find_css_selectors。 find_visible_text 函数用于找到所有用户可见的文本。而 find_css_selectors 函数用于根据找到的文本找到对应的 CSS 选择器。最后。我们使用示例 HTML 进行测试。并打印出每个文本和对应的 CSS 选择器。 注意。这个示例只是一个简单的示例。可能不能处理复杂的 HTML 结构和格式。如果你的 HTML 内容很复杂。你可能需要进行更多的处理和调整。
原文地址: http://www.cveoy.top/t/topic/qaph 著作权归作者所有。请勿转载和采集!