Python网络爬虫与数据采集 试题及答案 共2套_第1页
Python网络爬虫与数据采集 试题及答案 共2套_第2页
Python网络爬虫与数据采集 试题及答案 共2套_第3页
Python网络爬虫与数据采集 试题及答案 共2套_第4页
Python网络爬虫与数据采集 试题及答案 共2套_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Python网络爬虫与数据采集答案选择题(每题2分)查看网站所用的技术可以使用以下的哪个模块(A)WadPython-whoisRequestUrllib以下的XPath中用于选取所用N节点的表达式是(C)N/N//NN/N正则表达式R[0-9]{3},能匹配出以下哪个字符串(D)R3R03R09R093以下数据库中不属于关系数据库的是(B)MysqlRedisMongpDBPostgreSQL以下关于cookie与session说法正确的是(D)Cookie数据保存在服务器中Session数据保存在本地浏览器一般将cookie数据保存在http的body中Session是指抽象的客户端-服务器交互模式以下re方法中用于替换字符串的是(B)MatchSubFind_allSplit以下哪一个python库用于语言处理(B)NumpyNLTKSympyScipy前端页面向后端发送表单数据通常使用(B)GetPostPutDeletepython的open方法中代表追加写内容的模式字符是(C)rwaw+在scrapy目录下,哪个文件负责存放爬虫文件(A)spiders文件夹Item.pyPipeline.pySetting.py判断题(每题2分)axios通过同步加载的方式完成对内容的获取与呈现(x)Requests比于urllib库更加简洁实用(√)Selenium相比于Splash更加的节约资源(x)DictReader可以将CSV的每一行作为一个字典来返回(√)numpy一般是被认为基于pandas设计的(x)Api与网页抓取共用许多概念与技术(√)破解滑动验证码需要实现图像拼接与匀速滑动(x)一般情况下ajax返回的数据是以xml形式封装的(√)Tag标签为a、img、audio时属性为src(x)Selenium的webdriver的版本必须和浏览器的版本相对应(√)填空题(每题2分)爬虫前我们应该了解网站的robots.txt文件信息以被反爬虫封禁的风险。CSV文件的分隔值是逗号。Python中内置的数据库模块是sqlit。python中主要使用pickle模块来实现序列化与反序列化。常用的中文文本分析工具有jieba、SnowNLP。BeautifulSoup中,通过tag的content属性可以将tag子节点以列表方式输出。字符串str可以通过strip方法来去除左右空格。用于re.findall函数中的http://[a-zA-Z0-9/\.-]*

表达式用于提取http://开始的超链接。解释Robots协议:网络爬虫排除协议。表示匹配空行的正则表达式是^$。简答题(每题4分)请简要说明使用Selenium的大致流程。创建浏览器对象访问页面定位网页元素网页交互是否可以将自己的爬虫的User-agent设置为知名爬虫呢。从代码的角度看,没有人会限制你使用什么样的User-agent,就是上面的例子。实际上,不断变换User-agent的值也是很多不友好爬虫为了躲避服务器的检测的常用做法。但是这种做法是非常不可取的,它扰乱了Web服务器的正常判断,就可能使得某种知名爬虫被检测出来不遵守Robots协议而产生纠纷。请简要说明点击一个网页链接,会发生的一系列时间。浏览器响应点击事件,解析url,

发起web请求,建立与服务端的连接,

