您的位置:首页 > 编程语言 > Python开发

初学python爬虫,记录一下学习过程,requests xpath提取图片地址并保存图片

2020-03-06 15:27 1271 查看

系统练习requests xpath提取图片并保存本地

'''
requests库请求目标网址

xpath提取网页的图片地址

面向函数编程
'''
#导入第三方库
import requests
from lxml import etree
#定制请求头
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) '
'AppleWebKit/537.36 (KHTML, like Gecko) '
'Chrome/64.0.3282.140 Safari/537.36 Edge/18.17763'}

def get_html(url):
#目标网页如果以 .text()方式输出文本,则出现乱码,故采用UTF-8方式输出网页文本
html = requests.get(url,headers = headers).content.decode('utf-8')
return html

def paser_html(html):
#新建空列表,用于存放提取图片的url地址
images_url = []
#xpath库解析网页,提取图片地址
e = etree.HTML(html)
#xpath解析语法
images_list = e.xpath('//li[@class="image-box"]/a/img/@data-echo')
#遍历输出图片地址
for image in images_list:
images_url.append(image)
return images_url
#定义保存图片函数
def save_image(images_url):
#循环遍历图片地址
for image_url in images_url:
#请求每一个url
r = requests.get(image_url,headers = headers)
#定义每一个图片的名称
file_name = image_url.split('/')[-1]
#保存图片
with open(file_name,'wb') as f:
f.write(r.content)
#定义主函数
def main():
url = 'https://www.yeitu.com/meinv/xinggan/'
html = get_html(url)
images_url = paser_html(html)
save_image(images_url)
main()
  • 点赞
  • 收藏
  • 分享
  • 文章举报
warm... 发布了18 篇原创文章 · 获赞 14 · 访问量 1485 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: