Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erklärung des Python-Lernens mit urllib und urllib2 für den Zugriff auf http GET/POST

Ausführliche Erklärung des Python-Lernens mit urllib und urllib2 für den Zugriff auf http GET/POST

silencement
silencementnach vorne
2019-11-25 15:45:022341Durchsuche

Ausführliche Erklärung des Python-Lernens mit urllib und urllib2 für den Zugriff auf http GET/POST

Vorwort

Dieser Artikel stellt Ihnen hauptsächlich vor, wie Python mithilfe von urllib und urllib2 den Zugriff auf GET/POST von http lernt Im Folgenden gibt es viel zu sagen. Werfen wir einen Blick auf die ausführliche Einführung.

Detaillierte Erläuterung des Beispiels

Das Folgende ist ein Beispiel für die Implementierung von GET und POST für http://127.0.0.1/cgi/test

Abfrage wie gewohnt verwenden Sense-String

POST akzeptiert JSON

Empfohlen, „Python-Video-Tutorial“ zu studieren

Unter ihnen

urllib2s Request-Methode, wenn Nur ein Parameter ist die GET-Methode. Wenn jedoch zwei Parameter erforderlich sind, handelt es sich um die POST-Methode von http, und der zweite Parameter ist der Inhalt von POST.

#!/usr/bin/env python

import urllib
import urllib2
import json

url_base = "http://127.0.0.1/ cgi/test"

#GET
try:
query = {'test':'yes','name':'colin'}
query_string = urllib.urlencode(query)
url = url_base+"?"+query_string
print "GET", url
print "web output:"
print urllib2.urlopen(urllib2.Request(url )).read()
außer Exception as err:
print err

#post
try:
url = url_base
print "POST", url
a = {'k1':123, 'k2': '456', 'k3':'test'}
json_s = json.dumps(a)
POST-Eingabe:"
print json_s
print "web output:"
print urllib2.urlopen(urllib2.Request(url, json_s)).read()
außer Ausnahme als err:
print err

Test ist in Bash geschrieben, wie unten gezeigt, wobei jq der Befehl zum Verarbeiten von JSON ist. Sie müssen ihn herunterladen, bash/sed/awk sollte sei systemeigene mit

#!/bin/bash
echo -e 'Content-type:text/plainr'
echo -e 'r'

if [ X "$REQUEST_METHOD" = s/,[ t]*$//;s/"//g;p'
else
echo ${QUERY_STRING} | awk 'BEGIN{RS="&"}1'
fi

Sie können jeden Webserver verwenden, solange er CGI unterstützt. Ich verwende hier einen sehr leichten Webserver – boa. Er ist möglicherweise nicht für große Anwendungswebsites geeignet, aber er ist es trotzdem Es ist besser, CGI zu verwenden, um APIs in eingebetteten Systemen bereitzustellen. Sehr nützlich und sehr einfach bereitzustellen.

Testen Sie es nach dem Erstellen

$ ./test.py

GET http://127.0.0.1/v1/lic/test?test=yes&name=colin
web Ausgabe:
test=yes
name=colin

POST http://127.0.0.1/v1/lic/test
POST-Eingabe:
{"k3": "test ", „k2“: „456“, „k1“: 123

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Referenz- und Lernwert für das Studium oder die Arbeit aller hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung.

Das obige ist der detaillierte Inhalt vonAusführliche Erklärung des Python-Lernens mit urllib und urllib2 für den Zugriff auf http GET/POST. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:www.word666.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen