SORU
12 EYLÜL 2012, ÇARŞAMBA


&Quot;çok parçalı/-veri formu göndermek için nasıl" python istekleri ile?

Nasıl python istekleri ile multipart/form-data göndermek için? Bir dosya göndermek için nasıl, anlıyorum, ama formu göndermek için nasıl bu yöntem ile veri anlayamıyorum.

CEVAP
12 EYLÜL 2012, ÇARŞAMBA


files bir parametre (bir sözlük) belirtirseniz, temel olarak, requests application/x-www-form-urlencoded bir YAZI yerine multipart/form-data bir YAZI gönderir. Bu sözlükte gerçek dosyaları kullanarak, ancak sınırlı değildir:

>>> import requests
>>> response = requests.post('http://httpbin.org/post', files=dict(foo='bar'))
>>> response.status_code
200

ve httpbin.org senin yazdıklarını biliyorum sağlar; response.json():

>>> from pprint import pprint
>>> pprint(response.json()['headers'])
{u'Accept': u'*/*',
 u'Accept-Encoding': u'gzip, deflate, compress',
 u'Connection': u'close',
 u'Content-Length': u'141',
 u'Content-Type': u'multipart/form-data; boundary=33b4531a79be4b278de5f5688fab7701',
 u'Host': u'httpbin.org',
 u'User-Agent': u'python-requests/2.2.1 CPython/2.7.6 Darwin/13.2.0',
 u'X-Request-Id': u'eaf6baf8-fc3d-456b-b17d-e8219ccef1b1'}

files de aynı adla sipariş ve/veya birden çok alana ihtiyacınız olursa iki değer dizilerini bir liste olabilir:

requests.post('http://requestb.in/xucj9exu', files=(('foo', 'bar'), ('spam', 'eggs')))

files data, o zaman ikisini de belirtirseniz bağlıdırdeğerdata ne POST vücut oluşturmak için kullanılır. data bir dize ise, yalnızca kullanılması bekleniyor; aksi halde data files hem data öğeleri ilk sırada kullanılır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • CaliforniaMetin

    CaliforniaMe

    3 ŞUBAT 2013
  • engineerguy

    engineerguy

    10 Ocak 2010
  • jcortes187

    jcortes187

    24 Mart 2006