> 文档中心 > 获取全网低质量图片数据集的方法(含代码)

获取全网低质量图片数据集的方法(含代码)


   🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝 

🥰 博客首页:knighthood2001

😗 欢迎点赞👍评论🗨️

❤️ 热爱python,期待与大家一同进步成长!!❤️

👀给大家推荐一款很火爆的刷题、面试求职网站👀

跟我一起来巩固基础、开启刷题之旅吧

CSDN话题挑战赛第2期
参赛话题:面试宝典

代码如下

import requestsimport reimport osheaders = {    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.125 Safari/537.36'}name = input('请输入要爬取的图片类别:')num = 0num_1 = 0num_2 = 0x = input('请输入要爬取的图片数量?(1等于60张图片,2等于120张图片):')list_1 = []for i in range(int(x)):    name_1 = os.getcwd()    name_2 = os.path.join(name_1, 'data/' + name)    url = 'https://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word=' + name + '&pn=' + str(i * 30)    res = requests.get(url, headers=headers)    htlm_1 = res.content.decode()    a = re.findall('"objURL":"(.*?)",', htlm_1)    if not os.path.exists(name_2): os.makedirs(name_2)    for b in a: try:     b_1 = re.findall('https:(.*?)&', b)     b_2 = ''.join(b_1)     if b_2 not in list_1:  num = num + 1  img = requests.get(b)  f = open(os.path.join(name_1, 'data/' + name, str(num) + '.jpg'), 'ab')  print('---------正在下载第' + str(num) + '张图片----------')  f.write(img.content)  f.close()  list_1.append(b_2)     elif b_2 in list_1:  num_1 = num_1 + 1  continue except Exception as e:     print('---------第' + str(num) + '张图片无法下载----------')     num_2 = num_2 + 1     continueprint('下载完成,总共下载{}张,成功下载:{}张,重复下载:{}张,下载失败:{}张'.format(num + num_1 + num_2, num, num_1, num_2))

运行程序后,它会提醒你输入要爬取的图片类型和爬取图片的数量,然后会在你当前文件所在目录下,生成一个data文件夹,里面再生成一个你刚刚输入图片类型的文件夹,里面放的是你的图片 。目录如下

百度图片只能解决你的量的问题,不能解决质的问题,大家可以去试一试