【发布时间】:2016-01-15 11:05:08
【问题描述】:
def download_torrent(url):
fname = os.getcwd() + '/' + url.split('title=')[-1] + '.torrent'
try:
schema = ('http:')
r = requests.get(schema + url, stream=True)
with open(fname, 'wb') as f:
for chunk in r.iter_content(chunk_size=1024):
if chunk:
f.write(chunk)
f.flush()
except requests.exceptions.RequestException as e:
print('\n' + OutColors.LR + str(e))
sys.exit(1)
return fname
在该代码块中,当我运行完整脚本时出现错误。当我去实际下载种子时,我得到:
('Connection aborted.', BadStatusLine("''",))
我只发布了我认为与上面相关的代码块。整个脚本如下。它来自 pantuts,但我认为它不再被维护,我正试图让它与 python3 一起运行。根据我的研究,该错误可能意味着我使用的是 http 而不是 https,但我都尝试过。
【问题讨论】:
-
您能提供一个发生这种情况的示例网址吗?
-
您粘贴的代码缺少
try。我收到了一个不同的错误:('Connection aborted.', RemoteDisconnected('Remote end closed connection without response',))希望更具描述性的错误对您有所帮助。 -
嗯。运行时的脚本没有给我 url,只是种子名称,所以我不能发布示例 url。我刚刚搜索了学习python,选择了第一个torrent。我不确定您所说的错过尝试是什么意思。你能详细说明吗?感谢您的帮助。
-
您粘贴的代码 sn-p 有一个
except,但没有一个try。看起来您的 github 存储库中的代码确实如此。我在这里突出显示了我所指的行:github.com/pantuts/asskick/blob/master/asskick.py#L42 -
很好,我错过了。当我拿出指向 stackoverflow 的链接以保持整洁时,我一定是把它拿出来了。我正在运行的实际代码有 try: 在其中,不幸的是我仍然得到相同的 badstatusline 错误
标签: python python-3.x python-requests