使用python3+requests库编写
效果图:
故使用前请安装requests库
pip install requests
代码如下:
直链下载地址:https://eqblog.com/script/base_spider.py
import requests import re import os def download_pic(b,dir): headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36Name','Referer':'http://www.mm131.com'} a=1 while True: url='http://img1.mm131.me/pic/'+str(b)+'/'+str(a)+'.jpg' req=requests.get(url=url,headers=headers) if req.status_code==200: with open(str(dir)+'/'+str(a)+'.jpg','wb') as f: f.write(req.content) a=a+1 else: break flag=1 while True: if flag==1: get=requests.get('http://www.mm131.com/xinggan/') b=re.findall(r'<dd><a target="_blank" href="http://www.mm131.com/xinggan/([0-9]*).html"><img src=',get.text) for a in b: getpage=requests.get('http://www.mm131.com/xinggan/'+str(a)+'.html') tittle=re.findall(r'<h5>(.*)</h5>',str(getpage.content,'gb2312',errors='ignore')) for t in tittle: if os.path.exists(t)==False: os.makedirs(t) print('开始下载:'+t) download_pic(a,t) print('下载完成') else: print('文件夹已存在,跳过') flag=flag+1 print('这一页的任务已经完成了') else: get=requests.get('http://www.mm131.com/xinggan/list_6_'+str(flag)+'.html') if get.status_code==200: b=re.findall(r'<dd><a target="_blank" href="http://www.mm131.com/xinggan/([0-9]*).html"><img src=',get.text) for a in b: getpage=requests.get('http://www.mm131.com/xinggan/'+str(a)+'.html') tittle=re.findall(r'<h5>(.*)</h5>',str(getpage.content,'gb2312',errors='ignore')) for t in tittle: if os.path.exists(t)==False: os.makedirs(t) print('开始下载:'+t) download_pic(a,t) print('下载完成') else: print('文件夹已存在,跳过') flag=flag+1 print('这一页的任务已经完成了') else: break
借这问下,昨天发的91爬虫,我再我群晖NAS上部署了,群晖应该算Linux,部署后运行正常,但是不知为何文件下载没下到指定文件夹,是下到了根目录的/root/文件夹了
修改下代码吧。将目录换为绝对目录。。
楼主博客皮不错 分享下吧
https://eetheme.com/53.html
大佬,我的网站(岩兔站)换域名了,新域名是https://yantuz.cn/,麻烦更新下友情链接
已经更换了
嗯,谢谢了