手把手教你用Python爬虫煎蛋妹纸海量图片

我们的目标是用爬虫来干一件略污事情

最近听说煎蛋上有好多可爱的妹子,而且爬虫从妹子图抓起练手最好,毕竟动力大嘛。而且现在网络上的妹子很黄很暴力,一下接受太多容易营养不量,但是本着有人身体就比较好的套路,特意分享下用点简单的技术去获取资源。

以后如果有机会,再给大家说说日本爱情动(大)作(雾)片的种子搜索爬取,多多关注。

 

8c66c6cec3fdfc0301a33d68d23f8794a6c226a5_副本.jpg

请先准备

作案工具

我们只准备最简单的

          python 2.7.11

         Google Chrome

         安装的时候记得把pip带上,这样可以方便我们安装一些好用的包,来方便我们干坏事(学习)的过程。

需要用到的包

        包括更佳符合人类的HTTP库–requests

        用来解析html文件,快速提取我们需要的内容–beautifulsoup4

也可以用下面的命令快速安装

         pip install requests

         pip install beautifulsoup4

干正事

从一次正常需求说起

每天在互联网上冲来冲去,浏览着大量的信息,观看这各种鼻血喷发的图片,于是作为新时代青年的我们,怎么能忍受被这些大量的垃圾信息充斥的互联网,我们要反抗,我们要下载!

请,看,下,图

虐不虐配图1.jpg

当你在网上冲浪的时候遇到这样的图片,我就问你:

虐不虐?虐死了!

下不下?下!

开始吧

获取图片的CSS选择器的规则

首先,我们需要定位我们需要的图片

01,虐不虐.png

 

根据我们之前的准备的作案工具,使用chrome来访问网页http://jandan.net/ooxx

然后打开开发者工具菜单 -> 更多工具 -> 开发者工具

看下图右边的神器

02右边的神器.png

点击这个图标会出现块选择器,

鼠标移动我们感兴趣的部分

03感兴趣的部分.png

按照图片指示点击区域

04点击区域.png

右边神器中就会出现我们所需要的img标签

05需要的img标签.png

查看之前最后一个以#comments开头的标签, 

它包含了所有img的子标签。

下面让我们来一些

神秘的事

打开cmd或者终端

输入python

06输入python_副本.png

输入以下神秘代码

import requests
from bs4 import BeautifulSoupres = requests.get('http://jandan.net/ooxx')
html = BeautifulSoup(res.text)
for index, each in enumerate(html.select('#comments img')): with open('{}.jpg'.format(index), 'wb') as jpg: jpg.write(requests.get(each.attrs['src'], stream=True).content)

现在偷偷看一下你的当前目录

是不是有很多(污)的图片

07好羞羞的有很多图片_副本.png

咳咳是这样的

07好羞羞的有很多图片.png

名词解释

网络爬虫

网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。

 

爬虫的使用对很多工作都是很有用的,但是对一般的社区,也需要付出代价。使用爬虫的代价包括:

网络资源:在很长一段时间,爬虫使用相当的带宽高度并行地工作。

服务器超载:尤其是对给定服务器的访问过高时。

质量糟糕的爬虫,可能导致服务器或者路由器瘫痪,或者会尝试下载自己无法处理的页面。

个人爬虫,如果过多的人使用,可能导致网络或者服务器阻塞。

适用场景

1 为您的应用系统等检测“机器人”数据流量
2 为您的业务系统提供恶意IP、手机号码数据,为恶意注册、登录、交易、刷单、黄牛等场景提供数据支持
3 为企业内部风控部门提供多纬度、分场景、更及时、全局联防的底层数据支撑
4 对恶意爬虫(爬取企业核心数据等)多纬度数据支撑
5 其他……

是不是还不够

行踪不定的下期预告

看着上面规整的排版——前后有序、图文并茂,不就是练手爬虫技术最好的机会吗?今天就到这里了,读取下一页什么的就靠你自己探索,我将会在下个系列给你一个参考方法,希望你持续关注。

转载于:https://www.cnblogs.com/h2zZhou/p/5427306.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/403921.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

chrome浏览器的跨域设置,前端修改跨域问题

原文:https://www.cnblogs.com/laden666666/p/5544572.html 做前后分离的webapp开发的时候,出于一些原因往往需要将浏览器设置成支持跨域的模式,好在chrome浏览器就是支持可跨域的设置,网上也有很多chrome跨域设置教程。但是新版本…

Server 2012 Hyper-v新功能之二:自动化支持技术

Server 2012 Hyper-v新功能之一:客户端 Hyper-V Windows PowerShell 是在 Windows Server 中执行自动化任务的脚本解决方案,新的适用于 Windows PowerShell 的 Hyper-V cmdlet 为 IT 专业人员提供了一种简单的方法,能够在 Windows Server 201…

SecureCRTSecureFX_HH_x64_7.0.0.326 crt部署项目到服务器

1.使用crt 2.输入服务器ip和账号 3.命令 cd 空格 /item/qd 回车进入到规定好的前端代码目录下 ls 查看目录下的文件 4.rm -rf 文件名称/或者目录名称(空格删除多个、) rm 空格 -rf 空格 *.zip 删除所有的zip rz 上传新的zip包 6。解压 unzip 空…

ant中的table和pagination表格分页结合使用 手写分页

表格部分 <a-table:row-selection"rowSelection" :columns"columns":data-source"data"class"components-table-demo-nested"change"onChangeTable":scroll"{ x:1600 ,y:500}":pagination"pagination&qu…

poj3692

最大独立集&#xff0c;把不认识的男女看成是有矛盾的&#xff0c;要选出一些互相没有矛盾的男女。 View Code #include <iostream> #include <cstdio> #include <cstdlib> #include <cstring> using namespace std;#define maxn 205bool g[maxn][max…

