【发布时间】:2014-06-12 10:30:09
【问题描述】:
我正在尝试从下载的文件中获取内容。如果我保存像 .mp3 这样的文件,它甚至可以播放。但是当我得到内容时,会有很多“可怕”的字符,即 (û dInfo.ð"""".....::::EEEEEQQQQ]]]]]hhhhttttt¢¢¢¢®®®®®ººººÅÅÅÅÅÅÑÑÑÑÑÝÝÝÝÝèèèèèôôôôôÿÿÿÿÿ :LAME3.96r´.l4 $N .ð]Ú5ÿû d Ô|c½i4BGçá"ʹU§ a0pTìÌ xà0 +£â?=yÃkðý§ýÛußAfØÿ®ÙBDgøQÊ0£a=¹ OTG@ )É ÄN¨hÎDMWQÛ0wmrÛA MdCeÞ9:!b>¢~Ú½´&ÞýÛ/¿h·{þ>Åï²{·w±Ä,ÅõtewßS©?Ï'è! p@lHåÀ1üoù!c Aæø?Íæ0#äzôüÿsì§òp}o¾Ðn¨:Ð À@1®-0¦ ÐËÛþÐ褹À~! êõCÄâr+Ççú!ɱA3uå^O¦I÷'ív(µ~ÉNÎ~8æÙøÕ+X y¬gt}êÑ3xk¿½ÞZ÷]ë^ÖÅ¢}åýíªn¾?µ)_{×ÇÎÿÝ>ÿzÞ>wÿß¾5﬿»ü}z}kDtwk)Ó=Ú[ÿzfXÞµ%q Gŧ~(°Ë%¬ ǺJùÝÇá3JBĸÑâ·Ê!W²qll°¡WÎÚRÕ¨âU0BD$F$ÅÕÀèûÏ*©l^Î¥¢3ëÿû¢d¬LY~s`AJ@Á%ù 4¨ËÍ;3sB½²ý»é ¨murz{S0Ühà @Qö0Â(ÚFíê9(øi¸ò½¸~äÌ]ï¼a b°±±§Rióÿ÷·±O?Ã?:3£M20 /ÿÿÿçßîzöDIþï_ÿÿÿÿú±c>a¾¨2e ÁÙ£¯ÿÿÿÿÿÿÿÿÿÿÿ! []h1EOFðKçYwA%ÜSԾó":9Ç5 RþèvC?7òEWÔ´üJdzcKÿÿTdp Lï¬DÆØ£Rm7£Ww·´ÅUeé¢hÇRî÷ @\uä«À#¿6òXµËÖÿ+U Oó}å-) 这是我的代码:
fp = open('audio.txt', "wb")
ch = curl.Curl()
ch.setopt(curl.URL, url)
ch.setopt(curl.TRANSFERTEXT, True)
ch.setopt(curl.AUTOREFERER, True)
ch.setopt(curl.FOLLOWLOCATION, True)
ch.setopt(curl.POST, False)
ch.setopt(curl.HTTPHEADER, ['REMOTE_ADDR:' + self.ip, 'HTTP_X_FORWARDED_FOR:' + self.ip])
ch.setopt(curl.USERAGENT, self.useragent)
ch.setopt(curl.CONNECTTIMEOUT, self.connect_timeout)
ch.setopt(curl.TIMEOUT, self.curl_timeout)
ch.setopt(curl.SSL_VERIFYPEER, False)
ch.setopt(curl.COOKIE, "JSESSIONID=" + sessionid)
ch.setopt(curl.WRITEDATA, fp)
try:
result = ch.perform()
except curl.error as error:
#errno, errstr = error
ch.close()
return 'Ошибка считывания mp3 файла с сервиса ФМС.'
fp.close()
with open('audio.txt', 'r', encoding = "ISO-8859-1") as content_file:
content_file.seek(0)
content = content_file.read()
return content
如何获取普通字符(UTF8 格式)?谢谢。
【问题讨论】:
-
MP3 不是睡前阅读的文本格式,它是适合您的 MP3 播放器口味的二进制格式。因此,即使转换为 UTF-8,您也会在那里得到可怕的字符。
-
我认为您应该更多地了解文件和文件格式的实际含义。诸如“如何将 mp3 读取为 UTF-8 文本?”之类的问题。或“如何在 mp3 播放器中收听 PDF?”像“音乐的颜色是什么?”一样没有意义。