用python爬取某个图片网站的图片

这篇具有很好参考价值的文章主要介绍了用python爬取某个图片网站的图片。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、爬取单张图片

# 爬取单张图片
import requests  # 导入requests库

url = "https://scpic.chinaz.net/files/pic/pic9/202112/hpic4875.jpg"  # 图片地址
response = requests.get(url)  # 获取图片
with open("img/test1.jpg", "wb") as f:  # wb:写入二进制文件
    f.write(response.content)  # 写入图片
print("图片下载完成")

2、爬取批量图片

# 爬取批量图片
import requests  # 导入requests库
import os  # 导入os库
from bs4 import BeautifulSoup  # 从bs4库中导入BeautifulSoup

name_path = 'img2'
if not os.path.exists(name_path):  # 判断文件夹是否存在
    os.mkdir(name_path)  # 创建文件夹


def getUrl():
    url = "https://sc.chinaz.com/tupian/gudianmeinvtupian.html"  # 图片地址
    response = requests.get(url)
    img_txt = BeautifulSoup(response.content, "html.parser")  # 解析网页
    find = img_txt.find("div", attrs={'class': 'tupian-list com-img-txt-list'})  # 查找图片
    find_all = find.find_all("div", attrs={'class': 'item'})  # 查找所有图片
    for i in find_all:
        url = 'https:' + i.find('img').get('data-original')  # 获取图片地址
        name = i.find('a').text  # 获取图片名字
        # print(name, url)
        try:
            getImg(url, name)  # 调用getImg方法
        except:  # 相当于java中的catch
            print("下载失败");
            continue  # 如果下载失败,跳过


def getImg(ImageUrl, ImageName):
    response = requests.get(ImageUrl).content  # 获取图片
    with open(f'{name_path}/{ImageName}.jpg', 'wb') as f:  # 保存图片,wb表示写入二进制文件
        f.write(response)
    print(ImageName, "下载完成")


if __name__ == '__main__':
    getUrl()

3、如果一个网页的图片很多,可以进行分页爬取文章来源地址https://www.toymoban.com/news/detail-705062.html

# 分页爬取图片
import requests  # 导入requests库
import os  # 导入os库
from bs4 import BeautifulSoup  # 从bs4库中导入BeautifulSoup

name_path = 'img2'
if not os.path.exists(name_path):  # 判断文件夹是否存在
    os.mkdir(name_path)  # 创建文件夹

Sum = 0  # 用于记录下载的图片数量


def getUrl(num):
    if num == '1':  # 第一页特殊处理
        url = "https://sc.chinaz.com/tupian/gudianmeinvtupian.html"
    else:
        url = f"https://sc.chinaz.com/tupian/gudianmeinvtupian_{num}.html"  # 图片地址
    response = requests.get(url)
    img_txt = BeautifulSoup(response.content, "html.parser")  # 解析网页
    find = img_txt.find("div", attrs={'class': 'tupian-list com-img-txt-list'})  # 查找图片
    find_all = find.find_all("div", attrs={'class': 'item'})  # 查找所有图片
    for i in find_all:
        url = 'https:' + i.find('img').get('data-original')  # 获取图片地址
        name = i.find('a').text  # 获取图片名字
        # print(name, url)
        try:
            getImg(url, name)  # 调用getImg方法
        except:  # 相当于java中的catch
            print("下载失败");
            continue  # 如果下载失败,跳过


def getImg(ImageUrl, ImageName):
    response = requests.get(ImageUrl).content  # 获取图片
    with open(f'{name_path}/{ImageName}.jpg', 'wb') as f:  # 保存图片,wb表示写入二进制文件
        f.write(response)
    print(ImageName, "下载完成")
    global Sum
    Sum += 1


if __name__ == '__main__':
    num = input_num = input("请输入要爬取的总页数:[1-7]\n")
    if (int(num) > 7):
        print("输入有误,最大为7")
        exit()
    else:
        for i in range(1, int(num) + 1):
            getUrl(num)
            print(f"第{i}页爬取完成")
        print(f"共下载{Sum}张图片")

