复习题

   

一、问答题

1.Anaconda的优点有哪些?

(1)开源。

(2)安装过程简单。

(3)⾼性能使⽤Python和R语⾔。

(4)免费的社区⽀持。

(5) Conda包管理。

(6) 1,000+开源库

2.爬虫技术是什么?它的设计流程有哪些?

通过递归访问网络资源,抓取网络中信息的数据。

Scrapy是一个用于爬取网页、提取结构化数据的应用的框架,可用于数据挖掘、信息处理或历史归档等的应用系统。

(1)Scrapy Engine:负责Spider、ItemPipeline、Downloader、Scheduler中间的通讯,信号、数据传递等;

(2)Scheduler:它负责接受引擎发送过来的Request请求,并按照一定的方式进行整理排列和入队,当引擎需要时交还给引擎;

(3)Downloader:负责下载Scrapy Engine发送的所有Requests请求,并将其获取到的Responses交还给Scrapy Engine,由引擎交给Spider来处理;

(4)Spider:负责处理所有的Responses,从中分析提取数据,获取Item字段需要的数据,并将需要跟进的URL提交给引擎,再次进入Scheduler;

(5)Item Pipeline:负责处理Spider中获取到的Item,并进行后期处理(详细分析、过滤、存储等)的地方;

(6)Downloader Middlewares:一个可以自定义扩展下载功能的组件;

(7)Spider Middlewares:一个可以自定义扩展的操作引擎和Spider中间通信的功能组件。

3.Python提供了大量用于编写网络爬虫程序的标准库和扩展库,请列举5个,并说说它们各自的特点。

(1)urllib库:它提供了urllib.request、urllib.response、urllib.parse和urllib.error四个模块,很好地支持了网页内容读取功能;它结合Python字符串方法和正则表达式,可以完成一些简单地网页内容爬取工作,也是理解和使用其他爬虫库地基础。

(2)Scrapy:它是一个非常好用地Web爬虫框架,非常适合抓取Web站点从网页中提取结构化的数据,并且支持自定义需求。

(3)BeautifulSoup是一个非常优秀的扩展库,可以用来从HTML或XML文件中提取我们感兴趣的数据,并且允许指定使用不同的解析器。

(4)Requests可以使用更简洁的形式来处理HTTP和解析网页内容。

(5)Selenium是一个用于Web应用程序测试的工具,可以用来驱动几乎所有的主流浏览器,完美模拟用户操作,从终端用户的角度测试应用程序。

二、请填写缺失的代码。

1. from bs4 import BeautifulSoup

file = open('samples/./htmlsample01.htm', 'rb')

html = file.read()

bs = BeautifulSoup(html,"html.parser")

# 获取title标签的所有内容

print( ) bs.title

# 获取head标签的所有内容

print( ) bs.head

# 获取第一个a标签的所有内容

print( ) bs.a

# 类型

print( ) type(bs.a)

2. from selenium import webdriver  #导入库

from selenium.webdriver.common.by import By

browser = webdriver.Chrome() #导入引擎

url = 'https://www.taobao.com'  #设置要访问的网站

browser.get(url)

input_1 = #调用查找元素函数找到id为q的元素 browser.find_element(By.ID, 'q')

print( ) #打印输出结果   input_1

3. #导入相关的库

import matplotlib.pyplot as plt

import pandas as pd

import numpy as np

#绘制条形图

df= pd.DataFrame(np.random.rand(10,4),

) columns=['a','b','c','d']

df.plot.bar()

plt.show()

三、论述题

1.请谈谈抽取Word文档文本信息的案例的算法思路。

(1)切分文件上级目录和文件名。

(2)修改转化后的文件名。

(3)设置保存路径。

(4)加载处理应用,将Word转为txt文本。

(5)本地化保存文本。

四、程序设计题。

1.代码如下,请写出输出结果。

import numpy as np  #导入数组

arr2 = np.array([[1,2],[3,4],[5,6]])

print("数组的维数:",arr2.ndim)

print("数组元素总个数:",arr2.size)

