我想用Bueatiful Soup提取图片的宽度和高度。所有图片都具有相同的代码格式:
<img src="http://somelink.com/somepic.jpg" width="200" height="100">
我可以使用
轻松提取链接for pic in soup.find_all('img'):
print (pic['src'])
但是
for pic in soup.find_all('img'):
print (pic['width'])
不适用于提取尺寸。我错过了什么?
修改 页面中的一张图片在html代码中没有宽度和高度。在最初的帖子时没有注意到这一点。所以任何解决方案都必须考虑到这一点
答案 0 :(得分:2)
类似字典的属性访问也适用于width
和height
,如果已指定的话。您可能会遇到没有明确设置这些属性的图像 - 在这种情况下,您当前的代码会抛出KeyError
。您可以使用get()
并提供默认值:
for pic in soup.find_all('img'):
print(pic.get('width', 'n/a'))
或者,您只能找到指定了img
和width
的{{1}}元素:
height
答案 1 :(得分:1)
它的工作方式略有不同,以获得其他属性
for pic in soup.find_all('img'):
print(pic.get('width'))
答案 2 :(得分:1)
试试这个:
@SpringBootApplication
@ComponentScan(basePackages = { "com.dell.customtools.api.security", "com.dell.customtools.api.controller"})
public class Application {`
你可以使用attrs方法,它返回一个字典,键作为标签的属性,值作为标签值。