SORU
8 Kasım 2009, Pazar


Yüzde kodlamak için nasıl python ile url parametreleri?

Eğer yaparsam

url = "http://example.com?p="   urllib.quote(query)
  1. Kodlamak değil """" (sonları OAuth normalleştirme) . / /
  2. Unicode (bir istisna at) değil

Daha iyi bir kütüphane var mı?

CEVAP
8 Kasım 2009, Pazar


docs:

urllib.quote(string[, safe])

String içerisinde özel karakterler değiştirin %xx kaçış kullanarak. Harfler, rakamlar, ve karakterler '_.-' asla dedi. Varsayılan olarak, bu işlev yol bölümüne alıntı yönelik URL.İsteğe bağlı güvenli parametre ek karakterler belirtir alıntı olmamalıvarsayılan değer '/'

Bu " güvenli için ilk sorununuzu çözecek: . geçen anlamına gelir

>>> urllib.quote('/test')
'/test'
>>> urllib.quote('/test', safe='')
'/test'

İkinci sorun hakkında, bu konuda bir hata raporu here. Görünüşe göre python 3'te tespit edildi. Bu gibi UTF-8 kodlaması ile geçici bir çözüm bulabilirsiniz:

>>> query = urllib.quote(u"Müller".encode('utf8'))
>>> print urllib.unquote(query).decode('utf8')
Müller

Bu arada urlencode bir göz

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Edgar flores

    Edgar flores

    7 HAZİRAN 2006
  • GALERNAYA20

    GALERNAYA20

    19 NİSAN 2011
  • Ownage Pranks

    Ownage Prank

    13 AĞUSTOS 2007