python爬取图片(根据用户需求输入想爬取的内容及页数)!

用户想让我用Python写一个功能强大的爬虫,至少要有图片爬取的功能 不过用户没有指定具体的网站,所以我应该提供一个通用的示例,同时提醒用户注意遵守网站的robots.txt和法律法规。总结下来,步骤应该是:发送请求获取页面,解析图片链接,下载并保存图片。另外,反爬策略也是需要考虑的,比如设置请求间隔时间,使用代理,处理Cookies等。不过对于基本爬虫,可能先不加这些,但提醒用户尊重网站的规则,避免频繁请求。最后,代码的结构要清晰,有注释,方便用户理解每一步的作用。同时,测试一下示例代码是否能正常运行,比如用Unsplash这样的允许爬取的网站,或者使用示例网站。 阅读详情

本次小编向大家介绍的是根据用户的需求输入想爬取的内容及页数。

主要步骤:

1.提示用户输入爬取的内容及页码。
2.根据用户输入,获取网址列表。
3.模拟浏览器向服务器发送请求,获取响应。
4.利用xpath方法找到图片的标签。
5.保存数据。
代码用面向过程的形式编写的。

关键字:requests库,xpath,面向过程

现在就来讲解代码书写的过程:
1.导入模块

import parsel  # 该模块主要用来将请求后的字符串格式解析成re,xpath,css进行内容的匹配
import requests  # 爬虫主要的包
from urllib.request import urlretrieve  # 本文用来下载图片
import os  # 标准库,本文用来新建文件夹

每个模块的作用都已经备注了。
2.提示用户输入内容和页数

if not os.path.exists("王一博图片"):
    os.mkdir("王一博图片")  # 判断有没有该文件夹,如果没有就创建改文件夹
k = input("请输入你想搜索的关键字:")
num = int(input("请输入你想搜索的页数:"))


3.准备好url和header

header = {"user-agent":
              "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Mobile Safari/537.36"
          }
base_url = "https://www.duitang.com/search/?kw=" + k + "&type=feed#!s-p"
title_url = []
n = 0

user-agent是服务器识别浏览器的重要参数,我们就用这个来蒙骗服务器,user-agent在浏览器里可以找到


那么现在我们就关注右边


这样header就找到了,注意要以字典的形式
4.发送请求、

for i in range(num):
    title_url = base_url + str(i)
    respons = requests.get(title_url, headers=header).text
    html = parsel.Selector(respons)  # 解析数据 -- parsel  转化为Selector对象,Selector对象具有xpath的方法,能够对转化的数据进行处理
    pic_url = html.xpath('//div[@class="mbpho"]/a/img/@src').extract()

一切准备就绪后,就可以发送请求了。request.get.text返回的是网页的源代码,然后将源代码转换为Selector对象,再通过xpath的方法找到图片的网址。


xpath的方法可以参考:https://zhuanlan.zhihu.com/p/29436838
5.保存数据
获取图片的图片的链接后,我们就可以保存了。

    for url in pic_url:
        n = n + 1
        file_path = "王一博图片" + '/' + str(n)+".jpg"
        urlretrieve(url, file_path)  # 下载图片,具体的用法可以去搜索下,很简单的
        print("第%d张图片下载成功" % n)

注意:这里的for循环是在上面的循环里嵌套的。
最后来看看全部的代码吧!

import parsel  # 该模块主要用来将请求后的字符串格式解析成re,xpath,css进行内容的匹配
import requests
from urllib.request import urlretrieve  # 本文用来下载图片
import os  # 标准库,本文用来新建文件夹

if not os.path.exists("王一博图片"):
    os.mkdir("王一博图片")  # 判断有没有该文件夹,如果没有就创建改文件夹
k = input("请输入你想搜索的关键字:")
num = int(input("请输入你想搜索的页数:"))
header = {"user-agent":
              "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Mobile Safari/537.36"
          }
base_url = "https://www.duitang.com/search/?kw=" + k + "&type=feed#!s-p"
title_url = []
n = 0
for i in range(num):
    title_url = base_url + str(i)
    respons = requests.get(title_url, headers=header).text
    html = parsel.Selector(respons)
    pic_url = html.xpath('//div[@class="mbpho"]/a/img/@src').extract()
    # print(pic_url)
    for url in pic_url:
        n = n + 1
        file_path = "王一博图片" + '/' + str(n)+".jpg"
        urlretrieve(url, file_path)  # 下载图片,具体的用法可以去搜索下,很简单的
        print("第%d张图片下载成功" % n)

