之前的文章,都是基于python2.X来做的,现在我们很多都是使用python3.x,导致很多的代码不能用 ,因为python2和python3 的差别还是很大的,所以根据修改后可以执行的代码如下:
模块使用的是:requests和bs4模块,安装也是很简单,pip install XXX 即可
编辑器:Vscode
版本:python3.5
import requests from bs4 import BeautifulSoup import os Hostreferer={ 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36', 'Referer':'http://www.mzitu.com' } Picreferer={ 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36', 'Referer':'http://i.meizitu.net' } def get_html(url): req=requests.get(url,headers=Hostreferer) html=req.text return html def get_page_name(url): html=get_html(url) soup=BeautifulSoup(html,'lxml') span=soup.findAll('span') title=soup.find('h2',class_='main-title') return span[10].text,title.text def get_img_url(url,name): html=get_html(url) soup=BeautifulSoup(html,'lxml') img_url=soup.find('img',alt=name) return img_url['src'] def save_img(img_url,count,name): req=requests.get(img_url,headers=Picreferer) with open('name+'/'+str(count)+'.jpg','wb')as f: f.write(req.content) if '__name__'=='__main__': old_url='http://www.mzitu.com/123114' page,name=get_page_name(old_url) os.mkdir(name) for i in range(1,int(page)+1): url=old_url+'/'+str(i) img_url=get_img_url(url,name) save_img(img_url,i,name) print('保存第'+str(i)+'张图片成功')
代码是可以运行的,结果图就不放了,你懂的!!!