在项目里交叉使用Swift和OC

From: http://blog.csdn.net/huangchentao/article/details/35278663 Swift and Objective-C in the Same Project 在项目里交叉使用Swift和OC Swift与OC的兼容性使得你可以在项目里使用SwiftOC的方式编写应用程序&#xff0c;称为混合匹配(mix and match)&#xff0c;用这种…

WireShark抓包,may be caused by ip checksum offload的解决办法

From: http://blog.csdn.net/yanjiee/article/details/8051494 今天在用WireShark抓包的时候&#xff0c;发现由本机发出去的包都是黑底红字&#xff0c;点进去看了一下发现都是报“may be caused by ip checksum offload”这样一个错误。 于是在网络上搜了一下关于Checksum o…

使用Dezender对zend加密后的php文件进行解密

在开发中需要修改一些php文件&#xff0c;部分是通过zend加密的&#xff0c;记事本打开之后是这样的&#xff1a; 此时需要使用Dezender进行解密&#xff0c;下载链接如下&#xff1a; Dezender.7z 下载后解压到C盘(路径不要带有中文)&#xff0c;如解压到其他位置&#xff0c;…

vue-cli3引入第三方的js依赖包并使用其方法

注意&#xff1a;引入第三方的包有两种&#xff0c;一种是做特殊要求必须如何引用的&#xff1b;一种是没有要求的 情况1&#xff1a;js包要求了如何引入的&#xff0c;按照其文档的方式引入和使用即可 1.1直接在indes.html按照要求引入 1.2使用方法 情况2&#xff1a;没…

autoconf.mk详析

uboot的顶层Makefile中有如下的一段代码[plain] view plaincopy # # Auto-generate the autoconf.mk file (which is included by all makefiles) # # This target actually generates 2 files; autoconf.mk and autoconf.mk.dep. # the dep file is only include in this …

都是大人物,看看你认识几个。

突然找到一张老图&#xff0c;但是一直没能认识全部的人&#xff0c;下面名单是填的&#xff0c;不一定都正确。 &#xff08;想要原图留下邮件&#xff0c;我偶尔上来&#xff0c;如果看到会发给你的&#xff09; 1Bill Gates 比尔盖茨2Audrey Hepburn奥黛丽赫本3Charlie Cha…

ant中的table行列不对齐问题,以及换行,隐藏等问题

注意&#xff1a;ant中的table表格&#xff0c;列的宽度如果设置了&#xff0c;那么该列就是设置的宽度&#xff1b;那些没设置宽度的列&#xff0c;列宽&#xff08;总宽度 - 设置的列宽总和&#xff09;/ 未设置的列的个数&#xff0c;即平均宽度&#xff1b; 1.如果表格只是…

MAC OS X10.9.5下成功驱动独立显卡影驰Nvidia GeForce GTX 760大将(4GB)--非公版

我的机器是台式机(自己组装的)&#xff0c;硬件参数如下&#xff1a; 操作系统 Windows 7 旗舰版 64位 SP1 ( DirectX 11 )处理器 英特尔 Core i7-4770K 3.50GHz 四核 主板 华硕 Z87-PRO (英特尔 Haswell) 内存 8 GB ( 金士顿 DDR3 1778MHz ) 主硬…

vue-cli3项目通过vue如何引入第三方js包完成登陆功能

注意&#xff1a;本次登陆&#xff0c;前后端分离&#xff1b;前端通过引入第三方的js包&#xff0c;调用js包里的初始化方法和提交方法完成登陆以及退出&#xff1b; 流程1.引入第三方包 1.1在index.html文件下引入 流程2.完成初始化 在组件的created下完成初始化 问题2.1因…

前端vscode插件合集

工欲善其事必先利其器 安装步骤 . . . . . . . . . 1.中文包Chinese (Simplified) Language Pack for Visual Studio Code 2.自动闭合标签Auto Close Tag 3.同步修改标签Auto Rename Tag 4.高亮代码的回调&#xff0c;括号的区域范围Bracket Pair Colorizer 4.支持多中…

Android卷一全文 第一章 阅读前的准备工作

本章主要内容本章简单介绍Android系统架构、编译环境的搭建以及一些工具的使用。1.1 系统架构 1.1.1 Android系统架构 Android是Google公司推出的一款手机开发平台。该平台本身是基于Linux内核的&#xff0c;图1-1展示了这个系统的架构&#xff1a;图1-1 Android系统架构 从…

web安全字体

webfont解剖 Unicode字体可以包含数以千计字形有四个字体格式&#xff1a; WOFF2, WOFF, EOT, TTF一些字体格式需要使用GZIP压缩 一个web字体是字形的集合&#xff0c;且每个字形是一个描述了一个字母亦或符号的矢量图。 所以&#xff0c;一个字体文件的大小由两个因素决定&…

设置Clover默认进入Windows,按快捷键F8可选择不同的引导

系统情况&#xff1a; Win7 Mac10.9.5 Clover 我要达到的目标是&#xff1a;默认进入Windows系统&#xff0c;如果有需要&#xff0c;可以选择进入其他系统&#xff0c;如Mac OS X 我原以为可以在clover中配置&#xff0c;达到这个目标&#xff0c;可是我经过多次实践&am…

js获取cookie获取不到问题 vue获取cookie以及获取不到问题

1.下载依赖包 npm i js-cookie -S2.在使用cookie的页面上进行引入 import Cookies from js-cookie3.使用 创建一个在整个网站上有效的CookieCookies.set(name, value);创建一个从现在起7天后过期的cookie&#xff0c;在整个站点上有效&#xff1a;Cookies.set(name, value, …