{
"event": "PreToolUse",
"tool_name": "Read",
"tool_input": {
"file_path": "\/var\/www\/dev.campus.systemische-tools.de\/crawler\/src\/infrastructure\/parsers\/html_parser_bs4.py",
"offset": 128,
"limit": 40
}
}
{
"tool_response": {
"type": "text",
"file": {
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/crawler\/src\/infrastructure\/parsers\/html_parser_bs4.py",
"content": " return tuple(result)\n\n\ndef _parse_links(\n soup: BeautifulSoup,\n *,\n base_url: str,\n) -> tuple[tuple[str, ...], tuple[str, ...]]:\n internal: list[str] = []\n external: list[str] = []\n base_host = normalize(base_url).host\n for a in soup.find_all(\"a\", href=True):\n if not isinstance(a, Tag):\n continue\n href = a.get(\"href\")\n if not isinstance(href, str):\n continue\n absolute = urljoin(base_url, href)\n if absolute.startswith((\"mailto:\", \"tel:\", \"javascript:\")):\n continue\n host = normalize(absolute).host\n if host == base_host or host.endswith(\".\" + base_host):\n internal.append(absolute)\n else:\n external.append(absolute)\n return tuple(internal), tuple(external)\n\n\ndef _parse_images(\n soup: BeautifulSoup,\n *,\n base_url: str,\n) -> tuple[_ImageSpec, ...]:\n result: list[_ImageSpec] = []\n for img in soup.find_all(\"img\"):\n if not isinstance(img, Tag):\n continue\n src = img.get(\"src\")\n if not isinstance(src, str):\n continue",
"numLines": 40,
"startLine": 128,
"totalLines": 191
}
}
}