位置: 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)

  • 一般纳税人公账转法人私账
  • 开立一般户需要基本户开户行许可证吗
  • 企业所得税包含哪些税种
  • 企业所得税季报时间
  • 房地产开发企业预收款预缴增值税
  • 税务机关对企业实施特别纳税调整,涉及企业向境外
  • 政府补贴中介合法吗
  • 中小企业开业税务登记所需资料
  • 汇款出国规定
  • 股权投资损失账务处理
  • 企业自主研发的成功案例
  • 免征增值税和营业税政策
  • 建筑工程需要哪些部门审批
  • 税收分类编码格式
  • 往来科目明细表
  • 不是经营范围内的食品
  • 收到镇级财政扶持怎么办
  • 家具螺丝螺母一般在哪里卖
  • win11 老机器
  • windows10如何关机
  • 预计负债基本确定的概率区间
  • 微软和google
  • 电脑非法关机后开机进不了系统
  • 购入嵌入式软件能一次性扣除吗
  • 快启动u盘怎么打开
  • macbookzen
  • 建安混合销售能分开吗
  • 待摊费用从当月摊销还是下月摊销
  • 损益明细表计提企业所得税
  • 来料加工方式中,料件和加工后成品的所有权
  • 天竺葵的养殖方法和繁殖方法
  • PHP:disk_free_space()的用法_Filesystem函数
  • 企业购买预付卡送人分录
  • 收到小微企业贷款减息会计处理办法
  • 企业投资固定资产
  • 股权名称应该填什么?
  • 设备维修产生的人工费怎么开发票
  • div css页面布局
  • ssh非交互式登录
  • 母公司为子公司提供担保需要决议吗
  • 企业增值税发票税率是多少
  • mysql数据库如何回滚
  • 入库单如何做账分录
  • 工资预提和计提的区别
  • 律师跨省办案收取的费用叫什么
  • 增值税专用发票怎么开
  • 废料处理没开票销项税
  • 未交增值税借方表示什么意思
  • 以前年度费用退回
  • 公司贷款可以转私户吗
  • 什么是增值税的销项税额
  • 对外投资需要股东会决议吗
  • 公司法规定股权转让需要满足什么条件
  • 按最低标准买社保30年退休后每个月领多少钱
  • 委托加工科目有余额嘛
  • 购买的商品属于什么会计科目
  • mysql免安装版本
  • windows任务管理器命令
  • 加载dll错误是什么意思
  • linux挂载windows共享文件命令
  • win8录音文件保存在哪
  • ubuntu sudo not found
  • 深入解析windows第8版
  • 电脑出现nobootdevicefound咋办
  • windows10周年更新
  • win10周年版
  • linux简单常用命令
  • 酵母菌代谢类型为
  • javascript数据结构与算法第三版
  • js设置窗口位置
  • 怎么创建pom.xml
  • 用python做冒泡排序
  • 简单的jquery插件实例
  • JavaScript获取网页内容
  • jquery 3d旋转
  • html js怎么调用
  • Android调用系统摄像头
  • 如何查询发票代码和发票号码
  • 地税完税证明是什么样子
  • 为什么进了网页不能登录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设