我正在尝试抓取此html文本的"data-src"元素中的所有数据:
[<div class="js-delayed-image-load" data-alt="A man covers his face during a sandstorm in Cairo, Egypt, 16 January 2019" data-height="549" data-src="https://ichef.bbci.co.uk/news/320/cpsprodpb/5DE9/production/_105214042_hi051682579.jpg" data-width="976"></div>,
, , , , , , , , , , , , , , , , , , , , ]
我正在使用以下代码:
image_containers = soup.find_all('div', class_ = 'js-delayed-image-load')
print(type(image_containers))
print(len(image_containers))
for image in image_containers:
image.div['data-src']
它给了我这个错误:
TypeError
Traceback (most recent call last)
<ipython-input-546-fa82366c888d> in <module>()
4 image_containers
5 for image in image_containers:
----> 6 image.div['data-src']
TypeError: 'NoneType' object is not subscriptable
为什么它给我一个都没有?有人可以告诉我我做错了什么吗?
谢谢!
image
已经是div
节点的目标。您不需要再次提取div
(它没有子div
因此image.div
返回None
)。尝试
for image in image_containers:
image['data-src']