Python BeautifulSoup无法获取标签中data-src属性数据求助
问题:无法获取网页中div标签的data-src属性值
尝试爬取某米哈游论坛页面数据时遇到问题,想要获取目标div标签中的data-src属性数据但未能成功。
目标HTML结构
<a href="[not important]" target="_blank" class="collection-avatar__item" data-v-51c84696=""> <div class="collection-avatar__icon" data-v-51c84696="" data-src="[link to a png image that I need]" lazy="loaded" style="[not important]"> <div class="red-point" data-v-51c84696=""> <!----> </div> </div> </a>
尝试的代码
url = "https://bbs.mihoyo.com/bh3/wiki/channel/map/17/18?bbs_presentation_style=no_header" result = requests.get(url).text soup = BeautifulSoup(result, 'lxml') a = soup.find('a' , class_ = 'collection-avatar__item') b = a.find('div' , class_ = 'collection-avatar__icon')['data_src'] print(b)
遇到的问题
代码没有输出任何内容。打印整个div标签后发现:
<div class="collection-avatar__icon" data-v-51c84696=""><div class="red-point" data-v-51c84696=""><!-- --><div></div>
可以看到div标签中的data-src、style和lazy属性都消失了,怀疑是data-v-51c84696属性导致,但不确定。请问如何才能获取到data-src属性的数据?
补充测试步骤
- 访问目标页面,右键点击目标角色并选择“检查”,即可在HTML中找到对应的div标签。
- 使用以下代码可打印出div标签:
import requests from bs4 import BeautifulSoup url = "https://bbs.mihoyo.com/bh3/wiki/channel/map/17/18?bbs_presentation_style=no_header" result = requests.get(url).text soup = BeautifulSoup(result, 'lxml') a = soup.find('a' , class_ = 'collection-avatar__item') b = a.find('div' , class_ = 'collection-avatar__icon') print(b)
内容的提问来源于stack exchange,提问作者gay
相关产品推荐
相关产品推荐

