发布网友
共1个回答
热心网友
你好,我做了点改变已经可以运行了
import requests
url='https://item.jd.com/2967926.html'
kv= {'user-agent': 'mozilla/5.0'}
r=requests.get(url,headers=kv)
r.raise_for_status()
r.encoding=r.apparent_encoding
print(r.text[0:50])
————————————————————————
建议在初级阶段,try-catch少用,因为你会找不到报错原因的。如果你把这代码放在外面,你就能看到这样的报错信息:
UnicodeEncodeError: 'ascii' codec can't encode character '\u2013' in position 4: ordinal not in range(128)
那么再看调用的结构,
in putheader(self, header, *values)
1192 1193 if hasattr(header, 'encode'):-> 1194 header = header.encode('ascii') 1195 1196 if not _is_legal_header_name(header):
好,那就是header传入的参数不能使用ASCII编码,于是,我就把这个参数转成ASCII编码,再写进去,就可以了。
觉得解决问题了,请采纳哦!