1、to_csv方法用于导出csv文件,导出的路径需要提前创建好。
答案:对
2、关于Python读取Excel文件,说法错误的是
答案:
read_excel方法属于pandas中的方法,可以直接使用 | 使用Python导出Excel文件,直接调用to_excel方法即可。 |
3、关于Python读取MySQL数据库,以下说明错误的是
答案:用Python读取MySQL数据库,查询结果默认为数据框形式
4、关于merge函数的描述正确的有
答案:
merge函数表示根据两组数据中的关键字(key)来合并 | merge函数默认是做内连接 | merge函数可以通过参数how设置连接的类型 |
5、关于分组统计函数groupby描述正确的有
groupby用于分组统计,属于pandas中的方法 | groupby必须与统计函数连用才有意义 | groupby可以按照多个字段进行分组,并且可以对多个字段应用不同的聚合函数 |
6、apply函数既可以按列应用,也可以按行应用,默认按列应用。
答案:对
7、关于Python中缺失值的描述正确的是
Python中,缺失值的标志是NaN,是not a number的缩写 | 判断缺失值可以用isna方法 | 丢弃缺失值用dropna方法 |
8、关于Python中缺失值的描述正确的有
丢弃缺失值用dropna方法 | 填充缺失值可以用fillna方法 | fillna方法可以用指定的值来填充缺失值 |
9、异常值又称为离群点,是指数值明显偏离其余观测值的数据。通过箱线图和模型法(如K-means聚类)均可找出异常值。
答案:对
10、关于数据标准化的描述正确的是
数据标准化是指数据缩放,即将数据按比例缩放,使其落入特定区间 | 标准分数是数据标准化的一种方法,是指利用数据的均值与标准差对数据进行标准化 | 对数据做log变换,也是标准化的一种方法 |
11、关于哑变量的描述正确的有
哑变量又称虚拟变量,一般指类别变量,例如性别、舱位等级等 | 在数据分析中,类别型的变量一般需要先转换为哑变量,才能引入模型 | pandas中有一个方法get_dummies,可以用于处理哑变量 | sklearn中的OneHotEncoder方法可用于处理哑变量 |
12、关于requests库的描述正确的是
requests库是一个第三方HTTP库,使用之前需要安装 | 安装命令为:pip install requests | 安装命令:pip install requests –i https://pypi.tuna.tsinghua.edu.cn/simple | requests库通过get方法请求网页对象 |
13、以下HTTP状态码,表示请求成功的是
答案:200
14、urllib和urllib3都是Python内置的库,requests是第三方库,需要安装
答案:对
15、使用XPath之前,需要先安装lxml库,安装命令:pip install lxml
答案:对
16、以下XPath语句,写法有误的是
答案:/bookstore/book[1]/title/text
17、使用XPath获取网页信息时,F12打开调试窗口开到的数据和网页源代码中的数据是一致的。
答案:错
18、关于XPath使用描述正确的有
答案:
使用XPath之前,需要设置网页的编码格式 | 同样的数据,可以使用不同的XPath语句获得 | XPath获得的结果为列表格式 |
19、关于正则表达式,描述错误的是
答案:正则表达式中,match与search作用相同,可以替换使用
20、关于正则表达式中常用函数描述正确的是
答案:
search扫描整个字符串,去匹配 | match从字符串的起始位置匹配,否则返回none。 | findall是全局匹配函数 | 这三个函数都需要导入re模块 |
21、正则表达式中,.可以匹配任意字符。
答案:错
22、关于爬取网页图片的说法正确的是
需要先找到网页源码中的图片地址 | 用Python爬虫获取到所有图片的地址 | 根据图片地址,用Python爬虫获取每一张图片 | 用for循环爬取多张图片 |
23、关于爬取网页图片描述错误的是
答案:保存图片时,Python爬虫会自动为图片命名
24、用Python爬虫获取网页图片,前提是需要在网页源代码中找到图片的地址。
答案:对
25、用正则表达式将字符串s1='360人已购买'中的非数字去除,以下写法正确的是
答案:re.sub('\D','',s1)
26、关于正则表达式模式字符串,描述正确的有
\d表示十进制数字 | \D表示非十进制数字 | [^\d]表示非十进制数字 | {n}表示恰好n次 |
27、正则表达式,匹配非空白字符用\S或者[^\s]都可以。
答案:对
28、关于Ajax数据描述正确的有
Ajax,Asynchronous JavaScript and XML,中文翻译:异步JavaScript | Ajax数据的特点:从服务器获取信息,网页不需要重新刷新 | Ajax其实有其特殊的请求类型,它叫作xhr | 有些Ajax数据,需要借助于抓包工具进行获取 |
29、在爬取某些网页的时候,有些数据在网页源代码中找不到,这种数据被称为Ajax数据,有些Ajax数据在浏览器中可以找到,有些则需要借助于抓包工具如Fiddler找到。
答案:对
30、关于浏览器模拟描述错误的是
答案:在requests的get方法中,通过参数header可以设置UA
31、关于fake-useragent描述错误的是
答案:
fake-useragent是一款十分好用的生成UA的工具,使用之前需要安装 | 安装命令:pip install fake-useragent | fake-useragent中,ua.random方法可以随机生成ua |
32、不使用工具fake-useragent,也可以构建浏览器代理池,网上搜集一些UA,放到一个列表中,构成浏览器代理池。
答案:对
33、关于设置代理IP描述正确的有
答案:
本机真实的IP地址可以通过第三方网站检测出来 | 在get方法中通过proxies参数设置代理IP | ip的格式为ip+端口号 |
34、关于超时异常描述错误的是
答案:超时异常很少遇见,其实可以不用处理
35、免费的代理IP不靠谱,时效快,付费的代理IP比较靠谱,但是会有使用限制,比如IP限制,或者账户、密码限制。
答案:对
36、关于BeautifulSoup描述正确的有
BeautifulSoup,美味的汤,是一个可以从网页中提取信息的Python库 | BeautifulSoup使用前需要安装,安装命令:pip install beautifulsoup4 | BeautifulSoup使用前需要导入,from bs4 import BeautifulSoup |
37、BeautifulSoup对象表示的是一个文档的全部内容,通过prettify()方法可以将文档内容按照标准的缩进格式的结构输出。
答案:对
38、利用BeautifulSoup查找class属性的div标签,写法正确的有
house_tag=soup.find_all('div',class_='f-list-item ershoufang-list') | house_tags=soup.find_all('div',{'class':'f-list-item ershoufang-list'}) |
39、BeautifulSoup中的函数find_all表示搜索当前tag的所有tag子节点,返回一个符合给定条件的列表。
答案:对
40、以下哪一个不是BeautifulSoup中的三大常见节点?
答案:根节点
41、关于selenium描述正确的有
Selenium 是一个用于Web应用程序测试的工具,自动化测试工具。 | 支持多种主流浏览器,包括IE,Mozilla Firefox,Safari,Google Chrome等 | 安装命令:pip install selenium |
42、Selenium元素查找,按照class属性名称查找为
答案:find_element_by_class_name
43、Selenium安装好之后,还需要下载浏览器驱动(webdriver),下载后的浏览器驱动放到本机任意目录下即可。
答案:错
44、关于等待页面加载描述正确的有
答案:
等待页面加载是由于浏览器解析页面需要时间,比如执行css、js等 | 等待页面加载有两种方式:隐式等待和显式等待 | 显式等待在browser.get(‘xxx’)前就设置,针对所有元素有效,例如 browser.implicitly_wait(3) |
45、元素交互操作,以下表示模拟输入回车键的是
答案:driver.find_element_by_id('kw').send_keys(Keys.ENTER)
46、Selenium中,find_element_by_xxx
表示查找单个元素,查找多个元素,将element变成elements即可。
答案:对
47、关于post方法描述正确的有
post表示向服务器发送信息 | post方法通过参数data设置 | 参数data格式为字典格式 |
48、关于Session与Cookie描述错误的是
答案:cookie和session都是在服务器端记录信息确定用户身份
49、要想发送cookies到服务器,可以使用 cookies 参数,用法为:
requests.get(url,cookies=r.cookies)
答案:对
50、关于Scrapy描述正确的有
答案:
Scrapy是一个爬虫框架 | Scrapy使用前,需要安装,安装命令:pip install Scrapy | 在命令窗口中,可以通过在命令行窗口中输入“scrapy”确定Scrapy是否安装成功 |
51、关于Scrapy爬虫项目,以下文件需要在settings文件中启用的是
答案:pipelines.py
52、Scrapy爬虫项目,spiders目录下的爬虫文件需要通过命令行生成。
答案:对
53、关于Scrapy爬虫项目,爬虫文件编写描述正确的是
答案:Scrapy中使用正则表达式,不用导入re模块
54、创建Scrapy爬虫项目后,需要通过cd命令进入到该项目目录,再使用genspider命令为该项目创建爬虫文件
答案:对
55、关于Python连接MySQL数据库描述正确的有
答案:
需要安装PyMySQL这个库 | 调用pymysql中的connect方法 | connect方法中的参数user、passwd为自己的用户名和密码 |
56、关于Python向MySQL数据库插入记录说法有误的是
答案:插入数据库的表可以不存在,插入过程自动创建
57、Python向MySQL数据库插入数据,用for循环+execute方法也可以插入多条记录。
答案:对
58、关于Scrapy爬虫项目描述有误的是
答案:Request方法可以直接调用,不需要导入任何模块
59、关于Scrapy爬虫项目,将数据导入MySQL数据库说法正确的有
答案:
在pipelines文件中编写相关代码,需要导入PyMySQL模块 | 在open_spider方法中,编写连接MySQL数据库的代码 | 在process_item方法中,编写插入数据的相关代码 | 在close_spider方法中,编写关闭数据库连接的相关代码 |
60、Scrapy爬虫项目中,在middlewares文件中设置UA及代理IP,需要在settings文件中取消参数DOWNLOADER_MIDDLEWARES的注释
答案:对
61、关于Python多线程与多进程描述有误的是
答案:Python的多线程受GIL限制,无法实现多线程。
62、关于Python多线程描述正确的有
答案:
Python是支持多线程的,主要是通过thread和threading这两个模块来实现的 | threading模块是对thread做了一些封装,可以更加方便的使用 | Python通过start方法启动子线程,通过join方法保持子线程 | 通过多线程会节省多个任务执行的时间 |
63、多线程爬虫可以提高Python爬虫的效率,多进程爬虫无法提高Python爬虫的效率!
答案:错
64、关于pandas描述正确的有
答案:
pandas基于Numpy构建,因此安装前需要先安装Numpy | 安装pandas的命令:pip install pandas | pandas有两大数据结构:Series和DataFrame | pandas使用前需要导入,导入方式:import pandas as pd |
65、关于Series和DataFrame描述有误的是
答案:无法创建一个空的DataFrame
66、DataFrame中获取某一列的值有两种写法,一种是通过括号+引号,例如jobInfo['职位名'],另一种是.获取,例如jobInfo.职位名
答案:对
67、关于pandas中的常用方法描述正确的有
答案:
通过loc方法可以获取某一行的值 | 通过drop方法可以丢弃某一列的值 | 通过unique方法可以获取唯一值 |
68、关于pandas中透视表函数pivot_table描述有误的是
答案:参数aggfunc用于指定统计函数,不能指定多个
69、pandas中的函数value_counts可以统计频率,默认为降序排列,通过参数ascending=True可以指定按升序排列。
答案:对
70、调用read_csv读取csv文件时,可以通过参数index_col指定index。
答案:对
71、关于数据集合并函数merge和concat描述正确的有
merge:根据两组数据中的关键字(key)来合并 | concat:轴向连接,不管列名,直接加到一起 | merge和concat都是pandas中的函数,调用时需要导入pandas |
72、关于分组统计函数groupby与apply描述有误的是
答案:apply函数不能跟groupby结合使用
73、ETL是下面哪几个单词的缩写?
答案:Extract-Transform-Load
74、ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程。
答案:对
75、一般ETL工具只能处理来自关系数据库的数据,不能处理文件数据。
答案:错
76、ETL做数据抽取时,要考虑的主要因素不包括:
答案:抽取人员
77、ETL在做数据抽取时应该尽量选择源数据系统使用的()时段。
答案:低频时段
78、数据清洗的目的就是选择出有缺陷的数据,然后再将它们正确化和规范化,从而达到数据分析或数据挖掘需要的数据质量标准。
答案:对
79、ETL进行数据处理的时候,认为不同数据源中的对性别的描述有的用“男女”有的用字母“M、F”,这种情况属于:
答案:数据错误
80、数据清洗主要清洗“脏”数据,其他数据缺陷不需要处理。
答案:错
81、国家数据质量标准中对下面哪一项没有要求?
答案:数据可移植性
82、数据采集与预处理中,数据库数据、文本文件,表格文件、网页文件属于异构数据。
答案:对
83、ETL中数据转换主要进行数据的整合和集成、数据粒度的转换,以及一些商务规则的计算。
答案:对
84、Kettle是一款免费开源的、可视化的、功能强大的ETL工具。
答案:对
85、现在用的Kettle实际上是指PDI的开源版。
答案:对
86、Datastage是IBM公司的开发一款非常专业的ETL处理工具,适合大规模的ETL应用。
答案:对
87、PowerCenter是Informatica公司开发的世界级的企业数据集成平台,也是业界领先的ETL工具。
答案:对
88、Kettle是纯Java编写的ETL工具,需要在JDK环境下运行。
答案:对
89、在Kettle中要连接mysql数据库和Oracle数据库,只要配置其种任意一种数据库驱动就可以了。
答案:错
90、Spoon是Kettle用于编辑作业和转换的图形界面接口。
答案:对
91、Pentaho Data Integration(PDI)分为商业版与开源版 。在中国,一般人仍习惯把Pentaho Data Integration的开源版称为Kettle。
答案:对
92、Kettle中,转换由step和hop构成。
答案:对
93、关于Kettle中的作业,下列说法正确的是:
答案:转换中的步骤是并发执行的
94、关于kettle中的作业和转换的关系,下列说法错误的是:
答案:一个作业包含一个或者多个作业项,这些作业项以某种顺序来执行
95、下面哪项工作不属于ETL的工作范畴?
答案:数据报表分析
96、Kettle安装后不能正常启动有可能是以下哪种原因?
答案:没有安装JDK或JDK环境变量没有配置好
97、Kettle中不能正确访问数据库可能是哪种原因?
没有配置数据库驱动 | 数据库服务器主机IP错误 | 访问数据库的用户名和密码错误 | 以上都有可能 |
98、如何判断JDK是否正确安装和配置?
答案:在program files下面有java文件夹存在说明安装配置成功
99、启动kettle图形化操作界面需要运行下面哪个文件?
答案:spoon.bat
100、下面哪一项不是kettle的组成模块?
答案:Table(桌子)