Python - 带有str.find的socket.recv

时间:2014-05-27 15:19:57

标签: python string sockets character-encoding

我有以下Python代码从套接字读取文本:

chunk = mySocket.recv(1024)
while (chunk.find("[footer]") < 0):
    chunk += mySocket.recv(1024)

然后我寻找一个包含非英语(西里尔文)字符的子字符串:

chunk.find("Код активации")

奇怪的是,find始终返回-1

但是当我尝试将下载结果保存到文件时:

text_file = open("OutputResult.txt", "w")
text_file.write(chunk)
text_file.close()

该文件确实包含我使用str.find搜索的文本模式。

我做错了什么?这是编码或其他问题吗?

UPD:

另一个重要的事情是print (chunk)以明显错误的编码方式向控制台输出文本。所以我很确定这是一个编码问题。我正在下载的页面是“windows-1251”。

0 个答案:

没有答案