2017-03-22 9 views
1

をGETリクエストを送信:私はのpython3に同様の操作を行う必要がありのpython3 - 私はbashのスクリプト持っている(bashスクリプトを変換)のparamsで

curl -v -k -b "cookie_session_id=$cookie; path=/" -k -A "Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/17.0 Firefox/17.0" -H "SOAPAction: cwmp:GetParameterValues" -H "X-Requested-With: XMLHttpRequest" -H "Content-Type: text/xml" -e "https://$IP_Addr:$Port/dashboard_data.cgi" -d '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header><DMCookie>'$something_c'</DMCookie></soapenv:Header><soapenv:Body><cwmp:GetParameterValues><ParameterNames><string>'$something'</string></ParameterNames></cwmp:GetParameterValues></soapenv:Body></soapenv:Envelope>' --noproxy $IP_Addr http://$IP_Addr/data.cgi 

を。 私はクッキーでGET要求を送ることができるコードを持っています。

cookies = dict(cookie_session_id=cookie()) 
r = requests.get('http://{0}/data.cgi'.format(ip_addr), cookies=cookies) 

しかし、どのようにこの部分を追加するには、次のpython3のGETリクエストに

'<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header><DMCookie>'something_c'</DMCookie></soapenv:Header><soapenv:Body><cwmp:GetParameterValues><ParameterNames><string>'something'</string></ParameterNames></cwmp:GetParameterValues></soapenv:Body></soapenv:Envelope>' 

を?このコードスニペット一方

答えて

0
import urllib 
import urllib2 

params = urllib.urlencode({'hello':'there', 'foo': 'bar'}) 
urllib2.urlopen('http://somesite.com/get?' + params) 
+0

は歓迎され、そしていくつかの助けを提供することができる*どの*と*の(// meta.stackexchange.com/q/114762)は、[それは説明が含まれている場合大幅に改善]であろうなぜ*これが問題を解決するのか。あなたが今質問している人だけでなく、将来読者のための質問に答えていることを忘れないでください!説明を追加するためにあなたの答えを[編集]し、どんな制限と前提が適用されるかを示してください。 –

関連する問題