学习python的第十天

xls文件的读写模块

xlwt:xls文件写操作。
xlrd:xls文件读操作。

openpyxl和xlwt\xlrd对比

  1. openpyxl行列号从1开始;xlwt、xlrd行列号从0开始。
  2. 两者都可以对工作表进行操作。
  3. 两者都可以用单位格定位的形式进行单元格操作。
  4. xlwt写操作使用过write()写。
    安装命令:
    pip/pip3 install xlwt
    pip/pip3 install xlrd

xls文件的写操作

  1. 导入第三方库
import xlwt
import random
  1. 创建文件
wb = xlwt.Workbook()
  1. 创建工作表
sheet1 = wb.add_sheet('一年级一班成绩表')
sheet2 = wb.add_sheet('一年级二班成绩表')
sheet3 = wb.add_sheet('一年级三班成绩表')
  1. 写入数据
names = ['张飞','刘备','关羽','貂蝉','曹操']
for i in range(len(names)):
    # 写入学生名字
    sheet1.write(i,0,names[i])
    for j in range(1,4):
        # 工作表.write(row,col,content)
        sheet1.write(i,j,random.randint(0,100))
  1. 保存关闭
wb.save('一年级成绩表.xls')

xls文件的读操作

  1. 导入第三方库
import xlrd
  1. 打开文件
wb = xlrd.open_workbook('一年级成绩表.xls')
  1. 选择工作表

sheet_names():查看存在的所有工作表。

print(wb.sheet_names())
# ['一年级一班成绩表', '一年级二班成绩表', '一年级三班成绩表']

sheet_by_index():根据下标查看某个工作表。
sheet_by_name():根据工作表名查看工作表。

ws1 = wb.sheet_by_index(0)
print(ws1.cell(0,0).value)
ws2 = wb.sheet_by_name('一年级一班成绩表')
print(ws2.cell(0,0).value)
# 张飞
# 张飞
  1. 获取最大行列数

nrows:获取最大行数、ncols:获取最大列数

print(ws2.nrows,ws2.ncols)
# 5 4

爬虫的初步了解

爬虫(网络数据采集):按照程序员的想法,由程序员自定义规则编写程序批量的爬取数据(图片、音频、视频、数据等)。

爬虫的流程:

  1. 解析HTML页面。
  2. 根据前端的语法或者正则表达式提取数据。
  3. 保存数据。

爬虫需要用到的模块:

requests、urllib、selenium、playwright等。

requests:通过网址向服务器发送请求,等待服务器的响应结果。

下载第三方模块requests:pip install requests

requests的使用

  1. 导入第三方库
import requests
  1. 获取网址,向网址发出请求
URL = 'https://pvp.qq.com/web201706/index.shtml'
# 向哔站发送请求
  1. 获取B站服务器的响应结果
response = requests.get(url=URL)
print(response)
# <Response [200]>
# status_code:状态码---判断服务器和网页状态
# 200:表示程序和服务器正常通信
# 403:表示服务器理解客户端的请求,但是拒绝了客户端的请求。
# 404:网页丢失。
# 500:服务器崩溃。
print(response.status_code)
# 如果网页发生乱码,只需要按照页面指定编码方式解码即可
# charset="gbk"

requests默认使用ISO-8859-1的编码(ASCLL
也能使用页面服务器所指定的编码方式。
UTF-8(万国码)、gbk(国标码)
如果页面中没有charset = ‘编码’:response.encoding = None
response.encoding = ‘gbk’

  • 使用text:页面源代码(字符串类型)

    print(response.text, type(response.text))
    
  • 使用content:网页源代码(二进制形式(字节))

    print(response.text, type(response.text))
    

使用requests进行图片下载

import requests
# 图片地址
# URL = 'https://game.gtimg.cn/images/yxzj/coming/v2/skins//image/20220623/16559729431894.png'
# 视频地址
URL = 'https://video.pearvideo.com/mp4/adshort/0220614/cont-1765337-15895934_adpkg-ad_hd.mp4'

response = requests.get(url=URL)
if response.status_code == 200:
    print(response.content)
#     将图片写入本地文件
#     photo = open('1.png','wb')
#     photo.write(response.content)
#     photo.close()
#     将视频写入本地文件
    video = open('1.mp4','wb')
    video.write(response.content)
    video.close()
else:
    print(f'状态码:{response.status_code}')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值