然后你就发现多了一个王一博的文件夹了,点开就可以看见王一博的帅照了。

那么你学会了吗  如需获取源码点击源码

 

python爬取百度图片 python爬取百度图片 学习阶段 直接上源码,若想知其然知其所以然,请慢慢研究!! # coding=utf-8 import urllib import urllib.request from urllib.parse import quote import re import os headers = { "User-Agent": "Mozilla/5.0 (Window... 阅读详情

相关推荐

爬取某个微博用户的所有微博内容及照片

ajax爬取某个微博用户所有微博内容及图片教程

<Hunter> 7586

【Python爬虫】批量爬取网页的图片&制作数据集

由于Python拥有强大且丰富的类库,语法简单,效率高而被广泛运用于网络爬虫,很多人都是通过爬虫认识Python。因为小编最近正在做目标识别相关的项目,所以需要大量的训练样本集,从网页上一个个下载又太慢,所以就想到编写一个程序实现网页图片的批量下载。

Remote Sensing迷途小书童 5860

python 根据搜索词爬虫爬取百度图片

项目需要写了一个根据搜索词爬取百度图片的程序,主要实现以下多个功能: 1、指定爬取搜索词; 2、指定开始爬取的页数和爬取的总页数; 3、对爬取成功的图片进行编号,并输出爬取未成功图片的原因; 4、将每次爬取行动记录于txt文档中,留档查看。 代码如下: # -*- coding:utf-8 -*- import requests import json import re import os import urllib import lxml im...

JZJZ73的博客 610

python爬取图片(根据用户需求输入想爬取的内容及页数)

本次小编向大家介绍的是根据用户的需求输入想爬取的内容及页数。 主要步骤: 1.提示用户输入爬取的内容及页码。 2.根据用户输入,获取网址列表。 3.模拟浏览器向服务器发送请求,获取响应。 4.利用xpath方法找到图片的标签。 5.保存数据。 代码用面向过程的形式编写的。 关键字:requests库,xpath,面向过程 现在就来讲解代码书写的过程: 1.导入模块 import parsel # 该模块主要用来将请求后的字符串格式解析成re,xpath,css进行内容的匹配 import reques

qq_48657881的博客 4627

爬取百度图片

最开始,我们想要爬取图片,首先需要打开百度图库,然后在搜索栏中输入自己想要的图片(比如说壁纸)。接着右键检查,点击网络:起初可能没有名称信息,刷新界面就可以了。打开信息,查看标头内容可以看到请求URL为:复制这串URL,然后在浏览器中打开这个就是我们搜索的壁纸图片的网页内容。怎么找到图片的URL呢?在上述内容中,找到data,可以发现里面每隔一个aiEditData,下面代码的形式是一样的,就相当于一张图片。

weixin_54143563的博客 1943

用 Python 的 playwright 库 爬取 Pexels 网站的图片

想象一下,你正在做一份与鲜花相关的 PPT,或者你是一名电商运营,需要一批精美的花卉图片来装点你的商品页面。然而,每次手动去 Pexels 找图、下载、整理,简直太费时间了!🙄 有没有办法用 Python 实现自动下载呢?当然有!今天我们就来聊聊如何使用playwright,一个强大的 Python 爬虫库,来批量爬取 Pexels 网站上关于鲜花的高清图片,让你的办公效率直接起飞 🚀。了解了playwright的基本用法,包括如何打开网页、输入搜索内容、提取数据。

奔跑的蜗牛 1890

python爬虫环境配置及Scrapy爬虫框架使用

Python爬虫是一种利用Python编程语言编写的自动化脚本,旨在从互联网上抓取或收集数据。这些数据可以来自各种来源,如网页、API(应用程序编程接口)等。爬虫通过模拟用户在浏览器中的操作(如发送HTTP请求、解析HTML页面等),自动访问目标网站并提取所需信息。

你华还是你华 1609

Python 爬虫 之 根据图片网址爬取图片

