python 爬虫 美女_Python3爬取美女妹子图片

python 爬虫 美女_Python3爬取美女妹子图片1.效果图先看效果图,哈哈哈,是不是很有学习的欲望了,开干。爬图的数量根据你输入的页数确定,纯洁的我只是适当的爬了几张学习技术。效果图2.爬取妹子图片准备工作Python3.xPycharm等随意一款编辑器os库、requests库、pyquery库2.1安装库2.1.1cmd安装方式打开cmd控制台打开cam控制台在控制台分别输入以下代码:pipinstallrequestspip…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1. 效果图

先看效果图,哈哈哈,是不是很有学习的欲望了,开干。

爬图的数量根据你输入的页数确定,纯洁的我只是适当的爬了几张学习技术。

python 爬虫 美女_Python3爬取美女妹子图片

效果图

2. 爬取妹子图片准备工作

Python3.x

Pycharm等随意一款编辑器

os库、requests库、pyquery库

2.1 安装库

2.1.1 cmd安装方式

打开cmd控制台

python 爬虫 美女_Python3爬取美女妹子图片

打开cam控制台

在控制台分别输入以下代码:

pip install requests

pip install pyquery

python 爬虫 美女_Python3爬取美女妹子图片

安装requests库

python 爬虫 美女_Python3爬取美女妹子图片

安装pyquery库

其中,os库为Python3内置库,不需要安装,至此,准备工作完成。

2.1.2 pycharm安装方式

打开pycharm>file>settings

python 爬虫 美女_Python3爬取美女妹子图片

打开设置

python 爬虫 美女_Python3爬取美女妹子图片

搜索库

python 爬虫 美女_Python3爬取美女妹子图片

安装库

将所需库安装即可,至此,准备工作完成。

3. 开始编程

3.1 主函数

python 爬虫 美女_Python3爬取美女妹子图片

目标

然后,观察规律:

第一页URL为http://www.umei.cc/p/gaoqing/cn

点下一页URL为http://www.umei.cc/p/gaoqing/cn/2.htm

再点下一页URL为http://www.umei.cc/p/gaoqing/cn/3.htm

python 爬虫 美女_Python3爬取美女妹子图片

观察规律

。。。。。。

然后再点击第一页发现网址变成了http://www.umei.cc/p/gaoqing/cn/1.htm

所以,我们就得到了屠龙技。代码如下:

# 控制代码运行过程,在文件作为脚本时才会被执行,而import到其他脚本中是不会被执行的

if __name__ == ‘__main__’:

z = 1

url = ‘http://www.umei.cc/p/gaoqing/cn/’ # 初始目标URL

for i in range(z, z+1): # z+1可以换成z+n (n=1,2,3……)

url1 = url+str(i)+’.htm’

print(url1)

get_url1(url1) # 调用get_url1函数获取图片

3.2 编写图片抓取函数get_url1

然后我们还有找规律,我们点开第一页第一套图

python 爬虫 美女_Python3爬取美女妹子图片

目标

python 爬虫 美女_Python3爬取美女妹子图片

链接

为了简便,我们就爬取每页各个套图里的第一张图片,当然也可以爬取更多的图。我们可以发现各个套图里的第一张图片URL根本没有规律,所以,我们这是就要借助pyquery网页解析库啦。

我用的是谷歌浏览器,打开开发者工具,根据图片找到套图里第一张图片的链接,可以多找几张,你会发现他们好像有规律,我们只要搞到红框框里的链接就好啦。

python 爬虫 美女_Python3爬取美女妹子图片

开发者工具

python 爬虫 美女_Python3爬取美女妹子图片

链接

python 爬虫 美女_Python3爬取美女妹子图片

链接

所以函数get_url1代码如下

def get_url1(url):

# 模拟浏览器,不用改,几乎固定

headers = {

‘User-Agent’: ‘Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) ‘

‘AppleWebKit/537.36 (KHTML, like Gecko)’

‘ Chrome/58.0.3029.110 Safari/537.36’

}

urllib3.disable_warnings() # 预警作用

html = requests.get(url, headers=headers, verify=False).text # 获得elements里的所有代码

doc = pq(html) # 解析代码

a = doc(‘.TypeList .TypeBigPics’)

for item in a.items():

b = item.attr(‘href’) # 获得herf里的所有代码

# print(b,’\n’,’\n’)

html2 = requests.get(b,headers = headers,verify = False).text

doc2 = pq(html2)

c = doc2(‘.ImageBody img’) # 获得ImageBody img里的代码

for item2 in c.items():

d = item2.attr(‘src’) # 获得src里的链接

print(d)

# 保存文件

root = “D://pics22223//” # 根目录

path=root+d.split(‘/’)[-1]

# 根目录加上url中以反斜杠分割的最后一部分,即可以以图片原来的名字存储在本地

try:

if not os.path.exists(root): # 判断当前根目录是否存在

os.mkdir(root) # 创建根目录

if not os.path.exists(path): # 判断文件是否存在

r=requests.get(d)

with open(path,’wb’)as f:

