Python3爬取妹子图——爬虫&下载网络图片

本文介绍了一个使用Python编写的简单脚本,该脚本利用BeautifulSoup和urllib等库从指定的图片网站抓取图片资源,并将它们保存到本地。通过解析网页源代码,脚本能够识别出所有.jpg格式的图片链接并进行下载。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


准备工具:

Python 3.4.3
图片网站
import re
import time
from bs4 import BeautifulSoup
from urllib.request import urlopen, urlretrieve

def unzip(data, charset='utf8'):
    import gzip
    return gzip.decompress(data).decode(charset)

def getHtml(url, charset='utf8'):
    print(url)
    resp = urlopen(url)
    encoding = resp.info().get('Content-Encoding')
    if 'gzip' == encoding:
        return unzip(resp.read(), charset)
    return resp.read().decode(charset)

def getImg(url):
    html = getHtml(url)
    soup = BeautifulSoup(html, 'html.parser')
    imgs = soup.findAll(name="img", attrs={"src":re.compile("\.jpg")})
    for img in imgs:
        imgUrl = img['src']
        print(imgUrl)
        urlretrieve(imgUrl, '%s.jpg'%time.time())

def main():
    getImg('http://www.mmjpg.com/')
if __name__=='__main__':
    main()

贴个执行结果图:(逃ing...)



转载请注明来源【 IT黑名单
好的,这是一个非常常见的 Python 爬虫任务。我可以为您提供一些基本的思路和代码示例来实现这个功能。 首先,您需要使用 Python 的 requests 库来获取网页内容,以及使用 BeautifulSoup 库来解析 HTML 页面。您还需要使用 Python 的 os 和 urllib 库来创建目录和保存图片。 以下是一个基本的示例代码,可以爬取指定网页中的所有图片,并将它们保存在本地文件夹中: ```python import requests from bs4 import BeautifulSoup import os import urllib # 定义要爬取的网页 URL 和本地保存路径 url = 'http://example.com' save_folder = 'images' # 创建本地保存路径 if not os.path.exists(save_folder): os.makedirs(save_folder) # 发送请求并解析 HTML 页面 response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') # 查找所有 img 标签并下载图片 for img in soup.find_all('img'): img_url = img.get('src') if img_url.startswith('http'): img_name = img_url.split('/')[-1] img_path = os.path.join(save_folder, img_name) urllib.request.urlretrieve(img_url, img_path) ``` 这段代码首先定义了要爬取的网页 URL 和本地保存路径,然后创建了本地保存路径。接下来,使用 requests 库发送请求并使用 BeautifulSoup 库解析 HTML 页面。然后,查找所有 img 标签并下载图片,将其保存在本地指定路径中。 需要注意的是,这个示例代码只能下载图片,如果您需要下载其他类型的文件,可能需要使用不同的方式来处理文件名和文件类型。同时,注意网站的版权问题,不要下载未经授权的文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值