简易的python爬虫用于爬取图片

学习目标:简易的python爬虫

  • 利用这种方法来简单练习爬虫和入门第三方库的使用,os和requests

学习内容:利用requests库和os库创建爬取图片的爬虫

利用requests库中的get方法

利用os库中os.path.exists方法和os.mkdir()方法

介绍os.path.exists方法,查看电脑的路径是否存在,如果存在返回true,不存在返回false。

os.mkdir()方法,在电脑中创建目录。

学习产出:直接放我的代码

import os
import requests
kv={"user-agent":"Mozilla/5.0"}#标头
url='https://c-ssl.duitang.com/uploads/blog/202009/03/20200903051114_b87db.jpg'#图片地址
root=r'C:\Users\祥子\Pictures\Saved Pictures'
path=root+url.split('/')[-1]#个人要保存的文件路径
try:
    if not os.path.exists(root):#判断是否存在这个根目录
        os.mkdir(root)
    if not os.path.exists(path):
        r=requests.get(url,headers=kv)#访问网站
        with open(path,'wb') as f:
            f.write(r.content)#将其转化为二进制
            f.close()
            print('保存成功')
    else:
        print('保存失败')
except:
    print('爬取失败')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python爬虫抓取图片通常涉及使用一些网络请求库如`requests`,以及图像处理库例如`PIL`或`io`。以下是一个简单的步骤概述: 1. **导入必要的库**: - `requests`用于发送HTTP请求获取网页内容。 - `BeautifulSoup`或`lxml`处理HTML文档,提取需要的图片链接。 - `os`用于文件操作,比如保存图片到本地。 2. **发送GET请求**: 使用`requests.get(url)`获取目标网页的HTML源码。 3. **解析HTML**: 使用BeautifulSoup解析HTML,通过查找`<img>`标签找到图片的`src`属性(URL)。 4. **下载图片**: 对于每个找到的图片URL,使用`response.content`获取二进制数据,然后保存到本地。如果图片有特定的名称,可以使用`url.split('/')[-1]`获取文件名。 5. **错误处理**: 需要处理可能出现的网络异常、权限问题等,并确保文件保存路径正确。 示例代码片段: ```python import requests from bs4 import BeautifulSoup import os def download_images(url): response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') img_tags = soup.find_all('img') for img_tag in img_tags: img_url = img_tag['src'] file_name = img_url.split('/')[-1] # 创建图片保存目录(若不存在) if not os.path.exists('images'): os.makedirs('images') # 下载并保存图片 try: with open(os.path.join('images', file_name), 'wb') as f: f.write(requests.get(img_url).content) print(f'Successfully downloaded {file_name}') except Exception as e: print(f'Error downloading {file_name}: {e}') # 调用函数,传入你想爬取图片的网站地址 download_images('http://example.com') ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值