1、准备工作

1 高清壁纸:https://www.36992.com/girls/list-1.html

2 Python环境

Python3.9新特性:
字典“并集”运算符
类型提示的改善
装饰器语法更加灵活
classmethod 支持包装其他描述器
新增模块、函数、方法
Python官网下载:https://www.python.org/

3 PyCharm编译器

优点:
1 )每个文件都有其输出窗口
2 )可以终止进程(只要点下按钮就行)
3 )各种提示超强:
①没用的变量颜色会变灰
②用错了的变量下面会有红色波浪线
③书写提示

4 )索引功能超强,
PyCharm官网下载:https://www.jetbrains.com/pycharm/download/#section=windows

4 requests,lxml库安装

Requests:

打开cmd命令管理器,输入pip install requests,显示如下图则安装成功。

lxml:

打开cmd命令管理器,输入pip install lxml,显示如下图则安装成功。

2 、代码和效果展示

1 >代码


import requests
from lxml import etree'''
Python 交流群:
838 123 629
'''def down_image( page ):print(f'页面{page},开始')headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36'}url = f'https://www.36992.com/girls/list-{page}.html'resp = requests.get(url,headers=headers)resp.encoding = 'gbk'with open('index.html', 'wb') as f:f.write(resp.content)tree = etree.HTML(resp.content)# 页面标签,XPath的高级用法,相对路径node_list = tree.xpath('//li//img')print(len(node_list))sub_url_list = []for node in node_list:srcPath=node.xpath('./@src')[0]# 获取网页路径,加if是规范写法if len(srcPath) > 0:img_url =str(srcPath).replace("pic_360","pic")title = node.xpath('./@alt')[0]sub_url_list.append((img_url, title))# 开始保存图片for sub_url, title in sub_url_list:suffix = sub_url.split('.')[-1]img_content = requests.get(sub_url).contentwith open(f'123/{title}.{suffix}', 'wb') as f:f.write(img_content)f.close()print(f'页面{page},完成')if __name__ == '__main__':for page in range(1,60):down_image(page)

2 >效果

3 、知识点

1 >路径解析

第一页:https://www.36992.com/girls/list-1.html

第二页:https://www.36992.com/girls/list-2.html

规律:url = f’https://www.36992.com/girls/list-{page}.html’

扩展知识点:HTTP协议

2 >审查元素

img:

扩展知识点:HTML

3 > XPath定位

基本概念

1 )绝对路径:绝对路径是指目录下的绝对位置,直接到达目标位置,通常是从盘符开始的路径。

node.xpath(’./a/img/@src’)

优点:解析简单;
缺点:呆板,不能阻止页面变化

2 )相对路径:由这个文件所在的路径引起的跟其它文件的路径关系。

node_list = tree.xpath(’//dd’)
优点:灵活,可以根据元素属性绑定(id,class,层级),不担心,页面变化
缺点:执行时,需要解析,消耗时间。

扩展知识点:XPath关系属性

4 > 自定义函数:def down_image( page ):

1 )函数是组织好的。
2 )可重复使用的。
3 )用来实现单一,或相关联功能的代码段。
4 )函数能提高应用的模块性,和代码的重复利用率。
5 )你已经知道Python提供了许多内建函数,比如print()。
6 )你也可以自己创建函数,这被叫做用户自定义函数。

扩展知识点:类的继承

4.总结

用Python实现一个小功能很简单,只要仔细跟着教程一步步操作,依葫芦画瓢,就可以做到。

粉丝福利

掌握基础知识,可以更快速的帮助你举一反三。

由于篇幅受限,大量跟爬虫相关的,HTTP、web、HTML、自动化的知识,可以用于反爬,反反爬,这里不一一展开了。点击关注,持续更新。