到了这里,关于用python爬取某个图片网站的图片的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python 爬虫:如何用 BeautifulSoup 爬取网页数据

    在网络时代,数据是最宝贵的资源之一。而爬虫技术就是一种获取数据的重要手段。Python 作为一门高效、易学、易用的编程语言,自然成为了爬虫技术的首选语言之一。而 BeautifulSoup 则是 Python 中最常用的爬虫库之一,它能够帮助我们快速、简单地解析 HTML 和 XML 文档,从而

    2024年02月04日
    浏览(15)
  • python爬虫实战 scrapy+selenium爬取动态网页

    最近学习了scrapy爬虫框架,想要找个目标练练手。由于现在很多网页都是动态的,因此还需要配合selenium爬取。本文旨在记录这次学习经历,如有疑问或不当之处,可以在评论区指出,一起学习。 对scrapy不了解的同学可以阅读这篇文章 爬虫框架 Scrapy 详解,对scrapy框架介绍的

    2024年02月07日
    浏览(36)
  • Python爬虫|使用Selenium轻松爬取网页数据

    1. 什么是selenium? Selenium是一个用于Web应用程序自动化测试工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作浏览器一样。支持的浏览器包括IE,Firefox,Safari,Chrome等。 Selenium可以驱动浏览器自动执行自定义好的逻辑代码,也就是可以通过代码完全模拟成人类使用

    2024年02月04日
    浏览(14)
  • 初学python爬虫学习笔记——爬取网页中小说标题

    一、要爬取的网站小说如下图 二、打开网页的“检查”,查看html页面 发现每个标题是列表下的一个个超链接,从183.html到869.html 可以使用for循环依次得到: 三、具体代码如下: 第一次学习爬虫,能得出查询结果,心中还是无限的高兴。 不过,还是发现的很多,比如for循环

    2024年02月09日
    浏览(18)
  • Python爬虫:如何使用Python爬取网站数据

    更新:2023-08-13 15:30 想要获取网站的数据?使用Python爬虫是一个绝佳的选择。Python爬虫是通过自动化程序来提取互联网上的信息。本文章将会详细介绍Python爬虫的相关技术。 在使用Python爬虫之前,我们需要理解网络协议和请求。HTTP是网络传输的重要协议,它是在Web浏览器和

    2024年02月13日
    浏览(13)
  • Python应用开发——爬取网页图片

    当我们需要从网页上面下载很多图片的时候,一个一个手动保存实在是太累人了。那么有没有批量下载的办法呢? 答案是有的,Python爬虫就可以完美的做到这一点,而且作为一个Python的初学者,我可以很负责任的告诉你,这门语言入门挺简单的,特别是对于那些有其他编程语

    2024年02月02日
    浏览(15)
  • 轻松爬取网页数据:低代码&零编程技巧的自动化爬虫神器!

    在以前的文章中,我们学习了通过playwright+python+requests可以实现绕过浏览器鉴权进行接口请求。 在曾经的一次数据爬取的时候,我尝试去获取Boss直聘的岗位信息,可是很不巧,boss直聘的反爬机制把我的IP直接封了,妙啊。 在这里给大家推荐一款工具:亮数据。 他可以使用真

    2024年02月03日
    浏览(12)
  • 【python爬虫】—图片爬取

    从https://pic.netbian.com/4kfengjing/网站爬取图片,并保存 获取待爬取网页 获取所有图片,并下载 爬取结果展示

    2024年02月10日
    浏览(13)
  • Python爬虫 爬取图片

    在我们日常上网浏览网页的时候,经常会看到一些好看的图片,我们就希望把这些图片保存下载,或者用户用来做桌面壁纸,或者用来做设计的素材。 我们最常规的做法就是通过鼠标右键,选择另存为。但有些图片鼠标右键的时候并没有另存为选项,还有办法就通过就是通过

    2024年02月13日
    浏览(11)
  • [爬虫篇]Python爬虫之爬取网页音频_爬虫怎么下载已经找到的声频

    audio_DATA_get = requests.get(url=audio_DATA,headers=headers) audio_DATA_get_text = audio_DATA_get.text audio_DATA_download_url = re.findall(‘“src”:“(.*?)”’,audio_DATA_get_text) print(audio_DATA_download_url) download_data_url = audio_DATA_download_url[0] try: open_download_data_url = urllib.request.urlopen(download_data_url) except: print(downlo

    2024年04月22日
    浏览(10)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包