问卷星图片自动提取小程序

为了解决摄影比赛征稿Excel中链接形式的图片不便处理的问题,开发了一个小程序,能够自动化地按顺序将问卷星中的图片下载到指定文件夹,简化了手动下载的繁琐过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在摄影比赛征稿的时候,发现收到的excel汇总中图片是用链接的形式给出的,非常不方便,尤其是人比较多的时候也懒得一个个下载,所以写了一个小程序自动把这些图片按照顺序分文件夹下载好,以下内容均可按照注释自行修改~

"encoding=utf-8"

import urllib.request
import xlrd
import pandas as pd
import os

def dld(url,place):#将url中的文件下载到place
    urllib.request.urlretrieve(url, place)

df = pd.read_excel("C:/Users/XXX/Desktop/XXX/233.xlsx", sheet_name='Sheet1')#输入问卷星的excel表格的文件路径
for i in df.index:#默认以表格的第一列作为处理顺序
    try:
        tempnum=df.loc[i,"8、投稿数量"]
        tempname=df.loc[i,"3、您的姓名(将用于作品后续展示)"]
        filesite="C:/Users/XXX/Desktop/XXX/"+str(i)+" "+str(tempname)+"/"#在输入的文件路径下创建文件夹并插入对应文件
        folder = os.path.exists(filesite)
        if not folder:  # 判断是否存在文件夹如果不存在则创建为文件夹
            os.makedirs(filesite)
        tempintro=df.loc[i,"12、作品题目"]# 在文件名中添加问卷中收集的作品题目
        if(tempnum>=1):
            tempurl=df.loc[i,"9、作品1"];#处理该列的链接
            tempfile=filesite+tempintro+"1.jpg"
            dld(tempurl,tempfile)#将该列的链接下载到名为tempfile的地址
            #(这里为创建的文件夹下名为1.jpg的位置)
        if (tempnum >= 2):
            tempurl = df.loc[i, "10、作品2"];#同上,下载到2.jpg
            tempfile = filesite+tempintro+"2.jpg"
            dld(tempurl, tempfile)
        if (tempnum >= 3):
            tempurl = df.loc[i, "11、作品3"];
            tempfile = filesite+tempintro+ "3.jpg"#同上,下载到3.jpg
            dld(tempurl, tempfile)
        tempdescription=df.loc[i,"13、作品简介"]
        tempfile=filesite+tempintro+"作品简介.txt"
        file = open(tempfile, 'w')
        file.write(tempdescription)
        file.close()
    except:
        print("在编号为",i,"的文件中写入错误")

### 实现微信小程序跳转至问卷小程序 要实现从一个微信小程序跳转到另一个特定的小程序,比如问卷小程序,可以利用 `wx.navigateToMiniProgram` API 来完成这一操作。此功能允许开发者通过指定目标小程序的应用 ID 和页面路径来发起跨小程序的导航请求。 对于具体实施而言,在准备执行跳转之前应当先验证用户是否已经登录并获取必要的会话信息。如果尚未登录,则需引导用户完成登录流程后再尝试跳转[^3]: ```javascript const sessionId = wx.getStorageSync('sessionKey'); if (!sessionId) { // 执行登录逻辑... } ``` 一旦确认用户已成功登录并且拥有有效的 session 或 token 后,就可以调用 `navigateToMiniProgram` 方法来进行实际的跳转动作。需要注意的是,这里不仅需要提供目标小程序的 AppID (`appId`) 参数,还需要指明具体的页面路径 (`path`) 以及可能附带的数据参数 (如活动 ID): ```javascript wx.navigateToMiniProgram({ appId: 'wxd947200f82267e58', // 这里应该替换为问卷官方提供的AppID path: 'pages/index/index?activityId=123456', success(res) { // 成功打开后回调函数 }, fail(err) { console.error("跳转失败", err); } }); ``` 上述代码片段展示了如何构建一次完整的跳转请求。其中 `appId` 是问卷小程序的实际应用标识符;而 `path` 则指向了问卷列表的具体位置,并附加了一个名为 `activityId` 的查询字符串用于传递额外的信息给接收方处理。 值得注意的是,由于不同版本之间可能存在差异,因此建议始终查阅最新的 [微信开放文档](https://developers.weixin.qq.com/miniprogram/dev/api/navigate/wx.navigateToMiniProgram.html),以确保所使用的API是最新的,并遵循任何更新后的指南或限制条件[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值