Julia 无法从HTTP.get读取文件

Julia 无法从HTTP.get读取文件,julia,Julia,我需要从一个有登录名和密码的网页上获取一些xlsm文件。 为了达到目的,我在web浏览器中找到了auth cookie,并使用了HTTP.get函数,如下所示: r = HTTP.get(url_file; cookies=Dict("FedAuth" => auth_cookie)) 有一次,我得到了结果,我想把它写下来。我尝试了write函数和各种格式:.xlsx、xls、xlsm、csv,如示例: write("dados_bdo.xlsm"

我需要从一个有登录名和密码的网页上获取一些xlsm文件。 为了达到目的,我在web浏览器中找到了auth cookie,并使用了
HTTP.get
函数,如下所示:

r = HTTP.get(url_file; cookies=Dict("FedAuth" => auth_cookie))
有一次,我得到了结果,我想把它写下来。我尝试了write函数和各种格式:.xlsx、xls、xlsm、csv,如示例:

write("dados_bdo.xlsm",r.body)
该文件已编写,我可以使用libreoffice打开它,但是,当我尝试使用
CSV.read
XLSX.readxlsx
与Julia一起阅读时,我会出错

> XLSX.readxlsx("dados_bdo.xlsx") 
ERROR: AssertionError: isempty(XML_GLOBAL_ERROR_STACK)

> CSV.read("dados_bdo.csv") 
ERROR: ArgumentError: Symbol name may not contain \0
typeof(r.body)
Array{UInt8,1}

我真的认为问题出在编写部分,但我不知道如何以其他方式解决。

您正确地编写了字节

我认为,为了进行调试,您应该查看您的数据

对于CSV文件,您可以始终执行字符串(r.body)并查看字符串中的内容。 一个可能的问题可能是使用一些字符编码,在这种情况下,您应该使用

关于xlsm,excel文件实际上是一个包含大量XML的zip文件。Zip文件具有CRC和。因此,要检查下载是否正确,请尝试解压缩它。如果解压dados_bdo.xlsm“成功,则文件已正确下载和写入,问题出在其他地方。您也可以尝试使用Python库通过PyCall读取此文件,看看问题是否仍然存在。

谷歌搜索“错误:ArgumentError:符号名称可能不包含\0”“显示这一点,建议您在读取CSV时尝试使用以下选项:

CSV.read(文件;normalizenames=true)


在不知道要获取的URL(和内容)的情况下,这是我能给出的最好建议。如果您提供了URL,那么我(或其他人)可以尝试重现错误,并准确解释出现错误的原因。

我想我的问题实际上是数据。 我可以用XLSX.readxlsx(“data.XLSX”)打开一些xlsm文件,还有一些文件会产生相同的错误(错误:AssertionError:isempty(XML_GLOBAL_error_STACK))

而且,在我在一个文件中复制错误后,我无法打开任何其他文件,即使是那些没有复制任何错误的文件

我将在这里发布两个相同来源的文件的链接,一个让我知道错误,另一个没有