使用bs4判断对应tag下对应属性的问题

from bs4 import BeautifulSoup
import requests
headers={
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36'
}
content=requests.get('https://www.xiachufang.com/',headers=headers)
soup=BeautifulSoup(content.content.decode('utf-8'),'lxml')
img=soup.find_all('img')
num1=1
for list1 in img:
    print("这是find的方法取值,这是第{}次".format(num1))
    num1+=1
    print(list1['src'])
sel=soup.select('img')

代码如上,想获取下厨房里面的所有图片的链接(img标签下的所有src属性)但是发现部分img标签下有的链接是在data-src属性下的,bs4有没有什么办法能在获取属性时传递几个属性,如果属性存在的话就获取,否则什么都不做,请知道的告诉下谢谢

这个你需要用代码进行判断。根据自己需要来选取节点属性值。用try...except...来处理,在没有src属性时,会去找data-src,你也可将其互换。

for list1 in img:
    try:
        print('src',list1['src'])
    except:
        try:
            print('data-src', list1['data-src'])
        except:
            pass

您好,我是问答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632