赞
踩
使用Python做爬虫其实很简单,这里使用一个小案例来详细介绍Python爬虫的用法,借助Python工具爬取王者荣耀英雄人物头像图片,Python爬虫爬取网页图片可以分为四步:明确目的、发送请求、数据解析、保存数据,具体步骤如下,下面一起学习。
示例工具:anconda3.7
本文讲解内容:Python爬取图片
适用范围:网页解析、图片爬取
打开王者荣耀英雄介绍主页,该主页包含很多种英雄的头像图片,主页网址链接如下。添加链接描述
使用requests库发送请求,返回状态码显示为200,服务器连接正常。
import requests
u='https://pvp.qq.com/web201605/herolist.shtml'
response=requests.get(u)
print('状态码:{}'.format(response.status_code))
if response.status_code != 200:
pass else: print("服务器连接正常")<img src="https://pica.zhimg.com/v2-90c9e2103fcb9dd494c25a0e834976b4_b.jpg" data-caption="" data-size="normal" data-rawwidth="196" data-rawheight="64" data-original-token="v2-90c9e2103fcb9dd494c25a0e834976b4" class="content_image" width="196"/>
在数据解析之前,需要提前安装pyquery,pyquery库类似于Beautiful Soup库,初始化的时候,需要传入HTML文本来初始化一个PyQuery对象,它的初始化方式包括直接传入字符串,传入URL,传入文件名等等,这里传入URL,并且查找节点。
#解析数据
from pyquery import PyQuery
doc=PyQuery(html)
items=doc('.herolist>li')#.items()
print(items)
for item in items:
url=item.find('img').attr('src')
#print(url)
urls='http:'+url
name=item.find('a').text()
#print(name)
url_content=requests.get(urls).content
最后保存数据,需要提前新建一个文件夹用于数据存储,同时,存储数据的代码需要写在for循环里面,不然只会保存一张图片。
with open('C:/Users/尚天强/Desktop/王者荣耀picture/'+name+'.jpg','wb') as file:
file.write(url_content)
print("正在下载%s......%s"%(name,urls))
同时加一个计时器,用于计时图片爬取的时长,这里显示图片爬取共计耗时7.03秒。
import time
start=time.time()
…
end=time.time()
print('图片爬取共计耗时{:.2f}秒'.format(end-start))
import time start=time.time() import requests from pyquery import PyQuery #确定目标 url="https://pvp.qq.com/web201605/herolist.shtml" #发送请求 html=requests.get(url).content #print(html) #解析数据 doc=PyQuery(html) items=doc('.herolist>li').items() #print(items) for item in items: url=item.find('img').attr('src') #print(url) urls='http:'+url name=item.find('a').text() #print(name) url_content=requests.get(urls).content #保存数据 with open('C:/Users/尚天强/Desktop/王者荣耀picture/'+name+'.jpg','wb') as file: file.write(url_content) print("正在下载%s......%s"%(name,urls)) print("下载完毕") end=time.time() print('图片爬取共计耗时{:.2f}秒'.format(end-start))
总结一下,使用Python爬取数据一共分为四步:明确目的、发送请求、数据解析、保存数据,熟练掌握以上四个步骤,即可从网页爬取数据,数据形式不限于文本、数字、图片等,如果你也感兴趣爬虫知识,想更深层次地学习Python数据分析,不妨自己上手试试。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。