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

  • 应发工资包含请年假吗
  • 电子承兑汇票怎么做账
  • 税负率是含税还是不含税
  • 研发费用 会计核算
  • 房地产企业施工电费会计分录
  • 固定资产租入租金计入什么科目
  • 给经销商的回扣如何做账?
  • 银行本票结算分录
  • 小规模纳税人按什么标准纳税
  • 跨年发票能否次年入账
  • 增值税专票代码TZD0085什么意思
  • 2016的发票2017年还能用吗?
  • 购进货物作为优秀员工的奖励是否可以进项抵扣?
  • 哪些情况需要变更船籍港
  • 增值税加计抵减账务处理
  • 金税盘新领的发票怎么分发出去
  • 销售折扣计入增值税销售额的
  • 制造行业库存该怎么处理
  • 营改增的销售额规定
  • 当月未抵扣进项税在进项税额明细表怎么填
  • 支付拆迁补偿款做账
  • 社保怎么计提
  • 收到生育津贴会计分录
  • 有留抵税额怎么做分录
  • 常见的财务报表分析方法有多选题
  • 解决的英文
  • 吸收合并重组
  • php判断useragent
  • phpsql查询
  • thinkphp跨域
  • thinkphp如何连接数据库
  • 企业办理退税,税务机关要检查吗
  • 以前年度损益调整借贷方向
  • 工伤保险赔偿范围和企业承担范围
  • 公司年夜饭怎么说话
  • 月末损益结转手工结转步骤
  • sql 语法树
  • 扣除未结话费是什么意思
  • 无形资产处置的相关费用计入哪里
  • 库存商品冲回
  • 产房日常维修费用
  • 资本金利润率正常范围
  • 旅行社差额征收怎么报税
  • 增值税免税入账
  • 企业控股情况分析报告
  • 资金调拨账务处理
  • 应收帐款坏账处理
  • mysql函数用法
  • linux转移文件代码
  • mysql5.7免安装版配置
  • mysql的慢查询日志怎么查看
  • 如何删除windowsedb
  • win10启动项怎么设置
  • 游戏与操作系统不兼容
  • window2008 64位系统没有office组件问题分析及解决
  • freebsd安装pkg
  • WIN7系统安装
  • ps到底怎么用
  • 怎么更改window
  • linux的文件结构
  • Unity3d NGUI的drawcall,UISprite与UITexture
  • accessviolation怎么解决
  • css滑动门技术的步骤
  • cocos2dx4.0入门
  • js去除hover样式
  • python 效率优化
  • CustomPropertyDrawer-Change the height of Property field
  • ssm vue
  • python模拟软件
  • android 标签页
  • unity热更新框架对比
  • unity最新教程
  • 广东etc政策
  • 贸易公司税收政策
  • 计税核定价是什么
  • 一般纳税人开租赁费发票税率是多少
  • 四川医保增员网上怎么操作流程图
  • 企业所得税可以抵扣吗
  • 江西省国税局全称
  • 一般纳税人什么意思
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设