返回列表 发帖

【已解决】100元求助Python

本帖最后由 ksla 于 2023-7-3 15:09 编辑
## filename: transPY.sh [gamelist.xml的路径,默认为当前路径下的gamelist.xml]
## 使用举例:./transPY.sh /path/to/gamelist.xml
## 功能:为gamelist.xml中的中文游戏名生成拼音首字母后缀
## 举例:J-寂静岭  转换为 J-寂静岭[jjl]
## 需要安装nodejs
gamelistpath="${1:-gamelist.xml}"
echo "处理文件:""${gamelistpath}"
# 修改编码为utf-8,以支持中文, macos请使用gsed,安装方法:brew install gsed
sed -i '1c \<?xml version="1.0" encoding="utf-8"?>' "${gamelistpath}"
gameList=`xml  sel -t \
--value-of '//gameList/game/sortname' \
--nl "${gamelistpath}"`
OLDIFS="$IFS"  #备份旧的IFS变量
IFS=$'\n' #处理游戏名中带空格的情况
# 逐个修改name的值
for game in ${gameList}
do
    echo "处理游戏名:"${game}
    if [[ $( echo "${game}" | grep  "\[.*\]$" | wc -l ) -eq 0 ]]; then # 防止重复添加
        suffixName=$( cd "$(dirname ${BASH_SOURCE})" && py transPinying.py "${game}")
        if [[ -n ${suffixName} ]]; then # 有中文才添加
            finalName="${game}""[${suffixName}]"
            echo "添加后:""${finalName}"
            xml  ed -L -u \
            "/gameList/game[sortname = \"${game}\"]/sortname" \
            -v  "${finalName}" \
            "${gamelistpath}"
        fi
    fi
done
IFS="$OLDIFS"  #还原IFS变量COPY
由于上传大小限制
transPinying.py 文件从这里取



链接:https://pan.baidu.com/s/1P4BydLzZ4lMbRDps0d2YFQ
提取码:kqfl
--来自百度网盘超级会员V1的分享




错误结果:
$ ./transPY.sh gamelist.xml
处理文件:gamelist.xml
处理游戏名:光明之魂
[gmzh]:光明之魂

处理游戏名:幻想传说
[hxcs]:幻想传说

处理游戏名:黄金太阳
添加后:黄金太阳[hjty]



正确结果
$ ./transPY.sh gamelist.xml
处理文件:gamelist.xml
处理游戏名:光明之魂
添加后:光明之魂[gmzh]

处理游戏名:幻想传说
添加后:幻想传说[hxcs]

处理游戏名:黄金太阳
添加后:黄金太阳[hjty]


问题说明:脚本只对最后一个游戏名生效,其它都是失效
感觉是这个变量出错  finalName="${game}""[${suffixName}]"

具体报酬:100元人民币
支付方式:支付宝
请将支付宝手机号私信给我!可用马上打款!

回复 1# ksla


如果需要上传文件,可以用阿里云盘或百度网盘。

如果需要上传截图,可以找个图床,例如:
http://bbs.bathome.net/thread-60985-1-1.html
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

gamelist.xml文件发上来看看,它是DOS格式还是Unix格式?

TOP

回复 3# buyiyang


    链接:https://pan.baidu.com/s/1P4BydLzZ4lMbRDps0d2YFQ
提取码:kqfl
--来自百度网盘超级会员V1的分享

TOP

既然都用到python了,直接用python处理就好了
https://pan.baidu.com/s/18qz4FY34EmIMv9YdEETwqA?pwd=pzgh
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

本帖最后由 ksla 于 2023-7-3 15:10 编辑

回复 5# zaqmlp


谢谢,麻烦支付宝私信一下

TOP

回复 6# ksla
扫头像就行了
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

回复 7# zaqmlp


    已付,感谢

TOP

返回列表