扫描二维码关注官方公众号
返回列表 发布新帖

[应用软件] FLEXGET RSS 中文文件名报错求助

5604 7
发表于 2013-3-21 00:50:49 | 显示全部楼层 阅读模式

来吧兄弟,一起玩一起讨论!

您需要 登录 才可以下载或查看,没有账号?注册

×
FLEXGET 抓取其它站RSS种子都没问题 在CCF至今只能下下来2个没有中文的种子
以下是出错信息从6行开始
  1. 2013-03-20 23:31 VERBOSE  task          CCF HAND        ACCEPTED: `[CCFBits]1900(Novecento).35th.Anniversary.1976.Blu-ray.720p.x264.DTS-MySiLU【【一九〇〇 PART I】 因大胆的尺度 被长期禁映】` by accept_all plugin
  2. 2013-03-20 23:31 INFO     download      CCF HAND        Downloading: [CCFBits]1900(Novecento).35th.Anniversary.1976.Blu-ray.720p.x264.DTS-MySiLU【【一九〇〇 PART I】 因大胆的尺度 被长期禁映】
  3. 2013-03-20 23:31 VERBOSE  details       CCF HAND        Summary - Accepted: 1 (Rejected: 0 Undecided: 0 Failed: 0)
  4. 2013-03-20 23:31 ERROR    entry         CCF HAND        Failed [CCFBits]1900(Novecento).35th.Anniversary.1976.Blu-ray.720p.x264.DTS-MySiLU【【一九〇〇 PART I】 因大胆的尺度 被长期禁映】 (None)
  5. 2013-03-20 23:31 VERBOSE  task          CCF HAND        FAILED: `[CCFBits]1900(Novecento).35th.Anniversary.1976.Blu-ray.720p.x264.DTS-MySiLU【【一九〇〇 PART I】 因大胆的尺度 被长期禁映】` by download plugin
  6. 2013-03-20 23:31 ERROR    download      CCF HAND        Exception while writing: 'ascii' codec can't encode characters in position 90-95: ordinal not in range(128)
  7. Traceback (most recent call last):
  8.   File "/opt/local/lib/python2.7/site-packages/flexget/plugins/output/download.py", line 339, in on_task_output
  9.     self.output(task, entry, config)
  10.   File "/opt/local/lib/python2.7/site-packages/flexget/plugins/output/download.py", line 426, in output
  11.     if os.path.exists(destfile):
  12.   File "/opt/lib/python2.7/genericpath.py", line 18, in exists
  13.     os.stat(path)
  14. UnicodeEncodeError: 'ascii' codec can't encode characters in position 90-95: ordinal not in range(128)
  15. 2013-03-20 23:31 INFO     remember_rej  CCF HAND        Remembering rejection of `[CCFBits]1900(Novecento).35th.Anniversary.1976.Blu-ray.720p.x264.DTS-MySiLU【【一九〇〇 PART I】 因大胆的尺度 被长期禁映】` for 60 minutes
  16. 2013-03-20 23:31 VERBOSE  task          CCF HAND        REJECTED: `[CCFBits]1900(Novecento).35th.Anniversary.1976.Blu-ray.720p.x264.DTS-MySiLU【【一九〇〇 PART I】 因大胆的尺度 被长期禁映】` by retry_failed plugin because waiting before trying failed entry again. (failure reason: Unknown)
  17. 2013-03-20 23:31 INFO     task          CCF HAND        Plugin retry_failed has requested task to be ran again after execution has completed.
  18. 2013-03-20 23:31 VERBOSE  email         CCF HAND        No content generated from template, not sending email.
  19. 2013-03-20 23:31 INFO     task          CCF HAND        Rerunning the task in case better resolution can be achieved.
  20. 2013-03-20 23:31 VERBOSE  input_cache   CCF HAND        Restored 1 entries from cache
  21. 2013-03-20 23:31 VERBOSE  details       CCF HAND        Produced 1 entries.
  22. 2013-03-20 23:31 VERBOSE  task          CCF HAND        REJECTED: `[CCFBits]1900(Novecento).35th.Anniversary.1976.Blu-ray.720p.x264.DTS-MySiLU【【一九〇〇 PART I】 因大胆的尺度 被长期禁映】` by remember_rejected plugin because rejected on behalf of retry_failed plugin: Waiting before trying failed entry again. (failure reason: Unknown)
