python读取excel并生成指定列的二维码

需要导入的包和模块

# 导入二维码生成模块
import qrcode
# 导入excel模块
import xlrd
# 位置模块
import os

安装包方法:
pip install XXX(包名)

文件配置按照绝对位置的方法进行

点击可查看我之前对位置的描述 url:https://blog.csdn.net/Haywardwang/article/details/106388551

# 导入二维码生成模块
import qrcode
# 导入excel模块
import xlrd
# 位置模块
import os


# 生成二维码
def create_qrcode(name,content,path=''):
    # 定义二维码的演示和规则
    qr=qrcode.QRCode(
        version=2,
        error_correction=qrcode.constants.ERROR_CORRECT_H,
        box_size=5,
        border=1
    )
    # 指定要生成的二维码数据来源
    qr.add_data(content)
    qr.make(fit=True)

    img=qr.make_image()
    file='{}.png'.format(os.path.join(path,name))

    print(file)
    with open(file,'wb') as f:
        img.save(f)



# 主程序模块
if __name__ == "__main__":
    # ----------------------------------------在此处找到要操作的excel文件----------------------------------------
#     os.chdir('C:/Users/gulu/Desktop/python/xiangma')     
    path = './笑话.xlsx'
    # 定义excel文件
    data = xlrd.open_workbook(path)
    # 指定读取的表头名
    table = data.sheet_by_name("好笑话")
    # 查看表中的数据量
    rowNum = table.nrows

    # 遍历每一行,并根据列来输出
    for i in range(rowNum):
        # 读取excel中某一行中的数据,并以列表的形式返回
        irow = table.row_values(i)
        # 读取这一列中的某个内容
        code=irow[0]
        url=irow[1]
        # 转化字符格式,并准备输出
        filename=str(code)
        content=url
        # 将准备好的内容给create_qrcode函数,准备生成二维码
        # ------------------------------------------------"./"后面跟的是一个文件名,这个文件需要创建-----------------------
        create_qrcode(filename, content, path='./生成二维码')
        # 输出已生成的二维码名
        print('['+str(i)+']' + str(u'already generated')+str(irow[0]))
        
        

这些数据从哪儿获取?

# 导入库

import requests
from fake_useragent import UserAgent
import re
import pandas as pd


# 伪装浏览器
url = "https://www.qiushibaike.com/text/page/1/"
headers = {
    "User-Agent":UserAgent().random
}


# 构造请求 - 获取源码
response = requests.get(url,headers = headers)
info = response.text


infos = re.findall(r'<div class="content">\s*<span>\s*(.+)\s*</span>',info)
print(infos[0])


import pandas as pd

# 将列表转成DataFrame,
data1 = {
    "小说":infos
}
df1 = pd.DataFrame(data1)



# 写入excel和txt文档


df1.to_excel("./笑话.xlsx",sheet_name="好笑话",encoding="utf-8")

df1.to_string("./笑txt话.txt",encoding="utf-8")

import os
print(os.listdir())
print(os.getcwd())

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值