Python Requests使用Session时报错'Session' object has no attribute 'requests'求助
报错原因
该报错是调用Session对象的方法时多写了.requests后缀导致的,requests.Session()实例化得到的session对象本身就直接携带get()、post()等请求方法,不需要额外加一层.requests访问。
修复方案
把代码中报错对应的行:
response = BeautifulSoup(session.requests.get(url).text, "html.parser")
修改为:
response = BeautifulSoup(session.get(url).text, "html.parser")
即可解决该属性不存在的报错。
可选优化建议
- 可以给session配置全局UA头,降低被目标站点反爬拦截的概率:
session = requests.Session() # 新增以下配置 session.headers.update({ "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" }) - 发起请求时添加超时参数,避免程序无限等待:
session.get(url, timeout=10)
内容的提问来源于stack exchange,提问作者Adboo
相关产品推荐
相关产品推荐

