Python 爬虫之实现爬取图片并下载到自己创建的文件夹内

您所在的位置:网站首页 图片怎么放在文件夹里 Python 爬虫之实现爬取图片并下载到自己创建的文件夹内

Python 爬虫之实现爬取图片并下载到自己创建的文件夹内

2024-07-17 08:09| 来源: 网络整理| 查看: 265

还是先给出代码 再给出要点解析 最后加上一点问题分析 下面 开始对 本次 米切尔 的 讲解

import re import os import requests url = "https://www.你想要的爬取的网站.com" headers = { 'user-agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36' } web = requests.get(url=url, headers=headers) halunu = re.findall('img width="701" height="1024" src="(.*?).x-oss', web.text) print(len(halunu))# 图片地址的个数 path='E:\\※代理桌面\\75' os.mkdir(path) for i in range(len(halunu)): picture = requests.get(halunu[i]) with open(path+'\{}.jpg'.format(i + 1), 'wb') as f: f.write(picture.content) print("第{}张".format(i + 1)) print("^灬^bingo^灬^") 要点解析 需要的模块 import re #正则表达式 我们在选择图片的地址是 需要用到 import os #操作文件所需要的包 import requests #取得 爬取的数据 第一步 url = "https://www.你想要的爬取的网站.com" #我是不会暴露我的 个人爱好 的 headers = { 'user-agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36' }# 反爬 的 最简单的基础 模仿浏览器打开网页 而不是直接用Python解析器 打开 #以上两点 都可以 在 (鼠标右键-检查-network-name 里找到 ->谷歌浏览器 我这次用的是360) web = requests.get(url=url, headers=headers) #获取网页的 所有内容 获取图片的地址

分析完自己想要的 内容后 用正则表达式获取(一定要认真分析 网页源代码 正则 比 bf4 和 lxml要简单的多 正常情况都可以 获取的)

halunu = re.findall('img width="701" height="1024" src="(.*?).x-oss', web.text) #获取 自己想要内容的链接 创建文件夹 print(len(halunu)) path='E:\\※代理桌面\\75'#想要创建文件夹的地址 我用的是绝对地址 os.mkdir(path)#用 os库来完成创建 将图片下载到本地 for i in range(len(halunu)):# 一张一张 地 来 picture = requests.get(halunu[i])#永get 请求获取 链接内的所有内容 with open(path+'\{}.jpg'.format(i + 1), 'wb') as f: f.write(picture.content)#设置图片 地址 和 名称 以及 后缀名 并将链接内的 内容 存入图片 # 每打开一张 图片 一定要关闭 f.close() 我为了省事 用了 with as 语句(会自动关闭) 可能出现的问题 re.findall()

findall请求 的第二个参数 是文本文件 所有记得加 .text 否则 会 报错

halunu = re.findall('img width="701" height="1024" src="(.*?).x-oss', web.text) 打开文件的模式

模式选择 切记 要用二进制的 格式来读取和写入 就是’wb’后面的这个 ‘b’ 图片就是一个一个 的像素点嘛 不然也会报错

with open(path+'\{}.jpg'.format(i + 1), 'wb') as f:

最后 还是 may you have a good day



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3