Python 使用Lassie库,仅编写三行代码就能爬取静态页面上的图片和视频。Python实战教程每次讲爬虫的时候都会从“发送请求” 开始讲,讲到解析页面的时候可能大部分读者都会卡住,因为这部分确实需要一点XPATH或者CSS选择器的前置知识。那么有没有不需要这么复杂的操作就能把页面信息读取出来的方法呢?

答案是:有。

Lassie 是一个超简单的页面信息检索工具,它能够通过几行代码就获取到页面上的静态信息,比如:页面描述、视频链接、页面标题,页面关键词、图像链接等等。

为什么超简单?感受一下:

import lassie
data = lassie.fetch('https://www.zhihu.com')
print(data) 你只要fetch一下页面,就能得到以下的运行结果(输出为字典):(base) F:push20191112>python test.py{'images': [{'src': 'https://static.zhihu.com/static/favicon.ico', 'type': 'favicon'}], 'videos': [], 'description': '有问题,上知乎。知乎,可信赖的问答社区,以让每个人高效获得可信赖的解答为使命。知乎凭借认真、专业和友善的社区氛围,结构化、易获得的优质内容,基于问答的内容生产方式和独特的社区机制,吸引、聚集了各行各业中大量的亲历者、内行人、领域专家、领域爱好者,将高质量的内容透过人的节点来成规模地生产和分享。用户通过问答等交流方式建立信任和连接,打造和提升个人影响力,并发现、获得新机会。', 'locale': 'zh_CN', 'url': 'https://www.zhihu.com', 'title': '知乎 - 有问题,上知乎', 'status_code': 200}

1.安装

如果你还没有安装Python,推荐阅读这篇文章:Python安装。

安装完成后,请打开你的CMD/Terminal(终端)输入以下命令:

pip install lassie

即可成功安装lassie.

2.使用

现在,用这个工具爬取我们上篇文章的图片链接吧!

import lassie
data = lassie.fetch('https://pythondict.com/ai/python-suicide-detect-svm/')
print(data['images'])

结果:

[{'src': 'https://pythondict.com/wp-content/uploads/2019/11/2019111013222864.png', 'secure_src': 'https://pythondict.com/wp-content/uploads/2019/11/2019111013222864.png', 'type': 'og:image'}, {'src':
'https://pythondict.com/wp-content/uploads/2019/11/2019111013222864.png', 'type': 'twitter:image'},
{'src': 'https://pythondict.com/wp-content/uploads/2019/07/2019073115192114.jpg', 'type': 'favicon'}]

当然,我们还可以用列表解析式,把所有链接放到一个数组里:

print([i['src'] for i in data['images']])

结果:

['https://pythondict.com/wp-content/uploads/2019/11/2019111013222864.png', 'https://pythondict.com/wp-content/uploads/2019/11/2019111013222864.png', 'https://pythondict.com/wp-content/uploads/2019/07/2019073115192114.jpg']

怎么样,是不是这个工具拿来爬静态页面实在太方便了!唯一的缺点就是它无法爬取页面中详细的文本内容,仅仅只能用来提取图片、视频和页面相关的信息,如果你的爬虫是只需要爬取静态页面上的图片和视频,那这个库简直是神器啊。

如果你喜欢今天的Python 教程,请持续关注Python实用宝典,如果对你有帮助,麻烦在下面点一个赞/在看哦

有任何问题都可以在下方留言区留言,我们会耐心解答的!

​Python实用宝典 (pythondict.com)
不只是一个宝典
欢迎关注公众号:Python实用宝典

原文来自Python实用宝典:Python 你见过三行代码的爬虫吗

