以下代码仅供学习交流,主要功能wallhaven壁纸网站图片
程序运行后会在当前目录下生成bizhi的文件夹存储爬取到的图片
图片较大,建议爬取页数选取小一点5.需要第三方库
如遇到什么问题和报错请在评论区详细列出
代码语言:javascript复制import requests,os
from bs4 import BeautifulSoup
ab = 1
url = 'https://wallhaven.cc/search'
# 如果不存在bizhi文件夹,创建壁纸文件夹
if not os.path.exists('bizhi'):
os.mkdir('bizhi')
keyword = input('请输入你要爬取的壁纸关键词:')
start_page = int(input("起始页码:"))
end_page = int(int(input("结束页码:")) 1)
for i in range(start_page, end_page):
data = {
'q': keyword,
'sorting': 'random',
'ref': 'fp',
'seed': 'pDRjMC',
'page': i,
}
# 请求搜索链接
resp = requests.get(url=url,params=data)
# 解析搜索页面
page = BeautifulSoup(resp.text,'html.parser')
# 查找图片链接
urls = page.find_all("a",attrs={'class':'preview'})
for n_url in urls:
href = n_url.get('href')
# 请求图片链接
resp1 = requests.get(url=href)
# 解析图片页面
page1 = BeautifulSoup(resp1.text,'html.parser')
img = page1.find('img',attrs={"id":"wallpaper"})
# 查找图片下载链接
img_url = img.get('src')
# 下载图片#
resp2 = requests.get(url=img_url).content
# 保存图片
with open(f'./bizhi/{ab}.jpg','wb') as f:
f.write(resp2)
ab = 1
print('爬取完毕')