网络爬虫及openyxl模块

网络爬虫及openyxl模块

一、第三方模块简介

1.第三方模块的用处

    python之所以在这么多的编程语言中脱颖而出的优点是有众多的第三方库函数,可以更高效率的实现开发

2.第三方模块的使用

1.第三方模块必须下载才能使用
 格式:pip install 模块名 -i 源地址
        清华大学 :https://pypi.tuna.tsinghua.edu.cn/simple/
        阿里云:http://mirrors.aliyun.com/pypi/simple/
        中国科学技术大学 :http://pypi.mirrors.ustc.edu.cn/simple/
        华中科技大学:http://pypi.hustunique.com/
        豆瓣源:http://pypi.douban.com/simple/
        腾讯源:http://mirrors.cloud.tencent.com/pypi/simple
        华为镜像源:https://repo.huaweicloud.com/repository/pypi/simple/
2.可在终端借助pip工具下载
格式:
    下载第三方模块的句式:pip install 模块名
    下载第三方模块临时切换仓库的句式:pip install 模块名 -i 仓库地址
    下载第三方模块指定版本(不指定默认是最新版):pip install 模块名 == 版本号 -i 仓库地址
注:在下载解释器pip解释器工具的时候,电脑上有多个版本的解释器时一定要注意到底用的是哪一个,在使用或者添加的时候一定要看清楚对应的版本号
3.在pycharm中也可以直接下载
图片名称

3.下载第三方模块的注意点

1.pip版本过低并有警告信息
 # WARNING: You are using pip version 20.3.1; 
 原因是pip版本过低,只需要输入命令行更新模块就好了
 python -m pip install --upgrade pip
2.报错含有Timeout关键字
  说明当前计算机的网络不稳定,只需要换网或者程序执行几次即可
3.报错没有关键字
  将关键字复制到百度进行搜索,然后进行解决
4.下载速度很慢
  		pip默认下载的仓库地址是国外的 python.org
		我们可以切换下载的地址
		pip install 模块名 -i 仓库地址
		pip的仓库地址有很多 百度查询即可

二、网络爬虫基础实战

import requests
import re

headers = {
    'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36'
}
res = requests.get('http://www.redbull.com.cn/about/branch', headers=headers)
data = res.text
res.encoding = 'utf-8'  # 可以直接用utf-8对数据进行转码
with open(r'hn.html', 'wb') as f:
    f.write(res.content)
# 1.获取所有的分公司名称
company_name_list = re.findall('<h2>(.*?)</h2>', data)
# 2.获取所有的分公司地址
company_addr_list = re.findall("<p class='mapIco'>(.*?)</p>", data)
# 3.获取所有的分公司邮箱
company_email_list = re.findall("<p class='mailIco'>(.*?)</p>", data)
# 4.获取所有的分公司电话
company_phone_list = re.findall("<p class='telIco'>(.*?)</p>", data)
# 5.将上述四个列表中的数据按照位置整合
res = zip(company_name_list, company_addr_list, company_email_list, company_phone_list)
# 6.处理数据(展示 保存 excel)
for i in res:
    print("""
    ----------------------------公司名称:%s----------------------------
    公司地址:%s
    公司邮箱:%s
    公司电话:%s
    -----------------------------------------------------------------------------
    """ % i)
图片名称

三、openpyxl模块

1.openpyxl模块的作用
  主要用于操作excel表格,实现自动化办公
2.Excel文件的后缀名的问题
   03版本之前 ---->>> .xls
   03版本之后 ---->>> .xlsx
3.操作excel表格的第三方模块
  xlwt往表格写入数据、wlrd从表格读取数据
    兼容性强
  openpyxl最近几年比较火热的操作excel表格的模块
    03版本之前的兼容性较差
实战:
from openpyxl import Workbook

user_excel = Workbook()  # 创建excel
grades = user_excel.create_sheet('成绩表')  #成绩表
physique = user_excel.create_sheet('体质表')  #体质表
name = user_excel.create_sheet('姓名表',0)  #姓名表
physique.title = '体能表'
name.sheet_properties.tabColor = '8B0000' #修改姓名表的颜色
# 第一种写入方式
name['A1'] = '小明同学'
name['B1'] = '男'
# 第二种写入方式
name.cell(row=1, column=3, value='28')
name.cell(row=1, column=4, value='小菜鸡')
# 第三种写入方式(批量写入)
name.append(['小红同学', '女', '18', '貌美如花'])
name.append(['小天同学','男', '20', '一顿能吃'])
name.append(['小维同学', '男', 18, '多看书'])

user_excel.save(r'user_excel.xlsx')  # 保存文件
图片名称

posted @ 2022-10-26 18:57  小王应该在学习!  阅读(64)  评论(0编辑  收藏  举报