美图收割机,老司机带你用Python,轻松获取1000张美女图片

牛老师是一个滴水之恩当涌泉相报的人。

看着群里小伙伴们的无私分享,再看看自己空空如也的文件夹,我羞愧的低下了头 。
请添加图片描述
为了能回报小伙伴,和广大无私的网友

牛老师毅然决然的做出了这个造福人民的决定

靠着这个程序,如今已经成为了群里众人膜拜的大佬

接下来牛老师将法宝传授给你们,让你们也能拥有属于自己的“学习资料”
请添加图片描述

开发环境

  • 系统:Windows10 64位

  • Python版本:3.9

  • Pycharm版本:2021.1.3

  • 模块(库):re、requests、os、BeautifulSoup

一、获取网页信息

强壮的牛老师,选择了一个柔弱没有防备的网站来偷袭
请添加图片描述
为了伪装成一个无害的文弱青年,方便之后的进一步操作

祭出祖传操作,先声明一个请求头,下面的headers参数用于伪装

然后悄咪咪的偷袭,先判断能不能下手,确定能下手后先获取了第一手信息

url = 'http://www.netbian.com/meinv/'
#先声明请求头
headers = {
   
     'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'
 }
#判断网络连接状态
try:
    r = requests.get(url, headers=headers)
    r.raise_for_status()
    r.encoding = r.apparent_encoding
    print(r.text)
except:
    print('网络状态错误')

二、分析网页

想到马上就能得到图片的牛老师满心欢喜,激动的打开了图片

结果发现画质不太给力,原本1920x1080的高清大图变成了800x450
请添加图片描述
请添加图片描述
直接通过主页面所下载的图片是缩略图

于是牛老师通过进入到详情页,又下载了一次。果然,这次得到了又大又圆的高清图片
请添加图片描述
按下F12,查看div标签中图片的详细参数,可以看到这里有高清大图的链接

所以,我们只需要通过BeautifulSoup提取出来,下载它就很简单了
请添加图片描述

三、获取图片链接

既然找到了高清图片的链接,那么就通过BeautifulSoup,把这些链接都截取下来

首先牛老师先把,获取网页信息的代码封装成函数,以方便调用

def getHtml(url):
    #先声明请求头
    headers = {
   
         'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'
    }
    #判断网络连接状态
    try:
        r = requests.get(url, headers=headers)
        r.raise_for_status()
        r.encoding = r.apparent_encoding
        return r.text
    except:
        print('网络状态错误')

因为要的是有用的数据,这一步首先把整体的链接都提取出来了

电脑很蠢,不能直接拿到我们想要的数据,所以这里通过"list"作为锚点,把有用的地方筛选出来

把没有用的链接先剔出去

有用的链接因为都只有后缀,所以下面给它凑个网址出来,这样一个完整的链接就出来了
请添加图片描述

url = 'http://www.netbian.com/meinv/'
#先储存每张图的url
url_list = []
demo = getHtml(url)
soup = BeautifulSoup(demo,'html.parser')
#class=
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值