Biblioteka znacznie bardziej popularna i posiadająca wiele portów do różnych języków, co wiąże się z tym, że łatwiej jest odnaleźć przykłady i rozwiązać potencjalne problemy. W rozdziale Quick Start, znajduje się kilka interesujących, z omówieniem ich mechanizmów. Ciekawy wydał mi się pycrul.WRITEDATA. Z tego co udało mi się rozumieć, biblioteka nie posiada bufora na odpowiedź od serwera i to zadaniem aplikacji jest ustawienie go, dzięki tej opcji.
#! /usr/bin/env python3 import pycurl import urllib.parse from io import BytesIO def post3(): buffer = BytesIO() c = pycurl.Curl() c.setopt(pycurl.URL, 'http://requestb.in/kcco1337') c.setopt(pycurl.WRITEDATA, buffer) post_data = {'login': 'user1', 'password': 'hasło 1'} post_fields = urllib.parse.urlencode(post_data) c.setopt(pycurl.POST, 1) c.setopt(pycurl.POSTFIELDS, post_fields) c.perform() c.close() print(buffer.getvalue().decode('iso-8859-1'))Raw body:
password=has%C5%82o+1&login=user1
Brak komentarzy:
Prześlij komentarz