首页 >> 大全

python某鱼主播粉丝的爬取

2023-11-05 大全 25 作者:考证青年

某鱼主播粉丝的爬取

找到粉丝数据是如何传过来的

随机找一个主播的直播间打开,本人使用的是控制台,定位粉丝html的标签位置。但这里定位后会发现页面展示的数据和html中展示的数据是不对的。这个时候能想到的是该数据应该是做了字体反爬。

再细心点会发现它标签中用到的属性style,后面跟上的字符传应该是调用对应字体库的链接中的某个参数。

找到调用的字体库

把第一步上字体库的url参数通过全局搜索,会发现它存在于一个长链接中,再细看长链接,有两个参数cfdc和ci这两个参数,其中cfdc对应的数据是粉丝数量需要经过字体库的映射一下关系,则是对应才是正确的粉丝数量,ci这个参数是对应的字体库的链接的参数

但是多刷新几次,会发现每次调用的字体库是不一样的,所以这里不能写死。要根据长链接返回的字体库参数拼接链接。才能获取到每次调用的字体库的链接。

解析字体库,找到对应关系

把每次获取到的字体库链接直接通过下载下来,保存为woff格式。然后转成lxml格式。打开lxml,很清楚的能看见里面对应的关系。然后通过解析lxml对数据进行解析,获取到对应的映射关系即可。

附上解析字体的代码:

import requests
from fontTools.ttLib import TTFont
from xml.dom.minidom import parseheaders = {'user_agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36',
}def get_number_dict(keyword):number_dict = {'zero': 0,'seven': 7,'three': 3,'four': 4,'eight': 8,'six': 6,'five': 5,'nine': 9,'one': 1,'two': 2,}dom = parse("lxml路径")# dom = parse("/Users/zhulang/Desktop/nanodata_crawling/apps/douyu/woff/%s.xml" % str(keyword))data = dom.documentElementstus = data.getElementsByTagName('GlyphID')font_dict = {}corr_number = [

tags: 粉丝

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了