当前位置:
首页 > temp > python入门教程 >
-
Python获取手机4K壁纸,一个入门练手的案例
前言
一. 数据来源分析
- 明确需求, 我们采集网上什么数据内容, 在什么地方
- 分析我们想要高清原图在什么地方有
- 浏览器自带工具: 开发者工具 F12
- 鼠标右键点击 插件 选择 network 刷新网页
- 点击选择 Img 可以直接找到图片地址
- 通过搜索分析, 可以知道, 我们想要图片原图url 就在 图片详情页网页源代码里面
二. 代码大概实现步骤
- 发送请求, 模拟浏览器对于 图片目录页面 发送请求
- 获取数据, 获取服务器返回响应数据
- 解析数据, 提取我们想要数据内容
- 发送请求, 模拟浏览器对于 图片详情页url 发送请求
- 获取数据, 获取服务器返回响应数据
- 解析数据, 提取我们想要数据内容
- 保存数据, 把图片保存文本文件夹
导入模块
import requests
import re
请求数据
url = f'https://m.bcoderss.com/tag/漫画/page/1/'
# 模拟浏览器 --> headers 请求头
headers = {
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.0.0 Safari/537.36'
}
# 发送请求
response = requests.get(url=url, headers=headers)
<Response [200]> 表示请求成功
解析数据, 提取我们想要数据内容
提取详情页url地址
img_info = re.findall('<li><a target="_blank" href="(.*?)" alt="(.*?)" title=".*?">', response.text)
for循环遍历 把列表里面元素 一个一个提取出来
for img, title in img_info:
html_data = requests.get(url=img, headers=headers).text
# 提取原图url地址
img_url = re.findall('<img alt=".*?" title=".*?" src="(.*?)">', html_data)[0]
获取二进制数据
img_content = requests.get(url=img_url).content
替换特殊字符
img_title = title + img_url.split('/')[-1]
img_title = re.sub(r'[\/:*?:<>|]', '_', img_title)
保存数据
with opythonpen('img漫画\\' + img_title, mode='wb') as f:
f.write(img_content)
print(img_url, img_title)
运行代码
出处:https://www.cnblogs.com/qshhl/p/16822491.html
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数