Python爬取自然风景图片代码

这篇博客展示了如何使用Python的requests和lxml库爬取网页上的自然风景图片。通过循环遍历不同页面,设置User-Agent以伪装浏览器,解析HTML并提取图片的src和alt属性,然后下载图片并保存到本地。整个过程详细解释了每一步操作,是学习Python爬虫获取图片的好例子。
摘要由CSDN通过智能技术生成

Python爬取自然风景图片代码

\qquad 需要用到python的etree库和requests库,需要提前下载安装。

from lxml import etree
import requests

for index in [1,2,3]:# 用for循环爬取不同的页面
    if index==1:
        url='https://pic.netbian.com/4kfengjing/'# 需要爬取自然风景的网页URL
    else:
        url='https://pic.netbian.com/4kfengjing/index_'+str(index)+'.html'# 需要爬取自然风景的网页URL
    headers={
        'User-Agent': 'UA伪装'
    }# UA伪装:设置浏览器'User-Agent',需要自己设置
    response = requests.get(url=url,headers=headers)# 调用 get方法返回一个响应对象response
    response.encoding = 'gbk'# 定义response的编码方式为gbk,来正确显示后面的中文
    page_text = response.text# 把response文本化

    # 利用xpath进行数据解析:src的属性值,alt属性
    tree = etree.HTML(page_text)# 构造一个etree对象tree
    li_list=tree.xpath('//div[@class="slist"]/ul/li')# 利用xpath表达式定位到我们所需要的li标签
    for li in li_list:# 循环每个li标签,将其内部的img标签中的src给提取出来
        #提取li标签中img标签的src属性,并加上域名表示正确的图片地址
        img_src='https://pic.netbian.com/'+li.xpath('./a/img/@src')[0]
        img_name=li.xpath('./a/img/@alt')[0]+'.jpg'# 利用该图片的alt属性作为其存储名称
        print(img_name)
        print(img_src)
        img_data = requests.get(url=img_src,headers=headers).content # 再次通过requests.get方法获取图片的二进制代码 
        img_path = '自然图片/'+img_name # 设置图片存储路径,文件夹一定要事先新建好
        with open(img_path,'wb') as fp: # 打开新文件
            fp.write(img_data) # 将我们提取到的图片二进制代码写入该文件中,得到该图片
            print(img_name,'下载成功')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值