私はpycurlに苦労しています。これらは私のヘッダーです:
headers.append('User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0')
headers.append('Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8')
headers.append('Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3')
headers.append('Accept-Encoding: gzip, deflate')
headers.append('Accept-Charset: UTF-8,*')
headers.append('Connection: Keep-Alive')
オリジナル:
私が得るもの:
ご覧のとおり、pycurl で取得したものは壊れています。それらをテキスト比較ツールで比較すると、それらが同じであることがわかります。(元の行末には LF のみがあり、破損した行末には CRLF があったという違いがありましたが、それを変更したところ、同じ画像になりましたが、まだ壊れています)
ダウンロード元のホストが理由ではありません。ドロップボックスとローカルのApacheから同じことをしようとしました。どちらも機能しませんでした。
これは私が画像を保存する方法です:
self.buffer = StringIO.StringIO()
# other curl options like ssl, cookies, followlocation and GET Request URL Setup to the Image: http://dl.dropbox.com/u/25733986/test.jpg
self.curl.setopt(pycurl.WRITEFUNCTION, self.buffer.write)
# -> curl.perform()
f = open("temp/resources/%s" % (filename,), 'w')
f.write(self.buffer.getvalue())
f.close()
誰かがこれについて何か提案をしてくれたら嬉しいので、自分のエラーを見つけることができます.