位置: IT常识 - 正文

python爬虫入门教程:爬取网页图片(python爬虫入门教程)

编辑:rootadmin
在现在这个信息爆炸的时代,要想高效的获取数据,爬虫是非常好用的。而用python做爬虫也十分简单方便,下面通过一个简单的小爬虫程序来看一看写爬虫的基本过程: 首先是要用到的库,因为是刚入门最简单的程序,我们主要就用到下面这两: import requests //用于请求网页 import re / ...

推荐整理分享python爬虫入门教程:爬取网页图片(python爬虫入门教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python爬虫快速入门,python爬虫全套教程,python爬虫教程,python爬虫:入门+进阶,python爬虫入门教程,python爬虫入门教程pdf,python爬虫教程,python爬虫入门教程pdf,内容如对您有帮助,希望把文章链接给更多的朋友!

在现在这个信息爆炸的时代,要想高效的获取数据,爬虫是非常好用的。而用python做爬虫也十分简单方便,下面通过一个简单的小爬虫程序来看一看写爬虫的基本过程:

首先是要用到的库,因为是刚入门最简单的程序,我们主要就用到下面这两:

import requests //用于请求网页import re //正则表达式,用于解析筛选网页中的信息

其中re是python自带的,requests库需要我们自己安装,在命令行中输入pip install requests即可。

然后随便找一个网站,注意不要尝试爬取隐私敏感信息,这里找了个表情包网站:

python爬虫入门教程:爬取网页图片(python爬虫入门教程)

注:此处表情包网站中的内容本来就可以免费下载,所以爬虫只是简化了我们一个个点的流程,注意不能去爬取付费资源。

我们要做的就是通过爬虫把这些表情包下载到我们电脑里。

编写爬虫程序首先肯定要通过python访问这个网站,代码如下:headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:98.0) Gecko/20100101 Firefox/98.0' }response = requests.get('https://qq.yh31.com/zjbq/',headers=headers) //请求网页

其中之所以要加headers这一段是因为有些网页会识别到你是通过python请求的然后把你拒绝,所以我们要换个正常的请求头。可以随便找一个或者f12从网络信息里复制一个。

然后我们要找到我们要爬取的图片在网页代码里的位置,f12查看源代码,找到表情包如下:

然后建立匹配规则,用正则表达式把中间那串替换掉,最简单的就是.*?

t = '<img src="https://www.cnblogs.com/tuixiulaozhou/p/(.*?)" alt="https://www.cnblogs.com/tuixiulaozhou/p/(.*?)" width="160" height="120">'

像这样。

然后就可以调用re库里的findall方法把相关内容爬下来了:

result = re.findall(t, response.text)

返回的内容是由字符串组成的列表,最后我们经由爬到的地址通过python语句把图片下下来保存到文件夹里就行了。

程序代码import requestsimport reimport osimage = '表情包'if not os.path.exists(image): os.mkdir(image)headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:98.0) Gecko/20100101 Firefox/98.0' }response = requests.get('https://qq.yh31.com/zjbq/',headers=headers)response.encoding = 'GBK'response.encoding = 'utf-8'print(response.request.headers)print(response.status_code)t = '<img src="https://www.cnblogs.com/tuixiulaozhou/p/(.*?)" alt="https://www.cnblogs.com/tuixiulaozhou/p/(.*?)" width="160" height="120">'result = re.findall(t, response.text)for img in result: print(img) res = requests.get(img[0]) print(res.status_code) s = img[0].split('.')[-1] #截取图片后缀,得到表情包格式,如jpg ,gif with open(image + '/' + img[1] + '.' + s, mode='wb') as file: file.write(res.content)

最后结果就是这个样子:

本文链接地址:https://www.jiuchutong.com/zhishi/310334.html 转载请保留说明!

上一篇:python包和文件夹有什么区别(python27文件夹)

