我有一个我一直在我的 mac 上开发的脚本,它使用 scrapy,一个用于网络抓取的 python 库。我认为一切都很好,直到今天早上我试图将它加载到服务器上。
服务器运行 Debian 8.2 并且抓取良好。问题在于读取其抓取的文件。 Debian 似乎将文件读取为大量的符号 (@n^@^@^@d^@^@^@e^@^@^@x^@^@^@.^@^ @^@p
),但是将文件上传到 Dropbox 并查看它会发现该文件实际上充满了 URL。所以抓取没问题,但是无法正确读取文件。
我该如何解决?
更大的切片:
i^@^@^@n^@^@^@d^@^@^@e^@^@^@x^@^@^@.^@^@^@p^@^@ ^@h^@^@^@p^@^@^@i^@^@^@n^@^@^@d^@^@^@e^@^@^@x^@^@^ @.^@^@^@p^@^@^@h^@^@^@p^@^@^@?^@^@^@s^@^@^@t^@^@^@ r^@^@^@P^@^@^@a^@^@^@g^@^@^@e^@^@^@I^@^@^@D^@^@^@= ^@^@^@S^@^@^@F^@^@^@0^@^@^@1^@^@^@_^@^@^@0^@^@^@3^ @^@^@_^@^@^@0^@^@^@1^@^@^@.^@^@^@.^@^@^@/^@^@^@k^@ ^@^@o^@^@^@/^@^@^@.^@^@^@.^@^@^@/^@^@^@e^@^@^@n^@^ @^@/^@^@^@.^@^@^@.^@^@^@/^@^@^@c^@^@^@n^@^@^@/^@^@ ^@i^@^@^@n^@^@^@d^@^@^@e^@^@^@x^@^@^@.^@^@^@p^@^@^ @h^@^@^@p^@^@^@?
最佳答案
似乎是 UCS-2(基本上是 UTF-16)的问题。在您的 Python 程序中使用 encoding='utf16'
或 encoding='utf_16_be'
编码(详见 here)。
您可以使用 iconv
实用程序将文件从 UCS-2 转换为 UTF-8:
iconv -f UCS-2 -t UTF-8 inputfile > outputfile
关于python - Linux 将我的 URL 转换为符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34455829/