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']])

结果:

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

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

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

​Python实用宝典 (pythondict.com)

不只是一个宝典

欢迎关注公众号:Python实用宝典

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

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

    Python 使用Lassie库,仅编写三行代码就能爬取静态页面上的图片和视频.Python实战教程每次讲爬虫的时候都会从"发送请求" 开始讲,讲到解析页面的时候可能大部分读者都会 ...

  2. python编写猜数游戏代码、如果不是整数、显示输入错误_python编写猜数游戏代码、如果不是整数、显示输入错误_数字炸弹游戏程序 用python来实现......

    相信许多小伙伴都玩过数字炸弹游戏,就是指在一定数字范围(一般是整数,不包含边界)里,一个玩家选中一个数字当作炸弹,其余玩家在这个范围含数字,每次只要没猜中炸弹数字,则根据玩家猜的数字缩小范围,直至其中 ...

  3. python输入整数_Python中实现输入一个整数的案例

    我就废话不多说了,大家还是直接看代码吧!Y76免费资源网 #! usr/bin/python3.5 # -*- coding:utf-8 -*- a = input("请输入一个整数:&qu ...

  4. python输入数组_python怎么输入数组

    python怎么输入数组? python输入数组 一维数组:arr = input("") //输入一个一维数组,每个数之间使空格隔开 num = [int(n) for n in ...

  5. python输入姓名_Python基础篇--输入与输出

    在任何语言中,输入和输出都是代码最基础的开始, so,先来聊一聊输入和输出 输出 在python中,我们一般用print() 输出,在括号里输入你想输出的信息,用引号包裹起来(单双三都可以),例如我们 ...

  6. python 路径格式化_Python Black 一键格式化美化代码

    复制别人的代码进行使用的时候,最烦的就是看到编辑器上显示的各种红色的.橙色的线吧?尤其是那些不遵守PEP8规则的代码,等号两边的空格会加到你手软...真希望哪天全世界写Python的小伙伴们都能统一代 ...

  7. python天气查询_Python学习笔记——天气查询代码

    天气查询代码1 # 此程序无法运行,因为中国天气网的api接口被关闭了 import urllib.request import json import pickle #建立城市字典 pickle_f ...

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

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

  9. python 输入正方形_Python打印正方形

    示例1:#!/usr/bin/python # -*- coding: UTF-8 -*- # 根据输入打印 rows = int(raw_input('please input number:')) ...

  10. python输入姓名_Python 用户输入用户名,进行验证

    Python 征程(用户输入名字进行密码验证) #!/usr/bin/env python account_file = file('account.txt') user_list = account ...

最新文章

  1. Mac下安装Node.js
  2. java jibx_Jibx 处理XML
  3. 仿IPhone滚轮组件分析WheelScroller
  4. redis 登录注册
  5. 某中国500强企业BI系统成功应用案例
  6. JAVA 子父类的特点
  7. .Net Core 3.0依赖注入替换 Autofac
  8. 如何用Pygame写游戏(四)
  9. HTML轮播图全宽,jq全兼容自适应宽度图片轮播(新手适用)
  10. docker run 与docker start的区别
  11. Fatal error: Maximum function nesting level of '100' reached, aborting!
  12. 【PRML 学习笔记】第一章 - 介绍 (Introduction)
  13. CISSP第一章:安全与风险管理知识点
  14. 有了这个列表,程序员不愁没练手的小项目了
  15. mysql alter table if exists_MySQL中的alter table命令的基本使用方法及提速优化
  16. navcat导入mdf数据库文件教程
  17. 环洋市场调研-2022年全球一次性餐具市场总体规模及应用细分研究报告
  18. MoCo 动量对比学习——一种维护超大负样本训练的框架
  19. macbook 如何在开盖的情况下连接外接显示器, 同时 macbook 的键盘和触摸板都能工作
  20. 2019年web前端就业前景和工资待遇

热门文章

  1. 交并比及非最大值抑制
  2. 一面镜子——记楷模居品家具业的“楷模”
  3. 荧光素APC标记猪胰岛素蛋白,Insulin Protein /APC,OVA/RBITC
  4. 迄今为止最快的小米手机, 3s
  5. JVM启动参数通用配置
  6. Android开发怎么获取美工素材
  7. 邬贺铨院士:5G资费其实要比4G便宜,最近不会降了
  8. CSS学习笔记(尚硅谷李立超老师)
  9. DBCO衍生物 DBCO-PEG4-Propionic-Val-Cit-PAB
  10. CIT 15-462/662 Computer Graphics(Fall 2020)L2 Linear Algebra Review笔记