爬取斗鱼网站 lol 分区时,获取的网页数据是经过压缩的,尝试了几种解压方法后,得到时大量数字的无用数据。

2019-07-25 23:49:29 +08:00
 SimWit

1.爬取网页: https://www.douyu.com/g_LOL

2.采用方法:只是初步接触爬虫,没有用额外的库。基本实现思路 :

headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'}
url = 'https://www.douyu.com/g_LOL'

req = request.Request(url, headers=headers)
r = request.urlopen(req)
buff = BytesIO(r.read())
f = gzip.GzipFile(fileobj=buff)
htmls = f.read().decode('utf-8')

3.结果 爬取的网页中间出现了大量的数字乱码,例如:

47 14.4 14.4s-6.447 14.4-14.4 14.4z"/><path d="M20.331 18.069c0.625 0.625 0.625 1.638 0 2.263s-1.638 0.625-2.

并且,在调试到

req = request.Request(url, headers=headers)

时,弹出<string>文档,显示:</string>

 无法加载源“<string>”: Source unavailable。

4.我认为可能是对爬来的数据解压方式不对,多谢帮忙!

3761 次点击
所在节点    Python
6 条回复
baxtergu
2019-07-26 00:06:39 +08:00
这个是 svg,多用于图标
LengthMin
2019-07-26 00:09:20 +08:00
简单的看了看。
1. 这些 path 都是 svg
2. 可以试试用 beautifulsoup
yuzo555
2019-07-26 03:50:53 +08:00
数字乱码 XD
colorfulberry
2019-07-26 08:39:04 +08:00
react 写的,有没有加后端渲染,拿不了东西。
learnshare
2019-07-26 09:07:30 +08:00
<path d=""> 这是 SVG,d 是绘图指令
kygowl77
2019-07-26 14:12:48 +08:00
是 svg 网页矢量图 可以自己写个 html 把数据放进去 自己用浏览器打开看看

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/586267

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX