2

Kivy アプリケーションで画像を表示しようとしていますが、画像ローダーがエラー 403 禁止を返します。

このエラーを回避するには User-Agent ヘッダーを送信する必要があることに気付きましたが、画像ローダーにヘッダーを渡す方法が見つかりませんでした

この問題を解決する方法はありますか?

kvファイル

AsyncImage:
    source: 'url_to_image'
    keep_ratio: True

エラー:

[ERROR  ] [Loader      ] Failed to load image <url_to_image>
urllib.error.HTTPError: HTTP Error 403: Forbidden
4

1 に答える 1

1

現在、AsyncImage を使用している場合、User-Agent を変更することはできません。責任あるコードは次のとおりです。

fd = urllib_request.urlopen(filename)

ご覧のとおり、そこに別の UserAgent を渡す良い方法はありません。

代わりに、ファイルのダウンロードを自分で処理してください。

変数に実際には文字列ではなく が含まれるようurllib.request.Requestに、変更されたメソッドを使用してオブジェクトを渡そうとすることもできると思いますが、 (in )のチェックに耐えます。しかし、それはおそらく非常に不安定であり、「適切な」解決策ではありません。splitfilenameRequestStringPropertyAsyncImage

于 2016-09-21T07:37:39.047 に答える