Python 爬虫 之 根据图片网址爬取图片 目录 Python 爬虫 之 根据图片网址爬取图片 一、简单介绍 二、实现原理 三、注意实现 四、实现步骤 五、关键代码 一、简单介绍 Python是一种跨平台的计算机程序设计语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开...

仙魁XAN 6215

Python---爬虫---爬取万余张图片,分门别类

date:2021/01/16 author:eihouwang 目标网址:http://www.netbian.com/ 开发环境:pycharm2020.3.2、Python3.8 用到的模块(库):os,re,requests,urllib,time 整体思路: 1、获取主界面各个分类标签,并生成对应的文件夹 比如分类标签:rili,dongman,fengjing等 2、进入单个标签单独一页,获取单页图片网页列表 比如松林公路图片,帅气美女图片,美丽冬天图片等图片的网址(整个网址图片并不是高清图片.

eihouwang的博客 703

Element Server Suite社区版Helm部署:私有Matrix聊天服务器快速搭建指南

在云原生和微服务架构日益普及的今天,容器化部署已成为现代应用交付的标准范式。Kubernetes作为容器编排的事实标准,通过声明式配置和自动化管理,极大地简化了复杂分布式系统的部署与运维。Helm作为Kubernetes的包管理器,通过预定义的Chart模板,将应用及其依赖打包,实现了真正的“一键部署”,显著提升了部署效率和可重复性。这种技术组合的价值在于,它让开发者能够专注于业务逻辑,而非底层基础设施的复杂性,尤其适用于需要快速搭建、易于维护的服务场景。Element Server Suite Commu

weixin_42610010的博客 301

调用D3D11硬解码和渲染VideoProcessor版本

在https://blog.youkuaiyun.com/robothn/article/details/78781321一文中使用shader来显示FFMPEG硬解码后的YUV420P,本文调用D3D11的videoprocessor来进行图像空间变换和尺寸变换,取得了较好的效果。 1.初始化D3D11设备、videodevice等数据结构 FFMPEG调用D3D11硬解码,获取其对应的device,videodevice。。。 FFMPEG使用av_hwdevice_find_type_by_name调用D3d11

zlyadvocate的博客 9289

python输入数据爬取_python根据用户需求输入想爬取的内容及页数爬取图片方法详解...

本次小编向大家介绍的是根据用户的需求输入想爬取的内容及页数。主要步骤:1.提示用户输入爬取的内容及页码。2.根据用户输入,获取网址列表。3.模拟浏览器向服务器发送请求,获取响应。4.利用xpath方法找到图片的标签。5.保存数据。代码用面向过程的形式编写的。关键字:requests库,xpath,面向过程现在就来讲解代码书写的过程:1.导入模块import parsel # 该模块主要用来将请求后...

weixin_39522927的博客 649

485芯片AB波形正负半周的问题探讨

      本人做的一个产品,产品的其中一个接口是RS485的,我们使用的芯片是MAX13487E。MCU是STM32F103,MCU的USART通过光耦隔离后,接到MAX13487E。因为STM32F103的VCC是3.3V的,MAX13487E的VCC是5V。      部分原理图如下,上述部分电路参考了官方的参考设计,现在测试的AB波形时候发现如下问题。1.把R10和R16改为1k,示波器C...

qq_26308521的博客 1万+

python before content内容爬取_python爬取图片(根据用户需求输入想爬取的内容及页数)!...

本次小编向大家介绍的是根据用户的需求输入想爬取的内容及页数。主要步骤:1.提示用户输入爬取的内容及页码。2.根据用户输入,获取网址列表。3.模拟浏览器向服务器发送请求,获取响应。4.利用xpath方法找到图片的标签。5.保存数据。代码用面向过程的形式编写的。关键字:requests库,xpath,面向过程现在就来讲解代码书写的过程:1.导入模块import parsel # 该模块主要用来将请求...

weixin_39533307的博客 119

群晖Docker安装GitLab

external_url ‘http://lanweixia.synology.me’ 这种情况访问页面的时候加上端口没问题,但是会导致http的克隆地址没有端口。external_url ‘http://lanweixia.synology.me:8000’ 加端口的话,又会导致页面访问不了,Gitlab也一直处于启动状态。​ 完成以后修改docke—>gitlab—>config---->gitlab.rb。就是上面改的端口(docker的端口)首次进入,会设置密码,这个密码就是用户名。

Lim的博客 9115

