采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0x8b in position 1: invalid start byte,怎么处理?
这个大概就是因为下载下来的代码无法用正则匹配解析。所以,应该看看下载下来的是什么内容
谢谢,因为老师上课提到的网站已经关了,我就用老师的逻辑拉了虎牙的,import re from urllib import request class Spider(): url = "https://www.huya.com/g/lol" root_pattern = '<span class="txt">([\s\S]*?)</span>' name_pattern = '<i class="nick">([\s\S]*?)</i>' number_pattern = '<i class="js-num">([\s\S]*?)</i>' def __fetch_content(self): r = request.urlopen(Spider.url) htmls = r.read() htmls = str(htmls,encoding="UTF-8") return htmls def __analysis(self,htmls): root_html = re.findall(Spider.root_pattern,htmls) print(root_html[0]) def go(self): htmls = self.__fetch_content() self.__analysis(htmls) spider = Spider() spider.go()
找到原因了,多了一个 > ,谢谢
登录后可查看更多问答,登录/注册
语法精讲/配套练习+思考题/原生爬虫实战
5.5k 7
2.5k 3
2.1k 4
4.1k 22
2.3k 19