爬虫学习日记(一):图片爬取的相关接口
最近学习了爬虫,自己做了一些接口,写个文章记录一下
爬取图片的时候发现要保存到新的文件夹,所以做了个接口
# 移动到指定文件夹接口
def move_folder(folder):
if os.path.exists(folder + '图片包') == False:
os.mkdir(folder + '图片包')
os.chdir(folder + '图片包')
else:
print(folder + "文件夹已存在")
os.chdir(folder + '图片包')
其中folder为文件夹名称,需要引用os模块,即
import os
还有就是保存图片时,名字可能会不规范而导致出错
import re
# 判断文件名是否规范接口
def validate_title(filename):
r_str = r"[\/\\\:\*\?\"\<\>\|”“]" # '/ \ : * ? " < > | ” “'
new_filename = re.sub(r_str, "", filename) # 替换为无
return new_filename
做了相应的判断,去除不符合规范的字符
其中可以根据自己需要修改r_str
最后就是下载图片接口
# 下载图片接口
def save_imgs(img_addrs, img_names):
length = len(img_addrs)
for i in range(length):
file_name = img_names[i]
if os.path.exists(file_name):
print(file_name + "图片已存在!")
else:
with open(file_name, 'wb') as f:
img = requests.get(img_addrs[i]) # 访问对应网址获得的图片
f.write(img)
print(file_name + '下载完成!!!')
也是需要
import os
import requests
传入的参数分别是图片地址列表和图片名称列表,两者长度需要一致
暂时先写这么多
下次再加