《大数据采集与预处理技术》考试题

一、选择题(每题 2 分)
1 、查看网站所用的技术可以使用以下的哪个模块(A)
A.Wad
B.Python-whois
C.Request
D.Urllib
2 、以下的 XPath 中用于选取所用 N 节点的表达式是(C)
A.N
B./N
C.//N
D.N/N
3 、正则表达式 R[0-9]{3} ,能匹配出以下哪个字符串(D)
A.R3
B.R03
C.R09
D.R093
4 、以下数据库中不属于关系数据库的是(B)
A.Mysql
B.Redis
C.MongpDB
D.PostgreSQL
5 、以下关于 cookie session 说法正确的是(D)
A.Cookie 数据保存在服务器中
B.Session 数据保存在本地
C. 浏览器一般将 cookie 数据保存在 http body
D.Session 是指抽象的客户端 - 服务器交互模式
6 、以下 re 方法中用于替换字符串的是(B)
A.Match
B.Sub
C.Find_all
D.Split
7 、以下哪一个 python 库用于语言处理(B)
A.Numpy
B.NLTK
C.Sympy
D.Scipy
8 、前端页面向后端发送表单数据通常使用(B)
A.Get
B.Post
C.Put
D.Delete
9 python open 方法中代表追加写内容的模式字符是(C)
A.r
B.w
C.a
D.w+
10 、在 scrapy 目录下,哪个文件负责存放爬虫文件(A)
A.spiders 文件夹
B.Item.py
C.Pipeline.py
D.Setting.py
二、判断题(每题 2分)
1 axios 通过同步加载的方式完成对内容的获取与呈现(F)
2 Requests 比于 urllib 库更加简洁实用(T)
3 Selenium 相比于 Splash 更加的节约资源(F)
4 DictReader 可以将 CSV 的每一行作为一个字典来返回(T)
5 numpy 一般是被认为基于 pandas 设计的(F)
6 Api 与网页抓取共用许多概念与技术(T)
7 、破解滑动验证码需要实现图像拼接与匀速滑动(F)
8 、一般情况下 ajax 返回的数据是以 xml 形式封装的(T)
9 Tag 标签为 a img audio 时属性为 src (F)
10 Selenium webdriver 的版本必须和浏览器的版本相对应 (T)
三、填空题(每题 2 分)
1、爬虫前我们应该了解网站的___robots.txt _____文件信息以被反爬虫封禁的风险。
2 、CSV文件的分隔值是____逗号 ____。
3 、Python中内置的数据库模块是____sqlit3 ____。
4、python中主要使用____pickle ____模块来实现序列化与反序列化。
5、常用的中文文本分析工具有___jieba、SnowNLP _____。
6 BeautifulSoup 中,通过 tag content 属性可以将 tag子节点以____列表____方式输出。
7、字符串str可以通过____strip ____方法来去除左右空格。
8、用于re.findall函数中的____http://[a-zA-Z0-9Λ.-]* ____表达式用于提取http:// 开始的超链接。
9 、解释Robots协议:____网络爬虫排除协议 ____。
10、表示匹配空行的正则表达式是____^$ ____。
四、简答题(每题 4 分)
1 、请简要说明使用 Selenium 的大致流程。
(1)创建浏览器对象(2) 访问页面(3)定位网页元素(4) 网页交互
2 、是否可以将自己的爬虫的 User-agent 设置为知名爬虫呢。
        代码角度上不会限制使用什么样的 User-agent,不断变换 User-agent 的值是很多不友好爬虫为了躲避服务器的检测的做法。但是这种做法是不可取的,它扰乱了Web 服务器的正常判断,就可能使得某种知名爬虫被检测出来不遵守 Robots 协议而产生纠纷。
3 、请简要说明点击一个网页链接,会发生的一系列时间。
(1)浏览器响应点击事件,解析 url
(2)发起 web 请求,建立与服务端的连接
(3)
服务端响应请求,服务端返回请示结果,浏览器处理返回的结果。
4 、请简要说明爬虫时应对图片验证码的主要思路有哪些。

(1)通过程序识别图片再转化为文字并输入。 (2)手动打码,避开程序破解验证码环节。 (3)使用人工打码平台服务。

5、请简要说明cookiesession的区别。

       Cookie 数据保存在本地,而 session 数据保存在服务器。Session 是指象的客户端-服务器交互模式,而 cookie 是 session 的一个具体实现手段。

五、完成程序(每题 10 分)
1 、使用 requests 模块,将
'https://www.tissotwatches.cn/physicalstore/index/ajaxSearchStore/'?storeCity=
&storeProvince= 江苏 ' 中的参数提取出来单独作为参数并访问这个 url.

import requests

url = https://www.tissotwatches.cn/physicalstore/index/ajaxSearchStore/'

params = {"storeCity":"苏州","'storeProvince":"江苏"

res = requests.get(url, params = params)

print(res.status_code)

2 、使用 requests 模块访问 https://www.baidu.com 并通过正则表达式获取标题。

import requests,re

r=requests.get(https://www.baidu.com').content.decode('utf-8')

pt=re.compile|"||<title|>)S\s]+)<title\>)')

print(pt.search(r).group(2))

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值