前言
大家早好、午好、晚好吖 ❤ ~欢迎光临本文章
本来是不玩原神的,但是实在是经不住双重诱惑呀~
毕竟谁能拒绝角色风景超级好看又可以爬树、炸鱼、壶里造房子、抓小动物、躲猫猫的游戏捏~
今天点进官网~角色得配音让我沉陷其中,于是
我决定把他们爬下来~嘿嘿嘿,下面给大家分享一下我的成果
更多精彩内容、资源皆可点击文章下方名片获取此处跳转
准备工具
准备模块
import requests
import re
import execjs
请求链接
也就是原神官网
本次目标
所有角色的:
-
基础介绍
-
中日语音
-
图片
分析数据来源
1.右键点击检查(开发者工具)
2.刷新网页,找准对应数据
代码展示
url = 'https:///main/character/liyue?char=1'
html_data = requests.get(url).text
print(html_data)
筛选数据
随便搜索网站内包含内容:“南十字”
使用正则表达式匹配数据内容
js_text = re.findall('window.__NUXT__=(.*);', html_data)[0]
执行结果
html_data = requests.get(url).text
js_text = re.findall('window.__NUXT__=(.*);', html_data)[0]
result = execjs.eval(js_text)
此时会出现编码问题
加指定编码
import subprocess
from functools import partial
subprocess.Popen = partial(subprocess.Popen, encoding="utf-8")
再次运行,无报错
使用pprint查看数据结构
pprint.pprint(result)
返回网页查看我们需要的内容
打印所需数据
charList = result['data'][0]['charList']
for char in charList:
cover1 = char['cover1']
title = char['title']
intro = char['intro']
audio_list = char['cv'][0]['audio']
print(title, intro, cover1, audio_list)
部分效果展示
尾语 💝
好了,今天的分享就差不多到这里了!
完整代码、更多资源、疑惑解答直接点击下方名片自取即可。
对下一篇大家想看什么,可在评论区留言哦!看到我会更新哒(ง •_•)ง
喜欢就关注一下博主,或点赞收藏评论一下我的文章叭!!!