【开源】美图下载器aardio+python+webview [2023年12月16日更新]
本帖最后由 bilibini 于 2023-12-16 22:06 编辑美图下载器
[*]软件说明:下载美图,开源可以随意修改代码打包
[*]软件版本:0.0.0.11
[*]软件平台:Windows
[*]软件功能:下载图片
更新
V0.0.0.6:
[*]优化图片加载速度和显示
[*]新增图片爬取
[*]优化图片加载与提示
V0.0.0.9:
[*]优化爬虫代码
[*]添加“图片搜索”功能
V0.0.0.11:
[*]优化图片显示
使用
[*]单击鼠标左键可以查看图片
[*]单击鼠标右键可以下载图片
[*]单击软件内部右下角 搜索图标 打开搜索窗口,可搜索图片
[*]进入查看图片窗口,可以按住·Ctrl+鼠标滚轮·放大缩小查看图片
[*]图片下载目录为程序所在的同级目录下的download文件夹
核心代码解析
#下面是以前V0.0.0.4版本返回图片数据的函数,当时为了省力使用字符串拼接返回图片数据
def getImgSrc(iNumber=1):
iNumber=int(iNumber)
url=cryptocode.decrypt('RPmitKoyxkGWT3rNdSIdllrKpBQkM2iXv4Gk*3fceH6rrhEDqRfiurc1k/g==*A/Ria0ZdrIKsY1wDa9zFJQ==*1ehaomVX+IvEYaQ4AtJtSQ==','bilibini')
head={
"User-Agent": UserAgent().random
}
res = requests.get(f"{url}/list-{iNumber}.html",headers=head,verify=False)
soup = BeautifulSoup(res.text, 'html.parser')
imgList=soup.select("article > div > div.zhuanti.whitebg.waterfall > ul > li > i > a > img")
imgSrcList= for img in imgList]
return '||'.join(imgSrcList)
#下面是最新V0.0.0.6版本返回图片数据的函数,同时爬取该网站的PC与手机端的图片
#使用字典存储单个图片数据,添加到数组中返回数据
def getimgList_1(iNumber=2):
iNumber=int(iNumber)+1
imgjsonlist=[]
try:
def get(url):
head={
"User-Agent": UserAgent().random
}
res = requests.get(url,headers=head,verify=False)
res.encoding='gbk'
soup = BeautifulSoup(res.text, 'html.parser')
imgList=soup.select("#main > div.list > ul > li > a > img")
imgDataList=[]
for img in imgList:
imgData={
'url':'',
'smallurl':'',
'title':'小陆离 可爱女孩 可爱 护眼 一手托着下巴的美女壁纸'
}
imgData['smallurl']=img.attrs['src']
imgData['title']=img.attrs['alt']
imgData['url']=re.findall(r'(.*)small.*',img.attrs['src'])+re.findall(r'.*small({11}).*',img.attrs['src'])+'.jpg'
imgDataList.append(imgData)
return imgDataList
url1=f'http://www.某某网站.com/meinv/index_{iNumber}.htm'
url2=f'http://www.某某网站.com/shouji/meinv/index_{iNumber}.htm'
imgjsonlist=get(url1)+get(url2)
except:
imgjsonlist=[{
'url':'err.png',
'smallurl':'err.png',
'title':'数据加载错误'
}]
return imgjsonlist
def getImgSrc(iNumber=1):
iNumber=int(iNumber)
imgDataList=getimgList_1(iNumber)
random.shuffle(imgDataList)
return imgDataList
最新的爬取代码中可以包裹更多的信息:{图片原链接,缩略图链接,标题},加载时使用缩略图,优化图片加载的速度。
其实不单只修改了爬虫部分,还修改了前段展示部分的代码,这里也简单提一下吧。
主页图片使用loading="lazy",进行懒加载再一次变得顺滑一些。
背景也单独加上z-index属性防止出现元素图层间闪动。
图片查看页面由“electron”替换为“web.form”加快窗口创建速度。
还有一些小修小改可以具体看项目代码。
下载(与源码)
已经打包好的程序,下载就可用(最新版本):https://wwf.lanzoul.com/iiRPh1i65hra
开源地址:https://github.com/bilibini/Lovely_Image_Downloader
8xy252813 发表于 2023-12-7 08:13
好多图片的预览图提示加载错误,但点开能看到。
最新版修复了这个bug,可以试一下https://wwf.lanzoul.com/iiRPh1i65hra
w360 发表于 2023-10-21 09:56
为啥还安装软件啥情况
https://im.gurl.eu.org/file/5706d0681658e8f76d1b3.jpg
是安装这个软件吗,这个软件是微软的一个插件一般最新的系统会自动集成,如果系统没有的话会自动安装这个插件{:301_975:} 赞,漂亮 哈哈,眼有福了谢谢分享 感谢大佬分享 俺是冲着学习来的,绝对不是为了美图!!! 感谢分享,美女们我来啦 感谢大佬分享,收藏备用! 没有搜索功能啊 正不正经 感谢分享,必须学习下