服务端响应请求,服务端返回请示结果,浏览器处理返回的结果。请简要说明爬虫时应对图片验证码的主要思路有哪些。通过程序识别图片再转化为文字并输入。手动打码,避开程序破解验证码环节。使用人工打码平台服务。请简要说明cookie与session的区别。Cookie数据保存在本地,而session数据保存在服务器。Session是指象的客户端-服务器交互模式,而cookie是session的一个具体实现手段。应用题(每题10分)1、使用requests模块,将'/physicalstore/index/ajaxSearchStore/'?storeCity=苏州&storeProvince=江苏'中的参数提取出来单独作为参数并访问这个url.importrequestsurl='/physicalstore/index/ajaxSearchStore/'params={"storeCity":"苏州","storeProvince":"江苏"}res=requests.get(url,params=params)print(res.status_code)使用requests模块访问并通过正则表达式获取标题。importrequests,rer=requests.get('').content.decode('utf-8')pt=pile('(\<title\>)([\S\s]+)(\<title\>)')print(pt.search(r).group(2))Python网络爬虫与数据采集答案选择题(每题2分)Python中,可以用来存储数据的文件类型包括(D)txtcsvjson以上所有可以用来解析XML文档的库有哪些(B)BeautifulSouplxmlhtml.parser以上所有JupyterNotebook对python开发有什么帮助(D)插入数学公式制作演示文稿输入特殊关键字以上所有Python中用于进行自然语言处理的第三方库是(A)。A.nltkB.spacyC.gensimD.jieba通用网络爬虫主要由哪些机构或者服务商使用(B)电商平台搜索引擎金融机构媒体平台使用urllib.request.urlopen()方法请求网页时,如果需要添加请求头信息,应该使用哪个对象(C)ResquestResponseOpenerHandler使用selenium库进行动态页面抓取时,需要安装哪个组件(C)A.Chrome浏览器B.Chrome插件C.Chrome驱动D.Chrome扩展使用selenium库进行动态页面抓取时,可以使用哪个方法模拟鼠标点击(A)click()press()tap()touch()python的爬虫框架包括(D)scrapyPySpiderPortia以上所有python与处理图片相关的工具或库不包括(A)lxmlPILPillowOpenCV判断题(每题2分)解析HTML只能使用BeautifulSoup库(x)只能使用Matplotlib库来绘制图表(x)使用urllib.request.urlopen()方法请求网页时,可以直接添加请求头信息(x)使用用户代理池可以有效地防止被目标网站识别为爬虫(√)使用Api前,需要在提供Api服务的网站上申请一个接口服务(√)网络爬虫可以用任何编程语言实现,如PHP、Java、Python等(√)用urllib.request库进行浏览器伪装时,需要修改Referer字段(x)Ajax是一种异步的JavaScript和XML技术,它可以在不刷新整个页面的情况下,与服务器进行数据交换(√)lxml库可以解析HTML代码,并提取出所有标签、属性和文本内容(x)正则表达式中,$表示匹配输入的开始,^表示匹配输入的结束,如果设置了多行标志,则它们也可以匹配换行符前后的位置(x)填空题(每题2分)发送HTTP请求可以使用request模块。pandas是Python中用于处理表格数据的标准库,它支持多种格式的数据导入导出,如CSV、Excel、JSON等。使用Fiddler库进行抓包分析,可以查看浏览器与服务器之间的通信过程和数据。使用selenium库进行抓包分析,可以查看浏览器与服务器之间的通信过程和数据。cookies是指服务器为了一定目的而储存在用户本地的数据。避开网站反爬虫机制可以用伪装headers/使用代理IP地址/修改访问频率/动态拨号等。实现浏览器伪装、代理设置、Cookie处理等可以使用urllib.request库。在XPath语法中,用来表示当前节点的轴名称是self。网络爬虫需要遵守目标网站的robots协议,以免造成不必要的麻烦。协议,以免造成不必要的麻烦。单元测试除了可以用unittest模块,还可以使用pytest模块。简答题(每题4分)请简要说明什么是序列化和反序列化?序列化是将对象转换为可存储或传输的格式的过程。反序列化是将序列化后的数据恢复为原始对象的过程。如何在Python中使用requests库发送HTTP请求?可以使用requests库的get()或post()方法来发送HTTPGET或POST请求。例如:importrequestsresponse=requests.get('')简述Scrapy框架的优势(至少两条)支持多种数据输出格式,如JSON、CSV、XML等提供了一套完整的爬虫功能模块,包括请求管理、数据解析、数据存储、日志记录、异常处理等支持多种中间件和扩展组件,如代理池、Cookie池、反反爬机制等支持分布式爬取和增量式爬取,提高了爬虫的效率和稳定性请简要说明python相比MATLAB在科学计算和数据分析方面的优势(至少两条)。应用广泛有更多程序库简洁,易于编码有可移植性和可扩展性简述Xpath表达式的基本规则(至少两条)。Node1选取Node1下的所有节点/node1分隔号代表到某元素的绝对路径,此处即选择根上的Nodel//node1选取所有node1元素,不考虑XML中的位置node1/node2选取node1子节点中的所有node2node1//node2选取node1所有后辈节点中的所有node2.选取当前节点..选取当前的父节点//@href选取XML中的所有href属性应用题(每题10分)请写一个Python程序,用于从给定的多个csv文件中读取数据,并将数据合并成一个新的csv文件。importpandasaspd

csv_files=['file1.csv','file2.csv','file3.csv']

data=[]

forcsv_fileincsv_files:

df=pd.read_csv(csv_file)

data.append(df)

merged_data=pd.concat(data,axis=0)

merged_data.to_csv('merged_data.csv',index=False)使用selenium模拟页面下拉滚动。fromseleniumimportwebdriverfromselenium.webdriverimportActionChainsfromselenium.webdriver.common.keysimportKeysimporttime#滚动页面browser=webdriver.Chrome('yourchromediverpath')browser.get('

/')pri

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论