You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复requests.exceptions.InvalidSchema错误并提取诊所URL?

问题修复方案

错误原因

requests.exceptions.InvalidSchema: 未找到连接适配器 是因为clinics.absolute_links里混了非HTTP/HTTPS协议的链接(比如电话、邮件类链接),用s.get(item)请求这类链接时,requests无法识别对应的连接方式,所以报错。

修复后的代码

from requests_html import HTMLSession

url = "https://www.dent.cz/zubni-lekari"

s = HTMLSession()
r = s.get(url)

r.html.render(sleep=1)

# 定位诊所列表的父容器,改用基于class的定位更稳定
clinics_container = r.html.xpath('//div[contains(@class, "list-items")]', first=True)

# 筛选并打印有效的诊所详情页URL
for link in clinics_container.absolute_links:
    # 只保留以诊所详情页前缀开头的链接,排除无效链接
    if link.startswith("https://www.dent.cz/zubni-lekari/"):
        print(link)

关键修复点

  • 替换了原代码中依赖精确DOM层级的XPath,改用基于class的定位方式,避免页面结构变动导致定位失败
  • 增加了链接筛选逻辑,只保留https://www.dent.cz/zubni-lekari/开头的诊所详情页URL,排除电话、邮件等非网页链接,解决了连接适配器错误
  • 移除了不必要的详情页请求逻辑,直接输出目标URL,符合需求

内容的提问来源于stack exchange,提问作者Filip Chobodicky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 08:05:29