23春学期(高起本:1709-2103、专升本/高起专:1909-2103)《网络爬虫与信息提取》在线作业-00002
试卷总分:100 得分:100
一、单选题 (共 20 道试题,共 40 分)
1.在Mac OS下安装MongoDB使用命令() install mongodb
A.brew
B.apt-get
C.sudo
D.apt
2.()是Scrapy官方开发的,用来部署、运行和管理Scrapy爬虫的工具
A.Scrapyd
B.ScrapyDeploy
C.Deploy
D.Scrapy_Deploy
3.通常使用()工具来模拟浏览器进行爬虫请求
A.Selenium
B.Chrome
C.ChromeDriver
D.WebDriver
4.Python中专门用来处理图像的第三方库是
A.lxml
B.Pillow
C.beautifulsoup
D.pytesseract
5.使用xpath方法的返回类型是()
A.列表
B.元组
C.字典
D.集合
6.使用UI Automator获滚动屏幕的操作是得到相应控件后使用命令()
A.scroll
B.scroll_up
C.scroll_forword
D.scroll_back
7.一般来说在页面传输登录信息都用HTTP()请求类型
A.GET
B.POST
C.PUT
D.SEND
8.下列说法错误的是()
A.Charles只能截获HTTP和HTTPS的数据包,如果网站使用的是websocket或者是flashsocket,那么Charles就无能为力。
B.有一些App会自带证书,使用其他证书都无法正常访问后台接口。在这种情况下,Charles自带的证书就不能正常使用,也就没有办法抓取这种App的数据
C.有一些App的数据经过加密,App接收到数据以后在其内部进行解密。Charles无法获取这种App的数据
D.对于上述情况,Charles能抓取到经过加密的数据。但是如果无法知道数据的具体加密方法,就没有办法解读Charles抓取到的数据。
9.PyMongo中逻辑查询表示大于等于的符号是()
A.$gt
B.$lt
C.$gte
D.$lte
10.Python正则表达式模块的findall方法如果没有匹配到结果,则返回结果为()
A.空
B.空列表
C.空元组
D.不返回
11.Scrapy自带的待爬队列是()
A.deque
B.queue
C.list
D.lqueue
12.以下哪个命令是利用URL语法在命令行下工作的文件传输工具()
A.curl
B.tar -zxvf
C.mkdir
D.cp
13.以下哪个命令是复制文件或者文件夹命令()
A.curl
B.tar -zxvf
C.mkdir
D.cp
14.Redis中查看一个列表长度,使用关键字()
A.len
B.length
C.llen
D.count
15.Python中若定义object=[1, 2, 3, 4, 5],则print(object[-4])输出()
A.NULL
B.2
C.4
D.程序报错
16.chrome默认打开开发者工具的快捷是
A.F5
B.F11
C.F12
D.F2
17.使用UI Automatorr根据坐标来滑动桌面的操作是得到相应控件后使用命令()
A.swipe
B.move
C.scroll
D.fly
18.Python读CSV文件需要哪个方法()
A.CSVReader
B.CsvReader
C.DictReader
D.FileReader
19.()是一个传递信息的通道。它负责将爬取博文列表页获取到的信息传递给负责爬取正文页的方法中。
A.meta
B.head
C.header
D.body
20.Python正则表达式模块的findall方法提取内容包含多个,则返回结果的列表中会包含()
A.列表
B.元组
C.字典
D.集合
二、多选题 (共 10 道试题,共 20 分)
21.如果目标网站有反爬虫声明,那么对方在被爬虫爬取以后,可以根据()来起诉使用爬虫的公司
A.服务器日志
B.数据库日志记录
C.程序日志记录
D.服务器监控
22.最常见的HTTP请求类型有()
A.GET
B.POST
C.SEND
D.RECEIVE
23.下列说法错误的是()
A.mitmproxy的强大之处在于它还自带一个mitmdump命令。这个命令可以用来运行符合一定规则的Python脚本,并在Python脚本里面直接操作HTTP和HTTPS的请求,以及返回的数据包。
B.命令行中执行mitmdump -s parse_request.py即可运行python 脚本
C.使用python可以自定义返回的数据包,如 response.headers,就是返回的头部信息
D.如果返回的是JSON类型的字符串,python无法进行解析。
24.cookies的缺点是
A.实现自动登录
B.跟踪用户状态
C.http中明文传输
D.增加http请求的流量
25.自动填充验证码的方式有南开答案请进:opzy.net或请联系微信:1095258436
A.手动识别填写
B.图像识别
C.打码网站
D.浏览器自动识别
26.HTTP常用状态码表明表明服务器本身发生错误的有()
A.403
B.404
C.500
D.503
27.requests中post请求方法的第二个参数可以为()
A.字典
B.列表
C.json数据
D.字符串
28.一个可行的自动更换代理的爬虫系统,应该下列哪些功能?
A.有一个小爬虫ProxySpider去各大代理网站爬取免费代理并验证,将可以使用的代理IP保存到数据库中
B.在发现某个请求已经被设置过代理后,什么也不做,直接返回
C.在ProxyMiddlerware的process_request中,每次从数据库里面随机选择一条代理IP地址使用
D.周期性验证数据库中的无效代理,及时将其删除
29.Python中()容器有推导式
A.列表
B.元组
C.字典
D.集合
30.Python中有哪些实现多线程方法()
A.multiprocess.dummy
B.threading.Thread
C.process
D.PyMongoDB
三、判断题 (共 20 道试题,共 40 分)
31.Python中包含字典的列表页可以转换成JSON字符串
32.Python中相比于findall方法,search方法对于从超级大的文本里面只找第1个数据特别有用,可以大大提高程序的运行效率。
33.如果通过爬虫抓取某公司网站的公开数据,分析以后发现这个公司业绩非常好,于是买入该公司股票并赚了一笔钱。这是合法的。
34.MongoDB在频繁读写方面优于Redis
35.在Ubuntu下若要运行Redis可以使用CMD进入解压以后的文件夹并运行命令redis-server.exe redis.windows.conf启动Redis
36.Redis是遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库
37.Charles和Chrome开发者工具相比,只是多了一个搜索功能。
38.Python中写CSV文件的writerows方法参数为字典类型
39.”curl http://爬虫服务器IP地址:6800/cancel.json -d project=工程名 -d job=爬虫JOBID“该命令的作用是启动爬虫
40.代理中间件的可用代理列表一定要写在settings.py里面
41.MongoDB支持对查询到的结果进行排序。排序的方法为sort()。它的格式为: handler.find().sort(‘列名’, 1或-1或0)
42.Cookies一般包含在请求头Headers中
43.在使用多线程处理问题时,线程池设置越大越好
44.自己能查看的数据,允许擅自拿给第三方查看
45.在发送请求时需要注意requests提交的请求头不能与浏览器的请求头一致,因为这样才能隐藏好自己达到获取数据的目的
46.使用UI Automatorr让屏幕向右滚动的操作是得到相应控件后使用命令scroll.horiz.forward()
47.使用AJAX技术,可以在不刷新网页的情况下更新网页数据
48.使用UI Automator使屏幕向上滚动一屏的操作是得到相应控件后使用命令scroll.vert.forward()
49.如果通过爬虫抓取某公司网站的公开数据,分析以后发现这个公司业绩非常好。于是将数据或者分析结果出售给某基金公司,从而获得销售收入。这是合法的。
50.在MacOS下若要运行Redis可以运行解压以后的文件夹下面的src文件夹中的redis-server文件启动redis服务 src/redis-server