【原创】python 爬取小清新唯美图片

摘要: 闲来无事,随便写个爬虫下点图片看看,发现leMonlv.com这个网站的图片还可以,都挺小清新的,于是话不多说直接干

闲来无事,随便写个爬虫下点图片看看,发现leMonlv.com这个网站的图片还可以,都挺小清新的,于是话不多说直接干:

# -*- coding:utf-8 -*-
from bs4 import BeautifulSoup
import os
import sys
import traceback
import requests

reload(sys)
sys.setdefaultencoding('utf-8')

headers={
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.221 Safari/537.36 SE 2.X MetaSr 1.0'
}

def request(url):
    s = requests.get(url,headers=headers,timeout=5)
    return s.content



# 下载图片
def downloadsImg(filename,img,dir):
    print "===" * 11 + "开始下载 --%0--"

    if not os.path.exists(dir):
        os.makedirs(dir)
    response = requests.get(img,timeout=20,headers=headers)
    # 获取的文本实际上是图片的二进制文本
    img = response.content
    # 将他拷贝到本地文件 w 写  b 二进制  wb代表写入二进制文本
    with open(dir + filename, 'wb') as f:
        f.write(img)
    print dir + filename
    print "===" * 11 + "已完成 --100%-- "


# 获取内容列表
def getListContent(url):
    soup = BeautifulSoup(request(url),'lxml')
    pageTitle = soup.find("div",class_="articleV2Title")

    # 缩略图标题
    title = pageTitle.find("h1").text
    print title
    imgs  = soup.find("div",class_="articleV2Body").find_all("img")
    for ig in imgs:

        if "http" in str(ig.get("src")):
            img = ig.get("src")
        else:
            img = "http://www.lemonlv.com" + ig.get("src")
        print img
        filename = str(img).split("/")[-1]
        downloadsImg(filename, img, 'e:/usr/lemonlv.com/'+title+'/')



# 获取详情链接和缩略图
def getUrl(url):
    soup = BeautifulSoup(request(url), 'lxml')
    link = soup.find("ul", class_="w110 oh Tag_list").find_all("a")
    for lk in link:
        try:
            url = "http://www.lemonlv.com" + lk.get("href")
            if ".html" not in url:
                continue
            print url


            getListContent(url)
        except:
            print "获取详情链接和缩略图失败"
            traceback.print_exc()

if __name__ == '__main__':
    for i in xrange(2,16):
        if i==1:
            url = "http://www.lemonlv.com/"
        else:
            url = "http://www.lemonlv.com/weimeinvsheng/index_"+str(i)+".html"
        getUrl(url)

以上 是采集一个栏目的代码 ,当然需要学习的可以留言。

运行结果:

1563460228162002.png

欢迎转载,须注明本站链接,尊重他人劳动成果!

网友留言评论

0条评论