目标网站:http://699pic.com/sousuo-218808-13-1-0-0-0.html
如图,目标图片对于tag名为''img'',class=''lazy''
查找时使用 find_all('img',class_='lazy')
# conding :utf-8
from bs4 import BeautifulSoup
import requests
url ='http://699pic.com/sousuo-218808-13-1.html'
r1 = requests.get(url,verify=True)
soup =BeautifulSoup(r1.content.decode('utf-8'),'html.parser') #解析soup对像
tags =soup.find_all('img',class_='lazy') #查找所以符合条件的标签
for i in tags:
iurl=i['data-original'] #获取图片对应的原地址
titel=i['title'] #获取图片对应的名称
tup=requests.get(iurl).content #获取图片对应的二进制流
fp=open(titel+'.jpg','wb') #打开文件
fp.write(tup) #将图片二进制流写入文件
fp.close() #关闭文件
----------------------------------------------------------------------------------------
t=tags[0] print(t) print(t.name) # 获取tag名称 print(t.string) # str print(t['class']) # class返回的是list print(t.attrs) # 返回的字典,获取所有的属性
官方文档:http://beautifulsoup.readthedocs.io/zh_CN/latest/
所有对象可以归纳为4种:
Tag : 标签对象,如:<p class="title"><b>yoyoketang</b></p>,这就是一个标签
NavigableString :字符对象
BeautifulSoup :就是整个html对象
Comment :注释对象,如:!--for HTML5 --,它其实就是一个特殊NavigableString
1.find_all查找的是一个list对象
2.get_text() 获取tag标签下所有的文本
3.replace替换字符串里面的特殊字符