f.write(r.content)

f.close()

print(“文件保存成功”,’\n’,’\n’)

else:

print(“文件已存在”)

except:

print(“爬取失败”)

4. 完整代码

# -*- coding: utf-8 -*-

“””

Created on Sun Dec 30 15:38:25 2018

@author: 球球

“””

import requests

import os

from requests.packages import urllib3

from pyquery import PyQuery as pq

def get_url1(url):

headers = {

‘User-Agent’: ‘Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) ‘

‘AppleWebKit/537.36 (KHTML, like Gecko)’

‘ Chrome/58.0.3029.110 Safari/537.36’

}

urllib3.disable_warnings()

html = requests.get(url, headers=headers, verify=False).text

doc = pq(html)

a = doc(‘.TypeList .TypeBigPics’)

for item in a.items():

b = item.attr(‘href’)

# print(b,’\n’,’\n’)

html2 = requests.get(b,headers = headers,verify = False).text

doc2 = pq(html2)

c = doc2(‘.ImageBody img’)

for item2 in c.items():

d = item2.attr(‘src’)

print(d)

root = “D://pics22223//” # 根目录

path=root+d.split(‘/’)[-1]

# 根目录加上url中以反斜杠分割的最后一部分,即可以以图片原来的名字存储在本地

try:

if not os.path.exists(root): # 判断当前根目录是否存在

os.mkdir(root) # 创建根目录

if not os.path.exists(path): # 判断文件是否存在

r=requests.get(d)

with open(path,’wb’)as f:

f.write(r.content)

f.close()

print(“文件保存成功”,’\n’,’\n’)

else:

print(“文件已存在”)

except:

print(“爬取失败”)

if __name__ == ‘__main__’:

z = 1

url = ‘http://www.umei.cc/p/gaoqing/cn/’

for i in range(z, z+1):

url1 = url+str(i)+’.htm’

print(url1)

get_url1(url1)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193832.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ubuntu部署nginx_nginx服务无法启动

    ubuntu部署nginx_nginx服务无法启动安装命令:sudoapt-getinstallnginx默认的安装目录/etc/nginx下启动命令:/etc/init.d/nginxstart启动成功!浏览器访问127.0.0.1

    2026年1月24日
    3
  • Java实现 整型转字符串,位数不足时可以自动补0

    Java实现 整型转字符串,位数不足时可以自动补0代码publicclassStringUtil{/***整型转字符串并格式化*@paramminSize最小大小*@paramseparator分隔符*@paramintNums需要转化的整数*@return字符串*/publicstaticStringformatInt(intminSize,Stringseparator,int…intNums){

    2022年10月18日
    2
  • win10 命令行 关机(如何用命令提示符重启电脑)

    参考:电脑怎么用命令行关机、windows系统使用cmd命令关机电脑卡了,点不了关机的按钮,又不想强制关机,就用了命令行,好用!!!步骤:1)使用“windows+R”打开运行会话框,输入“cmd”,点击确定进入命令行。2)直接在命令行输入:shutdown/p,然后回车,就会立即关机,完事!太方便了!注:以下来自参考文章windows关机命令为shutdown,不过直接输入shutdown无法关机,需要接参数-s,执行后,电脑将会在1分钟后关机。…

    2022年4月18日
    320
  • devtools安装_检测devtools

    devtools安装_检测devtoolsvue-devtools是一款基于chrome浏览器的插件,用于调试vue应用。安装:chrome商店直接安装。手动安装步骤:找到vue-devtools的github项目,并将其clone到本地:gitclonehttps://github.com/vuejs/vue-devtools.git安装项目所需要的npm包:npminstall编译项目文件:npmrunbuild添加至chrome浏览器:地址(“chrome://extensions/”)进入扩展程序页面,点击“加载

    2022年9月1日
    4
  • Java解析XML字符串格式「建议收藏」

    Java解析XML字符串格式「建议收藏」Java解析XML字符串格式代码示例结果展示代码示例publicstaticvoidmain(String[]args){StringparseStr=null;StringreturnMsg=”<?xmlversion=\”1.0\”encoding=\”gb2312\”?>”+”<Resultxmlns=\”http://www.fiorano.com/fesb/activity/DB

    2022年6月4日
    148
  • VMware虚拟机 桥接模式 无法上网 校园网「建议收藏」

    VMware虚拟机 桥接模式 无法上网 校园网「建议收藏」VMware桥接模式桥接模式就是将主机网卡与虚拟机虚拟的网卡利用虚拟网桥进行通信。在桥接的作用下,类似于把物理主机虚拟为一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,物理主机也同样插在这个交换机当中,所以所有桥接下的网卡与网卡都是交换模式的,相互可以访问而不干扰。在桥接模式下,虚拟机ip地址需要与主机在同一个网段,如果需要联网,则网关与DNS需要与主机网卡一致。无法上网的检查步骤1.VMware中虚拟网络编辑器设置桥接网卡在“编辑”——“虚拟网络编辑器”里进.

    2022年6月7日
    128

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号