复制代码
ZU2(I3%PGQ0BIHKX7RHO2YP.jpg
貌似跟python及中文文件名有关  请达人指点一二 拜谢

评论7

abckjfLv.3 发表于 2013-3-21 09:37:35 | 显示全部楼层
我的也是出现这种情况,hdroad站中文的也都不行。
回复 点赞

使用道具 举报

宿醉冇醒Lv.6 发表于 2013-3-21 23:06:41 | 显示全部楼层
本帖最后由 宿醉冇醒 于 2013-3-21 23:10 编辑

现在找到了一个解决办法,你不烦试一下:
修改/opt/lib/python2.7/site.py文件(改前先备份下):
把setencoding函数改成这样:
  1. def setencoding():                                                
  2.     """Set the string encoding used by the Unicode implementation.  The
  3.     default is 'ascii', but if you're willing to experiment, you can
  4.     change this."""                                       
  5.     encoding = "utf-8" # Default value set by _PyUnicode_Init()      
  6.     sys.setdefaultencoding(encoding) # Needs Python Unicode build !
复制代码
说明一点:我只在我机器上测试成功,试了后请回复结果如何。我机器已设置支持中文交互。
2013-3-21 23-08-02.png
回复 点赞

使用道具 举报

coolseetee楼主Lv.3 发表于 2013-3-22 22:48:55 | 显示全部楼层
宿醉冇醒 发表于 2013-3-21 23:06
现在找到了一个解决办法,你不烦试一下:
修改/opt/lib/python2.7/site.py文件(改前先备份下):
把setencod ...

哈哈 又麻烦到你了不好意思

用你的说的方法修改了site.py --test成功 实测失败,reboot,仍然失败,囧
HF3<_B{H$VJNB2YFD%L]2.jpg

另外可否告知解决思路 参考资料网站什么的
回复 点赞

使用道具 举报

宿醉冇醒Lv.6 发表于 2013-3-23 00:15:06 | 显示全部楼层
本帖最后由 宿醉冇醒 于 2013-3-23 00:36 编辑
coolseetee 发表于 2013-3-22 22:48
哈哈 又麻烦到你了不好意思

用你的说的方法修改了site.py --test成功 实测失败,reboot,仍然失败,囧


还有一办法:
建一文件:/opt/lib/python2.7/sitecustomize.py
  1. # encoding=utf8
  2. import sys
  3. reload(sys)
  4. sys.setdefaultencoding('utf-8')
复制代码
参考资料:
http://wangye.org/blog/archives/629/
http://shirley-ren.iteye.com/blog/1018750


这样就应该可以了:
  1. :~# python2.7
  2. Python 2.7.3 (default, Apr 12 2012, 13:08:47)
  3. [GCC 4.2.3] on linux2
  4. Type "help", "copyright", "credits" or "license" for more information.
  5. >>> import sys
  6. >>> sys.getdefaultencoding()        
  7. 'utf-8'
复制代码
实在不行,试着改下py文件,把encode强制为utf8
/opt/local/lib/python2.7/site-packages/flexget/plugins/output/download.py
回复 点赞

使用道具 举报

coolseetee楼主Lv.3 发表于 2013-3-23 18:00:34 | 显示全部楼层
宿醉冇醒 发表于 2013-3-23 00:15
还有一办法:
建一文件:/opt/lib/python2.7/sitecustomize.py参考资料:
http://wangye.org/blog/archiv ...

还是没能解决 不过有进展了
  1. root@bOsOn-NAS:~# top
  2. Mem: 245688K used, 2844K free, 0K shrd, 2584K buff, 80344K cached
  3. CPU:  15% usr   8% sys   0% nice   0% idle  68% io   0% irq   8% softirq
  4. Load average: 1.40 1.40 1.33
  5.   PID  PPID USER     STAT   VSZ %MEM %CPU COMMAND
  6. 4133     1 root     S     149M  61%  21% /opt/bin/transmission-daemon -g /root/.config/transmission-daemon
  7. 2302     1 root     S    27240  11%   0% /usr/bin/python /usr/local/sbin/BuffaloXMLRPCServer.pyc --skip-auth
复制代码
在使用top查看进程的时候发现 系统运行的python不是安装opt目录的
  1. root@bOsOn-NAS:~# python
  2. Python 2.6.2 (r262:71600, Sep  3 2009, 11:18:18)
  3. [GCC 4.3.2] on linux2
  4. Type "help", "copyright", "credits" or "license" for more information.
  5. >>>
复制代码
运行python命令 返回的版本是2.6
  1. root@bOsOn-NAS:~# find / -name python2.6
  2. /usr/include/python2.6
  3. /usr/bin/python2.6
  4. /usr/lib/python2.6

  5. root@bOsOn-NAS:~# find / -name python2.7
  6. /mnt/disk1/.optware/lib/python2.7
  7. /mnt/disk1/.optware/bin/python2.7
  8. /mnt/disk1/.optware/include/python2.7
  9. /mnt/disk1/.optware/local/lib/python2.7
  10. /opt/lib/python2.7
  11. /opt/bin/python2.7
  12. /opt/include/python2.7
  13. /opt/local/lib/python2.7
复制代码
使用find查找python2.6 python2.7 可以看到两个版本同时存在 FLEXGET运行的时候可能调用的是2.6版本
具体这两个版本是怎么发挥作用的我还不懂

按上面提到的方法尝试在/usr/lib/python2.6、site-packages文件夹下新建一个sitecustomize.py,内容如下
  1. # encoding=utf8  
  2. import sys  
  3.   
  4. reload(sys)  
  5. sys.setdefaultencoding('utf8')
复制代码
因为牵扯到系统本身,现在还没有reboot,怕reboot了之后就不亮了,

看资料说重启python解释器即可 没有找到相应的命令 请大神先帮我看看这样改靠谱不
回复 点赞

使用道具 举报

宿醉冇醒Lv.6 发表于 2013-3-23 20:31:08 | 显示全部楼层
coolseetee 发表于 2013-3-23 18:00
还是没能解决 不过有进展了在使用top查看进程的时候发现 系统运行的python不是安装opt目录的运行python命 ...

两个地方都改一下吧,我运行python也是2.6版本的,是固件里带的。
  1. ~# python                                                                                                                                                                                                                                       
  2. Python 2.6.2 (r262:71600, Sep  3 2009, 11:18:18)
  3. [GCC 4.3.2] on linux2
  4. Type "help", "copyright", "credits" or "license" for more information.
  5. >>> import sys
  6. >>> sys.getdefaultencoding()
  7. 'utf-8'
复制代码
看到是utf-8了就可以了。python就是运行解释器。
sitecustomize.py有可能是放/usr/lib/python2.6目录,也可能放/usr/lib/python2.6/site-packages目录,你自己试试。
回复 点赞

使用道具 举报

coolseetee楼主Lv.3 发表于 2013-3-25 19:54:05 | 显示全部楼层
>>> sys.getdefaultencoding()
已经返回utf-8了
还是报错 可能跟没重启有关
刚发了个种子 出种以后再试 不行准备重装FLEXGET试试了
回复 点赞

使用道具 举报

回复

懒得打字嘛,点击右侧快捷回复 【本站酷狼4T,750元】
您需要登录后才可以回帖 登录 | 注册

本版积分规则

投诉/建议联系

support@gebi1.cn

未经授权禁止转载,复制和建立镜像,
如有违反,追究法律责任
  • 关注公众号
  • 添加微信客服
Copyright © 2001-2024 隔壁网 版权所有 All Rights Reserved. 粤ICP备14056481号-1
关灯 在本版发帖
扫一扫添加微信客服
返回顶部
快速回复 返回顶部 返回列表