爬取速卖通时出现InvalidSchema错误:无连接适配器可用
解决InvalidSchema错误:No connection adapters were found
错误原因
你传给asession.get()的不是合法的URL字符串,而是列表类型的对象。从cats_list的结构能看到,每个元素的link字段是包裹着单个URL的列表(比如['https://www.aliexpress.com/...']),但get()方法只接受字符串格式的URL,这就触发了报错。
修复方案
直接提取列表里的第一个元素(也就是实际的URL字符串)传入get()方法:
# 取link列表的第一个元素作为URL r = await asession.get(cats_list[0]["link"][0]) await r.html.arender(sleep=8, scrolldown=3) products = r.html.find("manhattan--content--1KpBbUi")
额外建议
如果后续你的link字段可能包含多个URL,可以用循环遍历处理每个链接:
for cat in cats_list: # 遍历当前分类下的所有链接 for url in cat["link"]: r = await asession.get(url) await r.html.arender(sleep=8, scrolldown=3) products = r.html.find("manhattan--content--1KpBbUi") # 这里写后续处理products的逻辑
内容的提问来源于stack exchange,提问作者Khaled Hamdy
相关产品推荐
相关产品推荐

