当前位置: 首页 > news >正文

【MOOC】北京理工大学Python网络爬虫与信息提取慕课答案-综合挑出了一些很难评的慕课测验题

1 Requests库中的get()方法最常用,下面哪个说法正确?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬
A. 网络爬虫主要进行信息获取,所以,get()方法最常用。
B. get()方法是其它方法的基础,所以最常用。
√C. 服务器因为安全原因对其他方法进行限制,所以,get()方法最常用。
D. HTTP协议中GET方法应用最广泛,所以,get()方法最常用。

C正确,get()方法最常用的原因在于服务器端对push()、post()、patch()等数据推送的限制,试想,如果允许大家向服务器提交数据,将带来无穷无尽的安全隐患。因此,通过get()获取数据,服务器作为数据提供方而不是接收方,更为安全。
A错,因为post也可以获取信息;
B错,因为request()才是基础;
D错,不好评价。

2 Requests库中,以下代表从服务器返回HTTP协议内容部分猜测获得编码方式的属性是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬
A. .headers
B. .text
C. .encoding
√D. .apparent_encoding

通过内容分析编码用.apparent_encoding,一般作为备选编码方式。

3 Requests库中,以下代表从服务器返回HTTP协议头所推荐编码方式的属性是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬
A. .headers
B. .text
√C. .encoding
D. .apparent_encoding

从响应头分析编码用.encoding就行。

4 获得soup对象中,能够获得a标签全部属性的代码是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬

from bs4 import BeautifulSoup
soup = BeautifulSoup(demo, "html.parser")

A. soup.a.attrs[0]
B. soup.a.attrs[]
C. soup.a[0].attrs
√D. soup.a.attrs

a标签是HTML预定义标签,通过soup.a可以直接获取。
我选错了选成C了。很难评,原来有这种用法

5 Beautiful Soup库不可加载的解析器是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬
A. html5lib
B. html.parser
C. lxml
√D. re

就是BeautifulSoup(demo, “html.parser”)第二个参数的可选项。

6 下面哪个不是信息提取的思路?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬
A. 结合部分格式解析和搜索的方式提取所需要的信息。
B. 无视格式,直接搜索找到所需提取的信息。
C. 按照信息格式完全解析,解析后找到所需提取的信息。
√D. 通过自然语言处理方式找到所需提取的信息。

B确实是条思路,D是不太靠谱的,因为html是标签语言,离自然语言有一段距离。

7 为什么Beautiful Soup库叫这个名字?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬
A. Python Software Foundation要求开发者叫这个名字
√B. 原因不详,第三方库起名原因多种多样,没必要深究
C. 之前有类似的库叫类似的名字
D. 开发者喜欢煲汤

Python计算生态采用"集市"模式,命名权归贡献者。
笑,我毫不犹豫选D
网上查了其他资料,确实各种说法都有,有说是来源于童话故事的,有说网页标签本身乱得像一锅汤一样,这个库是用来让汤变成靓汤的。

8 关于Beautiful Soup库说法错误的是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬
A. Beautiful Soup库是解析、遍历、维护标签树的功能库
B. Beautiful Soup库能够对HTML和XML等格式进行解析
√C. Beautiful Soup库可常用于生成标签树
D. Beautiful Soup库也叫bs4库

Beautiful Soup库不能够生成标签树,只能解析、遍历和维护。
笑,我以为生成标签树=生成标签树对象,没想到它意思是生成一个新的网页标签树

9 正则表达式:\d{3}-\d{8}|\d{4}-\d{7}能匹配哪个?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬
A. 010-1234567
√B. 010-12345678
C. 01012345678
D. 0521-12345678

注意|是“或者”,表示任选一个。

10 re库可以使用如下方式表示正则表达式:r’[1-9]\d{5}',其中r是什么意思?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬
√A. 原生字符串标记
B. 开始位置标记
C. 正则表达式标记
D. 强制标记

这题很容易手滑选C,不过如果有代码经验的话,就会知道加个r是为了让转义字符\不再是转义的含义,便于直接作为正则表达式输入到re的方法中。

11 正则表达式:^-?\d+$的含义是什么?‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬
A. 一个带有负号的数字字符串
B. 由26个字母组成的字符串
√C. 一个整数形式的字符串
D. 由26个字母和数字组成的字符串

这题可坑了,问号?是0次或1次扩展,点.才是任一字符,但先看到A就很容易选错。
在这里插入图片描述
在这里插入图片描述

12 Beautiful Soup库与re库之间关系,描述正确的是:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬
A. re库能实现HTML解析,功能上与Beautiful Soup库类似
B. Beautiful Soup库中可以加载re库
√C. 这两个库没有关系
D. re库中可以加载Beautiful Soup库

ABD错,所以C对。
【要知道,根据马原,事物是普遍联系的,这个C说实在的也是错的,这很难评。随便举个关系:bs4库解析出来的标签树的字符串内容,可以被re库正则匹配进一步筛选解析。】

http://www.lryc.cn/news/120117.html

相关文章:

  • 【论文阅读】基于深度学习的时序预测——Crossformer
  • 谷粒商城第十一天-完善商品分组(主要添上关联属性)
  • C++笔记之函数参数列表中设置默认值
  • Verilog求log10和log2近似
  • 二叉树小结
  • vue二进制下载
  • c++QT文件操作
  • Jmeter —— jmeter设置HTTP信息头管理器模拟请求头
  • vue 图片转pdf
  • 20.5 HTML 媒体
  • 科大讯飞分类算法挑战赛2023的一些经验总结
  • 2023年京东按摩仪行业数据分析(京东销售数据分析)
  • 【C语言】进阶指针,超详解,含丰富代码示例
  • wireshark入门指北
  • 18、SQL注入之堆叠及WAF绕过注入
  • nodejs+vue+elementui+express旅游出行指南网站_655ms
  • 【心电图信号压缩】ECG信号压缩与通过三次样条近似重建的ECG信号压缩研究(Matlab代码实现)
  • matlab使用教程(11)—创建随机数
  • 一、安全世界观
  • 爬虫014_文件操作_打开关闭_读写_序列化_反序列化---python工作笔记033
  • 企业前后端分离软件架构如何设计?
  • 生产执行MES系统:提升企业灵活性和响应速度的关键利器
  • 什么是分布式系统,如何学习分布式系统
  • 数据库锁表 Lock wait timeout exceeded; try restarting transaction
  • Oracle 知识篇+分区表上的索引由global改为local注意事项
  • 基于2.4G RF开发的无线游戏手柄解决方案
  • Python之一:基础信息
  • K8S系列文章之 Traefik快速入门
  • RabbitMQ在CentOS下的安装
  • 为什么金鸣识别不做成离线版?