print("元素类型:",arr2.dtype)

www.wwwwwwwwww相关推荐

  1. (WWWWWWWWWW)codevs 3305 水果姐逛水果街Ⅱ

    写这么长了不A有点舍不得.. 想A又调不出来.. 于是乎就存一下.. 屠龙宝刀点击就送 #include <cstdio> #include <vector> #define ...

  2. python3.6 asyncio paramiko_Python开发【第六篇】:模块

    模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才 ...

  3. python基础知识8——常见内置模块

    Python之路-python(常用模块学习) 模块介绍 time &datetime模块 random os sys shutil shelve xml处理 yaml处理 configpar ...

  4. python常用模块大全总结-python常用模块整理

    一.序列化 Python中用于序列化的两个模块 json 用于[字符串]和 [python基本数据类型] 间进行转换 pickle 用于[python特有的类型] 和 [python基本数据类型]间进 ...

  5. Day05 - Python 常用模块

    1. 模块简介 模块就是一个保存了 Python 代码的文件.模块能定义函数,类和变量.模块里也能包含可执行的代码. 模块也是 Python 对象,具有随机的名字属性用来绑定或引用. 下例是个简单的模 ...

  6. Python操作git

    一.Git版本管理 很多公司在使用git的tag进行版本的管理. git tag -n 查看本地Tag git tag -l 'v1.4.2.*' 查看本地Tag,模糊匹配 git show v1.0 ...

  7. python-shutil学习

    python-shutil学习 shutil:高级的 文件.文件夹.压缩包 处理模块 1. shutil.copyfileobj(fsrc, fdst[, length])(copyfileobj方法 ...

  8. 模块讲解----shutil模块(copy、压缩、解压)

    作用与功能 主要用于文件的copy,压缩,解压 导入shuitl模块: import shutil copy方法 1 1.shutil.copyfileobj() 打开file1,并copy写入fil ...

  9. Python 的文件IO相关操作说明

    Python进行文件读写的函数为open或file: file_handler = open(filename,,mode) open mode w 以写方式打开文件,可向文件写入信息.如文件存在,则 ...

最新文章

  1. 【怎样写代码】参数化类型 -- 泛型(一):泛型概述
  2. 这是一份非常全面的开源数据集!
  3. RabbitMQ 构建高可靠集群架构
  4. 金融数据分析熟练使用Excel
  5. 11月热门下载资源TOP100强力推荐!
  6. pandas:sample函数解释
  7. 格式塔理论的四个原则_使用格式塔理论改善用户体验
  8. 成功解决TypeError: Encoders require their input to be uniformly strings or numbers.
  9. Visio 安装暴雷记录
  10. Axure R8学习记录
  11. arcgis属性表中的某一字段保留1位小数
  12. [米家]窗帘电机【立创开源】
  13. Delphi6/7/2007获取类型信息
  14. 音视频开发:大华摄像头配置RTSP与RTMP地址访问视频画面
  15. 团队管理2 | 管理的天时、地利、人和
  16. 专线宽带和家庭宽带有什么区别呢?网络专线有哪些?
  17. Sobel算子->方向滤波
  18. 美团OCTO万亿级数据中心计算引擎技术解析
  19. UVALive 5739|User Names|模拟
  20. Swift String常用方法

热门文章

  1. Minio 在Linux环境部署报错error occured ErrorResponse(code=InternalError, message=We encountered an internal
  2. struts2+hibernate留言板并发布到自己的主机上(-)
  3. (轻便)调试JavaScript的旺旺插件(基于jzshmyt的javascript-logger)
  4. 大悲寺——依教奉行溯正源,良苦用心谁人知?纵然世间一比丘,不退初心证菩提。[转]...
  5. 为什么var可以重复声明
  6. 高效App渠道统计如何进行
  7. 1、阅读和了解什么是形式化方法 2、推荐阅读书籍《大象——thinking in UML》
  8. 产品运营:用户为什么要用你的产品
  9. (课程类 Course)
  10. 网易严选——迅速崛起的新消费品牌