python爬取妹子图网健康图片

为了博取大家的眼球,博主选了这个题材,现实生活中博主很正直的人,嗯
废话不说
demo,本demo只爬取了封面图片,内部图片方法相同

import requests
from pyquery import PyQuery as pq
import os

class pachong:
    # 初始化
    def __init__(self,url,headers):
        self.url=url
        self.headers=headers
        self.text=requests.get(self.url,headers=self.headers).text

    def page(self):
        doc=pq(self.text)
        item=doc('.pagebar a')
        pages=[]
        for i in item:
            if pq(i).attr.href not in pages:
                pages.append(pq(i).attr.href)
                print(pq(i).attr.href)
        return pages
    # 妹妹图片提取与保存
    def storeImg(self,text):
        pageHtml=pq(text)
        imgs=pageHtml('li .img a')
        for i in imgs:
            img=pq(i)('img')
            title=pq(img).attr.alt
            src=pq(img).attr.src
            try:
                if not os.path.exists(r'C:\Users\XChen32\Desktop\meizi\image'):
                    os.makedirs(r'C:\Users\XChen32\Desktop\meizi\image')
                content=requests.get(src,headers=self.headers).content
                with open(r'C:\Users\XChen32\Desktop\meizi\image\%s.jpg'%title,'wb+') as file:
                    file.write(content)
            except:
                pass

    def startMain(self):
        pages=self.page()
        #第一页妹妹图片爬虫
        self.storeImg(self.text)
        #其他页妹妹图片爬虫
        for page in pages:
            text = requests.get(page, headers=self.headers).text
            self.storeImg(text)


headers = {
            "User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.146 Safari/537.36"
            }
url=r"https://www.lnlnl.cn/meizitu/"

storeMM=pachong(url,headers)

#pages=storeMM.page()
storeMM.startMain()

注意事项:需要添加headers
pyquery包的使用方法本文不讲术

HTML分析
在这里插入图片描述
li是当前页的所有图片
在这里插入图片描述
这里是li的封面图片以及整个专辑的地址,本文没做爬取
在这里插入图片描述
这里是一共多少页图片

这里是结果:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值