- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
好吧,我遇到了一个奇怪的问题,我不确定如何解释...基本上我正在尝试解码一个 bencode 文件(.torrent 文件),现在我已经尝试了 4 或 5 个不同的我通过谷歌和 S.O. 找到的脚本没有运气(在字典中得到这样的返回或从相同的输出错误)
现在我正在这样下载.torrent文件
wget http://link_to.torrent file
//and have also tried with curl like so
curl -C - -O http://link_to.torrent
我的结论是,当我以这种方式下载时,文件发生了一些变化。这样做的原因是我发现这个网站 will decode a .torrent file you upload online 显示文件中包含的信息。但是,当我不只是通过浏览器单击链接而是使用上述方法之一来下载 .torrent 文件时,它也不起作用。那么有没有人使用这些方法之一遇到过类似的问题并找到了问题的解决方案或者甚至解释了为什么会这样?我无法在网上找到很多关于它的信息,也不知道可以用于我的服务器的解决方法
更新:好的,正如 @coder543 所建议的,比较通过浏览器下载的文件大小与 wget。它们的大小不同,使用 wget 样式会导致较小的文件大小,所以很明显问题出在 wget & curl
而不是其他东西.. idea's?
更新 2:好吧,我现在已经试过几次了,我正在缩小问题的范围,问题似乎只发生在 torcache 和 torrage 链接上。来自其他站点的链接似乎正常工作或按预期工作......所以这里有一些链接和我从三种不同方法中得到的结果:
*** differnet sizes***
http://torrage.com/torrent/6760F0232086AFE6880C974645DE8105FF032706.torrent
wget -> 7345 , curl -> 7345 , browser download -> 7376
*** same size***
http://isohunt.com/torrent_details/224634397/south+park?tab=summary
wget -> 7491 , curl -> 7491 , browser download -> 7491
*** differnet sizes***
http://torcache.net/torrent/B00BA420568DA54A90456AEE90CAE7A28535FACE.torrent?title=[kickass.to]the.simpsons.s24e12.hdtv.x264.lol.eztv
wget -> 4890 , curl-> 4890 , browser download -> 4985
*** same size***
http://h33t.com/download.php?id=cc1ad62bbe7b68401fe6ca0fbaa76c4ed022b221&f=Game%20of%20Thrones%20S03E10%20576p%20HDTV%20x264-DGN%20%7B1337x%7D.torrent
wget-> 30632 , curl -> 30632 , browser download -> 30632
*** same size***
http://dl7.torrentreactor.net/download.php?id=9499345&name=ubuntu-13.04-desktop-i386.iso
wget-> 32324, curl -> 32324, browser download -> 32324
*** differnet sizes***
http://torrage.com/torrent/D7497C2215C9448D9EB421A969453537621E0962.torrent
wget -> 7856 , curl -> 7556 ,browser download -> 7888
所以我认为它在某些站点上似乎运行良好,但真正在 torcache.net 和 torrage.com 上提供文件的站点。现在,如果我可以使用不直接依赖缓存的其他站点,那就太好了,但是我正在使用 bitsnoop api(它从 torrage.com 中提取所有数据,所以它不是一个真正的选择)无论如何,如果有人有任何想法关于如何解决此问题或采取步骤寻找解决方案,我们将不胜感激!
即使有人能重现结果,我们也将不胜感激!...我的服务器是 64 位架构上的 12.04 LTS,我尝试实际下载比较的笔记本电脑是一样的
最佳答案
对于使用命令行工具检索的文件,我得到:
$ file 6760F0232086AFE6880C974645DE8105FF032706.torrent
6760F0232086AFE6880C974645DE8105FF032706.torrent: gzip compressed data, from Unix
果然,使用gunzip
解压缩将产生正确的输出。查看服务器发送的内容,给出有趣的线索:
$ wget -S http://torrage.com/torrent/6760F0232086AFE6880C974645DE8105FF032706.torrent
--2013-06-14 00:53:37-- http://torrage.com/torrent/6760F0232086AFE6880C974645DE8105FF032706.torrent
Resolving torrage.com... 192.121.86.94
Connecting to torrage.com|192.121.86.94|:80... connected.
HTTP request sent, awaiting response...
HTTP/1.0 200 OK
Connection: keep-alive
Content-Encoding: gzip
因此服务器确实报告它正在发送 gzip 压缩数据,但 wget 和 curl 忽略了这一点。curl 有一个 --compressed
开关,可以为您正确解压数据。即使对于未压缩的文件,这也应该是安全的,它只是告诉 http 服务器客户端支持压缩,但在这种情况下,curl 会查看接收到的 header 以查看它是否真的需要解压缩。
关于linux - wget 和 curl 在下载时以某种方式修改 bencode 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17077398/
我是 python 和 bencoding 的新手。我需要使用 python 为我的项目读写 torrent 文件。我已经导入了模块,这是我解析 torrent 的代码: 这是我的模块的链接 http
我正在尝试用 JavaScript 解码一个 torrent 文件,但长度不合适。 path = "file.torrent"; $.ajax({ url: path, success
我正在尝试使用 bencode 库中的 bdecode,也就是说: def bdecode(x): try: r, l = decode_func[x[0]](x, 0)
你好,我正在使用 C# 在 VS15 中制作控制台应用。 如何解码种子文件?要获取 torrent 文件的名称、大小和日期?我想从服务器下载一个 torrent 文件,然后对其进行解码以查看名称、大小
这个问题不太可能对任何 future 的访客有帮助;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况相关,通常不适用于互联网的全局受众。如需帮助使这个问题更广泛适用,visit the h
这个问题不太可能对任何 future 的访客有帮助;它只与一个较小的地理区域、一个特定的时间点或一个非常狭窄的情况相关,通常不适用于全世界的互联网受众。如需帮助使此问题更广泛适用,visit the
用 C++ 编写 Bencode 解析器的最佳方法是什么。虽然我对外部库的建议持开放态度,这可能会使任务更容易,但我认为如果我编写自己的解析器,我会在 C++ 中学到一些有值(value)的类(cla
对不起,我的问题很简单。 我尝试使用 deluge 或 bittorrent 5.0.8 中的 bencode.py。但是我找到了一个字符串 from types import StringType,
我使用的是 Mac OS X 10.6。 Python 是 2.6.1。我已经安装了 bencode 模块作为 sudo easy_install BitTorrent-bencode 它出现在站点包
我使用的是 Titanium SDK 7.0.0 GA,我从 here 安装了 benCoding.AlarmManager(版本 1.0.0)模块.当我将模块添加到如下图所示的 tiapp.xml
我试图在我的 debian 上安装 Bencode 来解码一些 BitTorrent 数据,但我不知道如何从这样的链接中做到这一点,例如: https://pypi.python.org/pypi/b
好吧,我遇到了一个奇怪的问题,我不确定如何解释...基本上我正在尝试解码一个 bencode 文件(.torrent 文件),现在我已经尝试了 4 或 5 个不同的我通过谷歌和 S.O. 找到的脚本没
Mainline DHT , 用于 BitTorrent为了分发对等点列表,实现了一个称为 KRPC 的自定义 RPC 协议(protocol)。 KRPC 由 BEncoded 字典组成,它们本质上
我正在尝试用 C 语言实现 Bittorent。首先,在编写代码片段之前,我尝试使用网络浏览器将以下消息 (URL) 发送到跟踪器服务器。 您可以试试这个网址。 http://torrent.ubun
我到处搜索寻找可用的 JavaScript Bencode 模块,但找不到,所以我决定编写自己的模块来生成 torrent 信息哈希值。 当我按照规范编写函数时,据我所知,该模块可以正常工作。 字典=
我正在用 objective-c 创建 torrent scraper,我正在使用 AFNetworking对于 HTTP 请求。我需要为跟踪器请求发送元信息部分的 sha1 散列。我已成功创建哈希并
我是一名优秀的程序员,十分优秀!