基于ESP32 蓝牙游戏手柄设计

介绍使用 ESP32 并通过 BLE 通信的 设计手持游戏手柄,包含原理图与代码

DT程序员的博客 2164

使用python在每一张图片上加上页码_python爬取图片(根据用户需求输入想爬取的内容及页数)!...

本次小编向大家介绍的是根据用户的需求输入想爬取的内容及页数。主要步骤:1.提示用户输入爬取的内容及页码。2.根据用户输入,获取网址列表。3.模拟浏览器向服务器发送请求,获取响应。4.利用xpath方法找到图片的标签。5.保存数据。代码用面向过程的形式编写的。关键字:requests库,xpath,面向过程现在就来讲解代码书写的过程:1.导入模块import parsel # 该模块主要用来将请求...

weixin_39815410的博客 319

服务部署之配置WSUS更新服务(基于Windows配置 Server 2022)

服务部署之配置WSUS更新服务(基于Windows配置 Server 2022)

2301_77192876的博客 2216

Python爬取图片

爬取网站https://image.baidu.com/

lidiaosi的博客 2万+

[Python] 为什么你的脚本明明没报错,却什么也没发生?

Python脚本运行后没报错却没结果?这是许多开发者遇到的棘手问题。文章分析了六种常见原因:代码未进入目标逻辑分支、输出路径错误、中间数据为空、异常被吞掉、异步操作未完成、运行了错误脚本版本。建议通过"过程可视化"排查,如打印关键变量、检查工作目录、验证数据状态等。职场中更应关注结果验证而非单纯代码执行,确保脚本真正解决问题。建立结果验证意识是从"会写代码"到"稳定交付"的关键转变。

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 303

基于YOLOv5的人脸识别系统:从构建到应用的全流程指南

本文详细介绍了基于YOLOv5的人脸识别系统开发全流程。首先阐述了YOLOv5模型的高效性和准确性优势,随后分步骤讲解了深度学习环境配置、数据集准备(推荐WIDER FACE数据集)和模型训练方法。重点展示了如何将训练好的模型集成到Tkinter开发的GUI界面中,实现图片上传、人脸检测和结果可视化功能。文章提供完整的代码示例和飞书文档链接(密码:946m22&8),帮助开发者快速构建可交互的人脸识别系统,适用于安防、门禁等多种应用场景。通过该项目,读者可掌握YOLOv5的实际应用和界面集成技术。

FJN110的博客 170

爬取携程景点评论数据【最新方法】,分析AJAX实现页数跳转的爬取方法

本文仅供技术学习使用,欢迎转载,转载请注明出处 因为朋友参加数学建模,需要景点数据,而我刚好懂一点点,就帮他写爬虫代码。在网上搜索到一些爬虫方法,但在获取景点ID时,发现现在携程的Request Payload参数发生变化,导致原本的一些参数,如翻页的请求Fetch,景点ID:viewid没有了,经过分析发现使用了poiID作为新的参数,故自己重新针对新的接口参数重新写了爬虫,同时对爬取通过ajax实现的翻页的数据进行总结,如有错误,还望包涵并指出! PS:携程原本的接口参数还是能正常使用,也可以.

qq_40963692的博客 7291

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

入门级小白超实用的python爬虫爬取网页图片

基于python爬虫,快速获取你想要要数据:歌曲,图片,文案等超多网页数据。本文将概述如何构建一个简单的Python爬虫,该爬虫能够从网页上识别并下载图片。

m0_64031432的博客 8371

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

python爬取图片

一、必备小知识当需要自己做数据集时,最常用的方法就是从网页爬取图片来制作自己的数据集,今天就来简单的说说如何从百度图片爬取批量图片。当我们在看百度图片时,右键–检查–Elements,点击箭头,再用箭头点击图片时,会显示图片的位置和样式。但是,当我们右键查看网页源码时,出来的却是一大堆JavaScript代码,并没有图片的链接等信息。这是为什么呢?这是因为,百度图片的网页是一个动态页面,它的网页原...

zhangjunp3的博客 9789

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

上一篇: 用Python爬取大学的信息,你上的大学排多少呢?
下一篇: Python爬虫练习 爬取网络小说保存到txt,这年头谁还付费看小说啊!
pythonlaodi
博客等级 码龄6年 286粉丝 244原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值