下一篇:长篇图解etcd核心应用场景及编码实战(etcd4)

  • 华为nova5pro手机怎么放卡(华为nova5pro手机卡槽在哪里)

    华为nova5pro手机怎么放卡(华为nova5pro手机卡槽在哪里)

  • 微信群聊没有保存到通讯录怎么找(微信群聊没有保存怎么找出来)

    微信群聊没有保存到通讯录怎么找(微信群聊没有保存怎么找出来)

  • 鲁大师cpu温度乱跳(鲁大师cpu温度不稳定)

    鲁大师cpu温度乱跳(鲁大师cpu温度不稳定)

  • 抖音本场音浪怎么变成本场点赞了(抖音里的音浪)

    抖音本场音浪怎么变成本场点赞了(抖音里的音浪)

  • 组装笔记本电脑需要哪些配件(组装笔记本电脑好还是原装好)

    组装笔记本电脑需要哪些配件(组装笔记本电脑好还是原装好)

  • 天猫店铺等级划分(淘宝天猫店铺等级表)

    天猫店铺等级划分(淘宝天猫店铺等级表)

  • excel表格打印只显示一部分内容怎么办(excel表格打印只显示表头)

    excel表格打印只显示一部分内容怎么办(excel表格打印只显示表头)

  • 移动机顶盒密码是什么(移动机顶盒密码是多少)

    移动机顶盒密码是什么(移动机顶盒密码是多少)

  • 手机为什么发烫(手机为什么发烫就卡)

    手机为什么发烫(手机为什么发烫就卡)

  • 网已连接不可上网原因(网连接不可上网怎么办)

    网已连接不可上网原因(网连接不可上网怎么办)

  • OPPOa5屏幕死机(oppoa5死机屏幕划不来)

    OPPOa5屏幕死机(oppoa5死机屏幕划不来)

  • 苹果手机收款语音播报怎么设置(苹果手机收款语音)

    苹果手机收款语音播报怎么设置(苹果手机收款语音)

  • 抖音号能查到微信号码(抖音号能查到微信账号吗)

    抖音号能查到微信号码(抖音号能查到微信账号吗)

  • 泛在物联网什么意思(泛在物联网络应用于)

    泛在物联网什么意思(泛在物联网络应用于)

  • 华为锁屏怎么调出字母键盘(华为锁屏怎么调静音)

    华为锁屏怎么调出字母键盘(华为锁屏怎么调静音)

  • 微信没有拉黑为什么发消息显示拒收(微信没有拉黑为什么打不通电话)

    微信没有拉黑为什么发消息显示拒收(微信没有拉黑为什么打不通电话)

  • 运动手环怎么调时间(运动手环怎么调亮度)

    运动手环怎么调时间(运动手环怎么调亮度)

  • 手机上两个微信怎么弄(苹果手机上两个微信)

    手机上两个微信怎么弄(苹果手机上两个微信)

  • iphone停用怎么解锁(iphone停用怎么解锁教程 无需电脑)

    iphone停用怎么解锁(iphone停用怎么解锁教程 无需电脑)

  • wps如何设置脚注(wps如何设置脚注字体)

    wps如何设置脚注(wps如何设置脚注字体)

  • 手机怎样发送位置(手机怎样发送位置定位)

    手机怎样发送位置(手机怎样发送位置定位)

  • iphonex怎么弄一键锁屏(苹果1x怎么弄)

    iphonex怎么弄一键锁屏(苹果1x怎么弄)

  • 微信收款码怎么更换二维码(微信收款码怎么改名字)

    微信收款码怎么更换二维码(微信收款码怎么改名字)

  • vue怎么设置播放时长(vue播放器)

    vue怎么设置播放时长(vue播放器)

  • 淘宝预售商品怎么加购物车(淘宝预售商品怎么设置)

    淘宝预售商品怎么加购物车(淘宝预售商品怎么设置)

  • 索尼xperia1怎么剪辑铃声

    索尼xperia1怎么剪辑铃声

  • 苹果手机录屏声音小怎么办(苹果手机录屏声音在哪里打开)

    苹果手机录屏声音小怎么办(苹果手机录屏声音在哪里打开)

  • 返回上一步快捷键(返回上一步快捷键ps)

    返回上一步快捷键(返回上一步快捷键ps)

  • 库乐队里的歌怎么删除(库乐队里的歌怎么发给别人)

    库乐队里的歌怎么删除(库乐队里的歌怎么发给别人)

  • 拼多多未发货怎么退款(拼多多未发货怎么确认收货)

    拼多多未发货怎么退款(拼多多未发货怎么确认收货)

  • emui9.1是安卓系统吗(emui9是安卓哪个版本)

    emui9.1是安卓系统吗(emui9是安卓哪个版本)

  • 支付宝怎么改实名认证(支付宝怎么改实名认证?苹果)

    支付宝怎么改实名认证(支付宝怎么改实名认证?苹果)

  • 个体户是否属于免征纳税对象是什么意思
  • 建筑安装增值税纳税地点
  • 资本公积转增资本的账务处理
  • 自然人独资公司有章程吗
  • 营改增建筑安装服务发票要求
  • 逆流交易合并报表抵消分录
  • 税前可以扣除的有哪些费用
  • 融资租赁是怎么操作的
  • 增值税发票增量流程网上怎么申请
  • 安装服务异地施工增值税在哪交
  • 如何能减免个人所得税
  • 机打发票要不要税号
  • 房屋销售佣金能退回吗
  • 主营业务收入和产值
  • 未担保余值是什么意思
  • 发票单据流水号
  • 红字专用发票信息表编号在哪儿
  • 企业将自有资金无偿提供
  • 清算公司资产怎么入账
  • 多枝发财树怎么修剪
  • thinkphp ide
  • 发票未认证丢失怎么补办
  • 应扣未扣应收未收税款是什么意思
  • uni-app实例教程
  • 企业间无偿借款涉税
  • 外汇申报是什么意思
  • tensorflow卷积神经网络
  • php function函数的用法
  • 公司之间借款利息需要开票吗
  • phpcms怎么样
  • python查找列表元素
  • JavaScript基础_1
  • 采矿权如何进行融资
  • 怎样在网上领取
  • 借款合同按什么缴纳印花税
  • 织梦如何给栏目增加缩略图
  • 库存不多
  • 购买金税盘是全额抵扣吗
  • 其他应付款转实收资本走什么程序
  • 房地产小规模纳税人预缴税款如何填申报表
  • 哪些合同必须签订书面合同
  • 企业怎么开启承兑业务
  • 费用性税金包括增值税吗
  • 在建工程什么时候结转
  • 公转私户违法吗
  • 会计和外贸哪个工作强度大
  • 金蝶软件中怎么让以前年度损益调整在利润表中取不到数
  • 如何调整去年的账
  • 公司既没有收入怎么办
  • 采用现销方式销售商品的会计分录
  • 应交增值税贷方余额表示什么
  • 事假 扣工资
  • mysql关联查询原理
  • 完美解决MySQL通过localhost无法连接数据库的问题
  • xp系统如何开启共享文件夹
  • linuxmail命令
  • Linux配置防火墙端口
  • windows关闭安全引导
  • LINUX系统下MySQL 压力测试工具super smack
  • win10周年版
  • 在对linux系统中dir
  • Win10 Mobile 10586.312提前体验
  • 建立一个新用户并把它加入wheel组,设置用户密码为123
  • javascript运用
  • bootstrap designer
  • 简述javascript执行原理
  • shell脚本用法
  • linux shell获取ip地址
  • 安全模式安卓
  • unity unity3d
  • Unity小贴士 导出资源文件和简单加密方式
  • nodeJS(express4.x)+vue(vue-cli)构建前后端分离实例(带跨域)
  • recyclerview和scrollview
  • window.showModalDialog谷歌不兼容
  • 信息页文内画中画广告js实现代码(文中加载广告方式)
  • python3模拟登录
  • 国家税务局吉林省税务局官网app
  • 2023居民医保怎么交
  • 形容有待完善的词语
  • 全国城管改革什么时候结束
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设