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

  • DrePwn

    DrePwn

    22 Temmuz 2011
  • HereWeStayKings

    HereWeStayKi

    3 NİSAN 2013
  • Sergio Fernandez

    Sergio Ferna

    1 EKİM 2009