Board logo

标题: 【已解决】100元求助Python [打印本页]

作者: ksla    时间: 2023-7-2 16:48     标题: 【已解决】100元求助Python

本帖最后由 ksla 于 2023-7-3 15:09 编辑
  1. ## filename: transPY.sh [gamelist.xml的路径,默认为当前路径下的gamelist.xml]
  2. ## 使用举例:./transPY.sh /path/to/gamelist.xml
  3. ## 功能:为gamelist.xml中的中文游戏名生成拼音首字母后缀
  4. ## 举例:J-寂静岭  转换为 J-寂静岭[jjl]
  5. ## 需要安装nodejs
  6. gamelistpath="${1:-gamelist.xml}"
  7. echo "处理文件:""${gamelistpath}"
  8. # 修改编码为utf-8,以支持中文, macos请使用gsed,安装方法:brew install gsed
  9. sed -i '1c \<?xml version="1.0" encoding="utf-8"?>' "${gamelistpath}"
  10. gameList=`xml  sel -t \
  11. --value-of '//gameList/game/sortname' \
  12. --nl "${gamelistpath}"`
  13. OLDIFS="$IFS"  #备份旧的IFS变量
  14. IFS=$'\n' #处理游戏名中带空格的情况
  15. # 逐个修改name的值
  16. for game in ${gameList}
  17. do
  18.     echo "处理游戏名:"${game}
  19.     if [[ $( echo "${game}" | grep  "\[.*\]$" | wc -l ) -eq 0 ]]; then # 防止重复添加
  20.         suffixName=$( cd "$(dirname ${BASH_SOURCE})" && py transPinying.py "${game}")
  21.         if [[ -n ${suffixName} ]]; then # 有中文才添加
  22.             finalName="${game}""[${suffixName}]"
  23.             echo "添加后:""${finalName}"
  24.             xml  ed -L -u \
  25.             "/gameList/game[sortname = \"${game}\"]/sortname" \
  26.             -v  "${finalName}" \
  27.             "${gamelistpath}"
  28.         fi
  29.     fi
  30. done
  31. IFS="$OLDIFS"  #还原IFS变量
复制代码
由于上传大小限制
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元人民币
支付方式:支付宝
请将支付宝手机号私信给我!可用马上打款!
作者: Batcher    时间: 2023-7-2 20:32

回复 1# ksla


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

如果需要上传截图,可以找个图床,例如:
http://bbs.bathome.net/thread-60985-1-1.html
作者: buyiyang    时间: 2023-7-2 20:57

gamelist.xml文件发上来看看,它是DOS格式还是Unix格式?
作者: ksla    时间: 2023-7-2 22:58

回复 3# buyiyang


    链接:https://pan.baidu.com/s/1P4BydLzZ4lMbRDps0d2YFQ
提取码:kqfl
--来自百度网盘超级会员V1的分享
作者: zaqmlp    时间: 2023-7-3 00:09

既然都用到python了,直接用python处理就好了
https://pan.baidu.com/s/18qz4FY34EmIMv9YdEETwqA?pwd=pzgh
作者: ksla    时间: 2023-7-3 15:08

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

回复 5# zaqmlp


谢谢,麻烦支付宝私信一下
作者: zaqmlp    时间: 2023-7-3 15:32

回复 6# ksla
扫头像就行了
作者: ksla    时间: 2023-7-4 07:52

回复 7# zaqmlp


    已付,感谢




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2