Julia 无法从HTTP.get读取文件
我需要从一个有登录名和密码的网页上获取一些xlsm文件。 为了达到目的,我在web浏览器中找到了auth cookie,并使用了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"
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)) 而且,在我在一个文件中复制错误后,我无法打开任何其他文件,即使是那些没有复制任何错误的文件 我将在这里发布两个相同来源的文件的链接,一个让我知道错误,另一个没有