date:2021/01/16
author:eihouwang
目标网址:http://www.netbian.com/
开发环境:pycharm2020.3.2、Python3.8
用到的模块(库):os,re,requests,urllib,time
整体思路:
1、获取主界面各个分类标签,并生成对应的文件夹 比如分类标签:rili,dongman,fengjing等
2、进入单个标签单独一页,获取单页图片网页列表 比如松林公路图片,帅气美女图片,美丽冬天图片等图片的网址(整个网址图片并不是高清图片,需要找到高清图片网址)
3、进入单页图片网页列表中的一个网页,获取实际大小1920*1080的图片网址并进行下载
4、保存图片到本地
5、完成单标签图片收集
6、完成多标签图片收集
注意:此爬虫未用多线程,爬取时间较长(几个小时),运行之前最好确保电脑中没有代码中所示创建的文件夹,让代码自行创建,否则可能出现分类错误, 本次选取的分类下载的图片都是不需要登录的,需要登录的没有收集,以下示全部代码:
import os
import re
import time
import requests
from urllib.parse import urljoin
# 设置全局变量
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) "
"Chrome/80.0.3987.87 Safari/537.36 SE 2.X MetaSr 1.0"}
# 访问网页,获取反馈
def get_html(url):
r = requests.get(url, headers=headers)
if r.status_code == 200:
return r.text
return None
# 获取标签列表和创建对应文件夹(返回已经排序的标签网址列表和文件夹列表)
def get_lable_list(url):
html = get_html(url)
result = re.findall('/em(.*?)LOL', html)
result2 = re.findall('"/(.*?)/"', result[