爬虫入门,带你用30行代码爬取高清美女写真,附安装包+源码相关推荐

  1. python爬取付费直播的视频_教你用20行代码爬取直播平台弹幕(附源码)

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. Python爬虫.数据分析.网站开发等案例教程视频免费在线观看 https://space. ...

  2. python获取虎牙弹幕_教你用20行代码爬取直播平台弹幕(附源码)

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. Python爬虫.数据分析.网站开发等案例教程视频免费在线观看 https://space. ...

  3. Python爬虫-带你爬取高清美女图片

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于腾讯云 作者:明天依旧可好 ( 想要学习Python?Python学 ...

  4. html5网易云歌词滚动,30行代码爬取网易云歌词(示例代码)

    需求分析: 利用爬虫获取网易云音乐歌曲的歌词,效果如下: 分析:通过官方的歌词API获取歌词,例如:访问https://music.163.com/#/song?id=1417093533 则会跳转到 ...

  5. pyquery获取不到网页完整源代码_爬虫神器之PyQuery实用教程(二),50行代码爬取穷游网...

    爬虫神器之PyQuery实用教程(二),50行代码爬取穷游网 前言 上篇文章 PyQuery (一) 回顾.今天来介绍具体 PyQuery 的使用方法. 穷游网目标与分析 开始之前,按照之前的套路一步 ...

  6. Python爬虫利用18行代码爬取虎牙上百张小姐姐图片

    Python爬虫利用18行代码爬取虎牙上百张小姐姐图片 下面开始上代码 需要用到的库 import request #页面请求 import time #用于时间延迟 import re #正则表达式 ...

  7. 教你用python实现34行代码爬取东方财富网信息,爬虫之路,永无止境!!

    教你用python实现34行代码爬取东方财富网信息,爬虫之路,永无止境!! 代码展示: 开发环境: windows10 python3.6 开发工具: pycharm weddriver 库: sel ...

  8. python pyquery不规则数据的抓取_爬虫神器之PyQuery实用教程(二),50行代码爬取穷游网...

    爬虫神器之PyQuery实用教程(二),50行代码爬取穷游网 前言 上篇文章 PyQuery (一) 回顾.今天来介绍具体 PyQuery 的使用方法. 穷游网目标与分析 开始之前,按照之前的套路一步 ...

  9. python爬上市公司信息_实战项目 1:5 行代码爬取国内所有上市公司信息

    实战项目 1:5 行代码爬取国内所有上市公司信息 Python入门爬虫与数据分析 在正式开始这门专栏课的学习之前,我们先来看一个简单的爬虫案例.兴趣是最好的老师,当你对爬虫产生兴趣的时候,才会更有动力 ...

最新文章

  1. MySQL优化篇:索引
  2. 解决cvc-complex-type.2.4.a: Invalid content was found starting with element
  3. one of the variables needed for gradient computation has been modified by an inplace operation
  4. java 入门-helloWorld
  5. java代码编译时修改行为_GitHub - niuzhihua/AST_demo: 利用JavaParser框架在编译时修改语法树(源码)的 demo...
  6. 统计每日单量MySQL语句
  7. redis - 基础
  8. 2018 ACM-ICPC World Finals - Beijing
  9. python创建对象_python对象
  10. 多时相地图瓦片简单设想
  11. Git 管理工具 SourceTree 的使用(上手简单,不熟悉git命令的开发者必用)
  12. windows驱动加载顺序
  13. 完美电脑主机一拖二,让你夫妻不再抢电脑,一台主机两人独立玩
  14. 社会工程学之黑客番外——密码学
  15. BPMN 2.0规范
  16. APP开发:线上教育APP盈利模式分析
  17. C语言画圣诞树源码(树界降临)
  18. 小程序实现canvas添加图文
  19. vue3需要注意的小问题
  20. 使用Apple设备的看过来,你的Apple账户为什么莫名其妙地被扣款!

热门文章

  1. python爬取墨迹天气
  2. 华为暑假实习生面试经历
  3. 渗透测试php靶场,渗透测试靶场初体验
  4. PC DMIS三坐标产品测量编程视频教程+资料
  5. DV通配符证书申请方式及特点
  6. code-push常用命令
  7. 域名服务是什么意思?
  8. 【JavaLearn】#(22)jQuery介绍、选择器、事件、动画、DOM编程、操作CSS、表单验证
  9. php api视频教程,PHP开发APP接口视频教程
  10. 前端学习日志-7-浏览器