ximalangyashan 2022-05-09 17:13 采纳率: 98.9%
浏览 62
已结题

如何把获取的数据保存到Excel

如何把已经获取的数据怎么保存到Excel,如何让这个Excel直接出现在桌面

img

img

img

  • 写回答

3条回答 默认 最新

  • CSDN专家-showbo 2022-05-09 21:24
    关注

    先留个档,大概下面这个样子,strtodict函数懒得打了,明天在看看,题主自己照搬下

    
    from selenium import webdriver
    from selenium.webdriver.common.by import By
    import time
    from openpyxl import Workbook
     
    url='采集的网址'
     
    d=webdriver.Chrome()
    d.maximize_window()
    d.get(url)
    d.delete_all_cookies()
    cookie = {}#登录系统,获取生成的cookie放到这个字典里面
     
    d.add_cookie(cookie_dict=cookie)
     
     
    d.get(url)
     
    els=d.find_elements(By.CSS_SELECTOR,'a.layui-btn-danger')##考核按钮
    print('审核按钮==>',els)
    
    wb=Workbook()
    ws=wb.active
    infoKeys=['assessmentId','name','sex','signId','idno','patientId','age','signDate','totalScore','drId','teamId','signFromDate','signToDate','groupName','isFinish','operate']
    scoreKeys=['签约档案的齐全','建立居民电子健康档案','有效沟通1次以上','提供签约对象刷深灰保障卡服务记录1次','签约对象提供健康咨询服务','由“家庭医生服务团队”提供每月不少于半天','所有人群(包括健康诊疗、宣传,咨询情况等)','健康人群调阅健康档案情况','满意度测评']
    ws.append(infoKeys+scoreKeys)#表头
    
    ##点击当前页所有考核按钮打开对应iframe
    for el in els:
        el.click()
        time.sleep(2)#暂停2s加载数据
     
        iframe=d.find_element(By.CSS_SELECTOR,'.layui-layer-content iframe')#获取iframe详情页
        objinfo=strtodict(iframe.get_attribute('src'))
        
        row=[]
        
        for col in infoKeys:###用户信息
            row.append(objinfo.get(col,'--'))
    
    
        print('详细页==》',iframe)
        d.switch_to.frame(iframe)#切换到iframe
        scoreInput=d.find_elements(By.CSS_SELECTOR,'input.scoreInput')#分数输入框
    
    
        for i in range(len(scoreKeys)):###得分情况
            row.append(scoreInput[i].get_attribute('value'))
    
        ws.append(row)#写入数据
    
        #for ipt in scoreInput:
        #    print(ipt.get_attribute('value'),end=' ') 
     
        d.switch_to.default_content()  #切换回原页面
        jscode="$('.layui-layer-shade,.layui-layer-loading,.layui-layer-iframe').remove()"
        d.execute_script(jscode)#执行脚本移除layui弹出层
            
     
    ws.save("采集的数据.xlsx") ##保存文件,和当前文件再同一个目录下
    #d.quit() 
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 5月18日
  • 已采纳回答 5月10日
  • 创建了问题 5月9日

悬赏问题

  • ¥15 关于某款2.13寸墨水屏的问题
  • ¥15 obsidian的中文层级自动编号
  • ¥15 同一个网口一个电脑连接有网,另一个电脑连接没网
  • ¥15 神经网络模型一直不能上GPU
  • ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
  • ¥20 wpf datagrid单元闪烁效果失灵
  • ¥15 券商软件上市公司信息获取问题
  • ¥100 ensp启动设备蓝屏,代码clock_watchdog_timeout
  • ¥15 Android studio AVD启动不了
  • ¥15 陆空双模式无人机怎么做