要运用到的python技术:
导入库
1.request 发送请求,从服务器获取数据
2.BeautifulSoup 用来解析整个网页的源代码
import requests
from bas4 import BeautifulSoup
爬取网站的第一步:发送请求到服务器
resp=requests.get("https://www.umei.cc/")#从服务器拿到源代码
改变编码格式为utf-8
resp.encoding("utf-8")
爬取的第二步:
运用导入bas4库解析html页面为第二步
#解析html
main_page=BeautifulSoup(resp.text,'html.parser')
#从页面中找到某些东西
#find()赵一个
#find_all()找所有
alst=main_page.findall("div",attrs={"class":"TypeList"}).findall("a",attrs={"class":"TypeBigPics"})
for a in alst:
print(a.get("href"))
#发送请求到子页面,进入到所有小姐姐的页面
href=a.get("href")
resp1=requests.get(href)
resp1.encoding('utf-8')
child_page=beautifulSoup(resp1.text)
child_page.findall("dive",attrs={"class":"ImageBody"}).find("img").get("src")
第三步,把爬取到的图片用文件打开,进行数据的持久化
#创建文件
f=open("tu_%s.jpg"%n,mode="wb")#wb表示写入的是非文本文件
f.write(requests.get(src).content)#向外拿出图片数据,不是文本信息
print("你已经成功下载了一个图片")
n+=1#n自增1
完整代码:
import requests
from bas4 import BeautifulSoup
resp=requests.get("https://www.umei.cc/")#从服务器拿到源代码
resp.encoding("utf-8")
#解析html
main_page=BeautifulSoup(resp.text,'html.parser')
#从页面中找到某些东西
#find()赵一个
#find_all()找所有
alst=main_page.findall("div",attrs={"class":"TypeList"}).findall("a",attrs={"class":"TypeBigPics"})
for a in alst:
print(a.get("href"))
#发送请求到子页面,进入到所有小姐姐的页面
href=a.get("href")
resp1=requests.get(href)
resp1.encoding('utf-8')
child_page=beautifulSoup(resp1.text)
child_page.findall("dive",attrs={"class":"ImageBody"}).find("img").get("src")
#发送请求
#创建文件
f=open("tu_%s.jpg"%n,mode="wb")#wb表示写入的是非文本文件
f.write(requests.get(src).content)#向外拿出图片数据,不是文本信息
print("你已经成功下载了一个图片")
n+=1#n自增1