I want to execute a curl command in Python.
Usually, I just need to enter the command in the terminal and press the return key. However, I don’t know how it works in Python.
The command shows below:
curl -d @request.json --header "Content-Type: application/json" https://www.googleapis.com/qpxExpress/v1/trips/search?key=mykeyhere
There is a
request.json file to be sent to get a response.
I searched a lot and got confused. I tried to write a piece of code, although I could not fully understand it and it didn’t work.
import pycurl import StringIO response = StringIO.StringIO() c = pycurl.Curl() c.setopt(c.URL, 'https://www.googleapis.com/qpxExpress/v1/trips/search?key=mykeyhere') c.setopt(c.WRITEFUNCTION, response.write) c.setopt(c.HTTPHEADER, ['Content-Type: application/json','Accept-Charset: UTF-8']) c.setopt(c.POSTFIELDS, '@request.json') c.perform() c.close() print response.getvalue() response.close()
The error message is
Parse Error. How to get a response from the server correctly?