图片代码:
图片地址处的代码大致如下
<div class=img> <a> <img src='http://xxxxxxxxxxx.jpg?&&¥#@'></img> </a> </div> <div class=img> <a> <img src='http://xxxxxxxxxxx.jpg?&&¥#@'></img> </a> </div> <div class=img> <a> <img src='http://xxxxxxxxxxx.jpg?&&¥#@'></img> </a> </div>
用urllib.request.urlopen()方法获取网页代码
用beautifulsoup解析出图片地址
用urllib.request.urlretrieve()方法保存文件
import urllib.request as ur from bs4 import BeautifulSoup as bs url='http://bbs.fengniao.com/forum/10957178_p97726260.html#post97726260' r=ur.urlopen(url).read().decode('utf-8') html=bs(r,'html.parser') #获取页面源代码, div_list=html.find_all('div',class_='img') #取得所有含有图片的div,存入列表 i=1 for div in div_list: a=div.find('a') #在每个div中找到a标签 img=a.find('img') #在img标签中找到a标签 src=img.get('src') #在img标签中获得src属性,即图片的真实地址 img_url=src.split('?')[0] #图片地址中有“?”加上一些无聊的后辍,去掉它,否则不能原尺寸显示 #保存图片, ur.urlretrieve(img_url,'d:/study/img/{}.jpg'.format(i)) print(img_url) #下完一张,打印提示一下 i+=1 print('ok')