python 爬虫代码_Python 你见过三行代码的爬虫吗相关推荐

  1. 爬虫技术python代码_Python 你见过三行代码的爬虫吗

    Python实用宝典每次讲爬虫的时候都会从"发送请求" 开始讲,讲到解析页面的时候可能大部分读者都会卡住,因为这部分确实需要一点XPATH或者CSS选择器的前置知识.那么有没有不需 ...

  2. python 多核并行计算_手把手 | 嫌Python太慢?并行运算Process Pools三行代码给你4倍提速!...

    大数据文摘作品,转载要求见文末 作者 | Adam Geitgey 编译 | 元元.Lisa.Saint.Aileen 原文链接 | https://medium.com/@ageitgey/quic ...

  3. python 多核并行计算_嫌Python太慢?并行运算Process Pools三行代码给你4倍提速!

    大数据文摘作品,转载要求见文末,作者 | Adam Geitgey,编译 | 元元.Lisa.Saint.Aileen. Python绝对是处理数据或者把重复任务自动化的绝佳编程语言.要抓取网页日志? ...

  4. python 爬虫框架_Python常用的几个高效率的爬虫框架

    1.Scrapy Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中.用这个框架可以轻松爬下来如亚马逊商品信息之类的数 ...

  5. python怎么清除代码_python的shell中的代码怎么清理?

    python shell是Python的命令行. 交互模式下使用Python很方便,如果想清除显示过的信息,有两种方法可以采用. 方法一.针对Python命令行(python shell) 直接使用下 ...

  6. python爬虫代码1000行-Python 你见过三行代码的爬虫吗

    Python实用宝典每次讲爬虫的时候都会从"发送请求" 开始讲,讲到解析页面的时候可能大部分读者都会卡住,因为这部分确实需要一点XPATH或者CSS选择器的前置知识.那么有没有不需 ...

  7. python简单爬虫手机号_python手机号前7位归属地爬虫代码实例

    需求分析 项目上需要用到手机号前7位,判断号码是否合法,还有归属地查询.旧的数据是几年前了太久了,打算用python爬虫重新爬一份 单线程版本 # coding:utf-8 import reques ...

  8. python实现新闻网站_Python 教你 4 行代码开发新闻网站通用爬虫

    ​ GNE(GeneralNewsExtractor)是一个通用新闻网站正文抽取模块,输入一篇新闻网页的 HTML, 输出正文内容.标题.作者.发布时间.正文中的图片地址和正文所在的标签源代码.GNE ...

  9. python 爬手机号_python手机号前7位归属地爬虫代码实例

    需求分析 项目上需要用到手机号前7位,判断号码是否合法,还有归属地查询.旧的数据是几年前了太久了,打算用python爬虫重新爬一份 单线程版本 # coding:utf-8 import reques ...

最新文章

  1. 字节跳动扩招一万人?这也太香了!
  2. JavaScript中window.open用法实例详解
  3. UI Automator Viewer Error while obtaining UI hierarchy XML file
  4. highroller赌城java下载,非常有用的链接
  5. Python 本身真的有用吗?CSDN要对Python下手了!
  6. 吴恩达机器学习课后作业深度解析(附答案)(ex2)
  7. Redis主从自动failover
  8. bat怎么发起网络请求_接口测试实战| GETPOST 请求区别详解
  9. matlab db5是什么小波,3、代码 - matlab小波分析步骤是什么
  10. [设计模式] 设计模式面面观(3):单件模式(Singletion)-创建型模式
  11. 数据分析面试必考的AB-Test详解
  12. 游戏中的人工智能AI设计
  13. Const用法总结:Const,Const函数,Const变量,函数后面的Const (转)
  14. linux内核中的GFP_KERNEL和GFP_ATOMIC区别
  15. c语言程序设计实践万年历,c语言程序设计万年历-20210408030342.docx-原创力文档
  16. springboot调整请求头大小_SpringBoot http post请求数据大小设置操作
  17. 一款真正可用的支付系统,可搭建自己的易支付系统,开源无后门可运营
  18. Python界面编程第二课:Pyside2 创建窗口 (Python GUI)
  19. 查看七牛云生成qiniuUploadToken的过期时间
  20. 什么是软件测试?软件测试和研发的区别

热门文章

  1. Java面试详解(2020版):500+ 面试题和核心知识点详解
  2. ORACLE中使用递归查询
  3. Centos7.x Hadoop 3.x HDFS 写入文件
  4. Kubernetes 部署 Ingress 控制器 Traefik v1.7.4
  5. uniapp+typeScript+vue3.0+vite
  6. java hibernate 表关联_Hibernate多表关联
  7. php维护页面,php – Symfony2中的“维护网站”页面
  8. 卡顿严重_微软Win 10游戏模式致《使命召唤:战区》等游戏出现严重卡顿现象
  9. U盘:对于目标文件系统,文件过大放不到u盘里
  10. pytorch默认初始化_Pytorch 实现权重初始化