import requests
import re
from bs4 import BeautifulSoup
rp = r"<a href=(.*?) target"
rgm = r"<img src=(.*?) alt"
path = r"./Picture/chengshilvyou"
url_base = "https://www.ivsky.com"
parmas = {
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36",
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
"Connection":"keep-alive"
}
class Picture():
def getHtml(self):
html = requests.get(url,params=parmas).text
soup = BeautifulSoup(html,features="html.parser")
return soup
def getPic_lis(self,url):
'''获取首页图片的列表'''
html_soup = picture.getHtml()
pic_list = []
T_list= html_soup.find_all("div",class_=re.compile("il_img"))
for i in T_list:
pic = re.findall(rp,str(i))
pic_list.append(url_base + str(pic[0]).replace('"',""))
print("msgone"+str(pic_list))
return pic_list
def getImg_list(self):
'''从首页获取的图片列表中依次获取图片集列表'''
img_list = []
index_list = picture.getPic_lis(url)
for x in index_list:
html_img = requests.get(x,params=parmas).text
print("metend"+ str(html_img))
# soup_img = BeautifulSoup(html_img)
# I_list = soup_img.find_all("div",class_=re.compile("il_img"))
I_list = re.findall(rgm,html_img)
print("msg"+str(I_list))
for n in I_list:
# img_url = re.findall(rg,str(n))
img_list.append("https:" + str(n).strip('"'))
print("msg2"+str(img_list))
return img_list
def download(self,num):
imgs_url = picture.getImg_list()
m = 0
for img_url in imgs_url:
print('***** ' + str(m) + '.jpg *****' + ' Downloading...')
dir = path + str(num) + str(m) + '.jpg'
response = requests.get(img_url)
with open(dir,"wb") as file:
file.write(response.content)
print('***** ' + str(m) + '.jpg *****' + 'Done.')
m = m + 1
if __name__ == "__main__":
num = 1
while num < 101:
url = "https://www.ivsky.com/tupian/chengshilvyou/index_" + str(num) + ".html"
picture = Picture()
picture.getPic_lis(url)
picture.getImg_list()
picture.download(num)
num += 1
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述