Python爬虫实战(4)-带你用Python爬取妹子图片

前言

最近很忙,很久没有更新了,在这里和大家说声抱歉。今天继续讲一下爬虫实战,用Python爬取妹子图片。本文用到的知识点:
-requests
-xpath语法
-OS模块实现创建文件以及写入文件

爬取图片

先看效果图:

本文爬取的网站是豆瓣美女,网址:https://www.dbmeinv.com/

代码

1.获取网站的网页数据
2.获取图片URL列表
3.依次写入本地文件
下面是整体的代码,爬取了前十页的图片:

import requests
import  os
from  lxml import  etree

#请求头
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36'}
#URL列表
urls=["https://www.dbmeinv.com/?pager_offset={}".format(str(i)) for i in range(1,11) ]
#路径,可以更改成你的路径
path='C://Users/qzs/Desktop/美女图片/'


#获取图片并写入本地文件
def get_girlphoto(url):
    try:
        data = requests.get(url+"1", headers=headers)
        selector = etree.HTML(data.text)
        #获取图片的URL列表
        girlphoto_urls = selector.xpath('//div/a/img/@src')

        #循环每个图片链接并写入本地文件,写入要用二进制
        for item in girlphoto_urls:
            if not os.path.exists(path):
                os.makedirs(path)
                print("path创建成功")
            data = requests.get(item, headers=headers)
            with open(path + item[-7:], 'wb') as f:
                f.write(data.content)
                f.close()
    except :
        print("Exception")



if __name__ == '__main__':#主函数
    #循环URL
    for url in  urls:
        get_girlphoto(url)


希望对刚入门的朋友有所帮助!


你可能感兴趣的:(Python教程)