爬虫取中间文本_小小爬虫批量抓取微信推文里的图片
哈喽,大家好,今天给大家分享一个特别特别小的爬虫案例!
爬取微信推文中的图片!!!!
有人说,这有啥用,,,,万一人家推文是放的是以图片的方式放的某个PPT的内容呢,你想把它弄下来,咋整,就是爬取啦。
欢迎关注哔哩哔哩UP主:“我家公子Q”。
坚持、努力;你我同行!Born to fight!
相信大家都有听过爬虫这个技术,这个技术学会啦,你将会成为资源大佬。这次推文将从以下两个方面展开:
1、爬虫科普
2、微信推文内图片
爬虫科普一定义
近些年,爬虫一词广为流传,也有了新兴的一个职位---爬虫工程师。那什么是爬虫呢?
下面放上百度百科的解释:
网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。
应该还是不太懂哈。
其实,通俗点讲,就是在网络上,按照我们的需求通过相应的技术手段来获取我们需要的数据信息,这个过程就叫做爬虫。
The website is the API。。。
我们讲网络上各个网址都当作一个API,即看作一个接口,我们可以通过这个接口获取信息和数据。一个网址称为一个URL,这个URL即是我们爬取的API。
爬虫无非以下几个过程:
1、了解网页
2、获取网页内容
3、解析网页,选择需要的内容
4、保存所需内容
二robots协议
在爬虫之前,需要知道几点:
1、服务器上的数据是有产权归属的。
2、网络爬虫数据牟利存在法律风险。
3、爬虫可能会丢失个人数据。
很多公司对于爬虫也会有一些预防的设置,一般它会判断你的访问来源,尝试判断你是人访问的网站还是机器访问的,从而做出必要的限制。
robots协议,又称robots.txt,它是大家约定成俗的的爬虫协议,说白了,就是爬虫的道德标准。很多公司都会对它的一些网站设置robots协议,这个协议会告诉你该网站哪些内容允许你爬取,哪些内容不允许你爬取。这个协议就是网站根目录下的robots.txt文件。下面给出了京东的robots协议。
https://www.jd.com/robots.txt
这里首先跟大家交代这些的目的,也是希望大家能够合法爬虫,遵守网络道德,做好社会主义接班人,不过一般的小型爬虫都是允许的,大家可以大胆尝试。
三爬虫框架
目前,爬虫已经有相对成熟的框架和相对成熟的第三方库来供大家使用。
上面给出了两个较为成熟的用于爬虫的库。下文我们讲简单介绍Requests的使用。
首先,你需要安装这个库,库的安装方式都很简单,在windows系统上,以管理员身份运行cmd,执行pip install requests。
安装好之后可以测试一下。
下面给出爬虫的框架:
import requests # 导入requests库def Get_Url_text(URL): # 定义获取相应链接文本的函数 try:# 这里是异常处理机制 r = requests.get(url, timeout=30) # 访问这个链接,并返回一个名为r的对象 r.raise_for_status() # 返回访问的状态,若为200,即为访问成功 r.encoding = r.apparent_encoding # 将网页的编码和头文件的编码改为一致 except: return "产生异常"if __name__ = "main": url = "https://www.Baidu.com" print(Get_Url_text(url))
四Requests库的一些常用方法
requests库的七个常用方法
在这里有两个对象,一个是访问的url,还有就是返回的reponse对象,即前文代码中的r对象,那对于返回的对象也有一些属性。如下表所示。
微信推文中图片的爬取实例
给大家简单说一下,这里使用的python自带的urllib中的request。但是整体的爬取思路都是一样的。其中还用到了一些其他的库,大家可以自行百度了解。代码及解释如下所示。
import urllib.requestimport re # 正则表达式库import osimport urllib# 根据给定的网址来获取网页详细信息,得到的html就是网页的源代码def getHtml(url): page = urllib.request.urlopen(url) html = page.read() return html.decode('UTF-8')def getImg(html): reg = r' src="(.+?)" ' # 括号里面就是我们要取得的图片网址 imgre = re.compile(reg) imglist = imgre.findall(html) # 表示在整个网页中过滤出所有图片的地址,放在imglist中 x = 0 path = 'D:\\python_project\\GRASP_pic_from_wechat\\pic' # 将图片保存到D:\\test文件夹中,如果没有test文件夹则创建 if not os.path.isdir(path): os.makedirs(path) paths = path + '\\' # 保存在test路径下 for imgurl in imglist: urllib.request.urlretrieve(imgurl, '{0}{1}.jpg'.format(paths, x)) # 打开imglist中保存的图片网址,并下载图片保存在本地,format格式化字符串 x = x + 1 return imglisthtml = getHtml("https://mp.weixin.qq.com/s/z8phHxzrjeU6HCDdtQdoeQ") # 获取该网址网页详细信息,得到的html就是网页的源代码print(getImg(html)) # 从网页源代码中分析并下载保存图片
ok,今天的内容到此就大概结束了,希望对大家有帮助,欢迎点赞、转发哦!!
送封面:
微信号:ycwwzzq哔哩哔哩:我家公子Q-扫码关注我们-仙女都在看点点点,赞和在看都在这儿!
爬虫取中间文本_小小爬虫批量抓取微信推文里的图片相关推荐
- 图片抓取_小小爬虫批量抓取微信推文里的图片
哈喽,大家好,今天给大家分享一个特别特别小的爬虫案例! 爬取微信推文中的图片!!!! 有人说,这有啥用,,,,万一人家推文是放的是以图片的方式放的某个PPT的内容呢,你想把它弄下来,咋整,就是爬取啦. ...
- python爬取网页停止_如何使用Python抓取雪球网页?
我想使用beautifulsoup或者其他的python包 抓取 雪球网页上面的一些组合,因为雪球网的组合持仓变动的时候,雪球网不会给提示,比如说,我想抓取这个http://xueqiu.com/P/ ...
- python爬取pdf教程_#如何利用Python抓取PDF中的某些内容#python爬取pdf教程
如何利用Python抓取PDF中的某些内容 学生每天要学习,工作者要工作,家庭主妇每都要务.不论做什么,都有着相应的操作流同样就会有操作技巧.学生运用技巧学习才不会累,学得还会更快更多:工作者掌握技巧 ...
- python爬取豆瓣读书_用python+selenium抓取豆瓣读书中最受关注图书并按照评分排序...
抓取豆瓣读书中的(http://book.douban.com/)最受关注图书,按照评分排序,并保存至txt文件中,需要抓取书籍的名称,作者,评分,体裁和一句话评论 方法一:#coding=utf-8 ...
- python抓取网站乱码_如何使用Python抓取网站
python抓取网站乱码 by Devanshu Jain 由Devanshu Jain It is that time of the year when the air is filled with ...
- python爬取企业电话_如何用python抓取爱企查企业信息
前段时间,经理让我去找一些企业的信息,我平常习惯于使用爱企查.所以,便想着写一个程序来实现这个,所以有以下的代码:import json import requests import re from ...
- python爬虫ip代理_python爬虫批量抓取ip代理的方法(代码)
本篇文章给大家带来的内容是关于python爬虫批量抓取ip代理的方法(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 使用爬虫抓取数据时,经常要用到多个ip代理,防止单个ip访 ...
- python爬取新浪微博数据中心_Python爬虫框架Scrapy实战之批量抓取招聘信息
网络爬虫抓取特定网站网页的html数据,但是一个网站有上千上万条数据,我们不可能知道网站网页的url地址,所以,要有个技巧去抓取网站的所有html页面.Scrapy是纯Python实现的爬虫框架,用户 ...
- python批量读取图片并批量保存_Python爬虫:批量抓取花瓣网高清美图并保存
原标题:Python爬虫:批量抓取花瓣网高清美图并保存 昨天看到了不错的图片分享网--花瓣,里面的图片质量还不错,所以利用selenium+xpath我把它的妹子的栏目下爬取了下来,以图片栏目名称给文 ...
最新文章
- 个人销售建筑服务器,建筑个人云服务器
- linux 设置开机命令提示符,centos设置开机默认命令行启动
- SOA 案例研究:SOA 设计
- 思科模拟器32位_三款另类的68k Mac模拟器
- Netty原理架构解析
- linux在主函数中调用进程,linux 调用进程
- realme真我GT2系列节后登场:出厂自带realme UI 3.0正式版
- 【设计模式笔记】抽象工厂模式
- Centos 解压软件
- oracle 自治事务异常不回滚,ORA-06519: 检测到活动的自治事务处理,已经回退
- SQL日历表数据的简单生成
- visual studio中番茄助手添加注释模板
- 1 集群Linux环境搭建
- 实验四——反汇编工具的使用
- 不要成为职场中的三种人
- led屏背后线路安装图解_科普:网格屏是什么意思?LED网格屏怎么安装
- 学习Python第四天
- LBS的概念、历史、现状与未来(一)
- 测试路由和设备连接速度的软件,如何简单,快速地在家中测试无线路由器的速度和性能?...
- linux安装网卡驱动教程6,CentOS 6.5安装无线网卡驱动教程