美女图片小爬虫,嘿嘿

2024-01-20 03:10
文章标签 图片 美女 嘿嘿 小爬虫

本文主要是介绍美女图片小爬虫,嘿嘿,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

/*** Created by Administrator on 2016/9/22 0022.*///依赖的模块
var http=require('http');
var fs=require('fs');
var cheerio=require('cheerio');
var request=require('request');
var iconv = require('iconv-lite');//设置参数
new GetSexyPics({initUrl: 'http://www.mm131.com/xinggan/2655_20.html',//初始化网页请求地址maxNum: 100,//设置最大爬取数量(maxNum-index的值即爬取图片的数量)intervalTime: 800,//设置间隔时间index: 0//从0开始标记爬取的数量
});function GetSexyPics(params) {_this=this;_this.setParams=params;this.createFolder = function (name) {fs.exists('./' + name, function (exists) {if (!exists) {fs.mkdir('./' + name);}});};this.getSexyPics = function (initUrl) {var resData = '';var req=http.get(initUrl, function (res) {res.on('data', function (chunk) {//转换编码resData += iconv.decode(chunk, 'gb2312');});res.on('end', function () {//用cheerio模块解析请求的数据var $ = cheerio.load(resData);var images = {//获取图片标题title: $('.content h5').text().trim(),//记录请求页面数index: _this.setParams.index = _this.setParams.index + 1};//下载当前页面的图片downloadImg($, images.title, images.index);var nextPage = $('.content-page a.page-ch:last-child').attr('href');var newUrl = 'http://www.mm131.com/xinggan/' + nextPage;//如果没有当前组的图片点完则跳转到下一组newUrl = nextPage ? newUrl : $('.updown .updown_r').attr('href');newUrl = encodeURI(newUrl);//设置最大爬取数量if (_this.setParams.index < _this.setParams.maxNum) {setTimeout(function () {_this.getSexyPics(newUrl);}, _this.setParams.intervalTime);}//保存下次爬取图片时需要初始化的网页地址var nextTimeInitUrl = newUrl;//把日志保存起来,下次手动改initUrl为日志里的地址var logs = '下次需要执行的初始化地址是\(替换initUrl即可\)---' + nextTimeInitUrl;saveLogs(logs);});}).on('error', function (e) {console.log(e);console.log("错误:" + e.message);});function saveLogs(logs) {fs.writeFile('./logs/' + '日志' + '.txt', logs, 'utf-8', function (err) {if (err)console.log(err);})}function downloadImg($, imgTil, idx) {var imgUrl = '';$('.content-pic a img').each(function () {imgUrl = encodeURI($(this).attr('src'));//获取图片的地址var suffix = imgUrl.substring(imgUrl.lastIndexOf('.'));//获取图片后缀名console.log('第' + idx + '张图片---' + imgTil + '---' + imgUrl);request(imgUrl).pipe(fs.createWriteStream('./img/' + imgTil + suffix));});}req.on('error',function(err){console.log(err)})};this.init = function () {this.createFolder('img');this.createFolder('logs');this.getSexyPics(_this.setParams.initUrl);};this.init();
}

  

觉得好用的给个赞,...

转载于:https://www.cnblogs.com/leyi/p/5903068.html

这篇关于美女图片小爬虫,嘿嘿的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/624613

相关文章

Python如何去除图片干扰代码示例

《Python如何去除图片干扰代码示例》图片降噪是一个广泛应用于图像处理的技术,可以提高图像质量和相关应用的效果,:本文主要介绍Python如何去除图片干扰的相关资料,文中通过代码介绍的非常详细,... 目录一、噪声去除1. 高斯噪声(像素值正态分布扰动)2. 椒盐噪声(随机黑白像素点)3. 复杂噪声(如伪

Python中图片与PDF识别文本(OCR)的全面指南

《Python中图片与PDF识别文本(OCR)的全面指南》在数据爆炸时代,80%的企业数据以非结构化形式存在,其中PDF和图像是最主要的载体,本文将深入探索Python中OCR技术如何将这些数字纸张转... 目录一、OCR技术核心原理二、python图像识别四大工具库1. Pytesseract - 经典O

Python实现精准提取 PDF中的文本,表格与图片

《Python实现精准提取PDF中的文本,表格与图片》在实际的系统开发中,处理PDF文件不仅限于读取整页文本,还有提取文档中的表格数据,图片或特定区域的内容,下面我们来看看如何使用Python实... 目录安装 python 库提取 PDF 文本内容:获取整页文本与指定区域内容获取页面上的所有文本内容获取

Python基于微信OCR引擎实现高效图片文字识别

《Python基于微信OCR引擎实现高效图片文字识别》这篇文章主要为大家详细介绍了一款基于微信OCR引擎的图片文字识别桌面应用开发全过程,可以实现从图片拖拽识别到文字提取,感兴趣的小伙伴可以跟随小编一... 目录一、项目概述1.1 开发背景1.2 技术选型1.3 核心优势二、功能详解2.1 核心功能模块2.

Go语言如何判断两张图片的相似度

《Go语言如何判断两张图片的相似度》这篇文章主要为大家详细介绍了Go语言如何中实现判断两张图片的相似度的两种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 在介绍技术细节前,我们先来看看图片对比在哪些场景下可以用得到:图片去重:自动删除重复图片,为存储空间"瘦身"。想象你是一个

使用Python实现base64字符串与图片互转的详细步骤

《使用Python实现base64字符串与图片互转的详细步骤》要将一个Base64编码的字符串转换为图片文件并保存下来,可以使用Python的base64模块来实现,这一过程包括解码Base64字符串... 目录1. 图片编码为 Base64 字符串2. Base64 字符串解码为图片文件3. 示例使用注意

c/c++的opencv实现图片膨胀

《c/c++的opencv实现图片膨胀》图像膨胀是形态学操作,通过结构元素扩张亮区填充孔洞、连接断开部分、加粗物体,OpenCV的cv::dilate函数实现该操作,本文就来介绍一下opencv图片... 目录什么是图像膨胀?结构元素 (KerChina编程nel)OpenCV 中的 cv::dilate() 函

使用Python实现调用API获取图片存储到本地的方法

《使用Python实现调用API获取图片存储到本地的方法》开发一个自动化工具,用于从JSON数据源中提取图像ID,通过调用指定API获取未经压缩的原始图像文件,并确保下载结果与Postman等工具直接... 目录使用python实现调用API获取图片存储到本地1、项目概述2、核心功能3、环境准备4、代码实现

Java实现图片淡入淡出效果

《Java实现图片淡入淡出效果》在现代图形用户界面和游戏开发中,**图片淡入淡出(FadeIn/Out)**是一种常见且实用的视觉过渡效果,它可以用于启动画面、场景切换、轮播图、提示框弹出等场景,通过... 目录1. 项目背景详细介绍2. 项目需求详细介绍2.1 功能需求2.2 非功能需求3. 相关技术详细

Java如何根据文件名前缀自动分组图片文件

《Java如何根据文件名前缀自动分组图片文件》一大堆文件(比如图片)堆在一个目录下,它们的命名规则遵循一定的格式,混在一起很难管理,所以本文小编就和大家介绍一下如何使用Java根据文件名前缀自动分组图... 目录需求背景分析思路实现代码输出结果知识扩展需求一大堆文件(比如图片)堆在一个目录下,它们的命名规