python - 用curl如何curl
问题描述
curl -s -X POST -u cu2:l5f7jrRQttWdxsLmY7FV4+MA= -H 'Accept:application/xml' -H 'Date:Fri, 14 Apr 2017 02:07:17 GMT' -d 'date=2017-04-13&channel=vod.tv.cn&isExactMatch=false®ion=&startdate=2017-04-13&enddate=2017-04-14' http://opencenter.com/myview/bandwidth-origin
像这样一个又带-u-H-d的url要怎么用python通过curl访问并获取返回结果?
问题解答
回答1:推荐你修改一下问题标题。
根据你的说法,其实你提供的代码已经可以运行,只是你不知道如何获取其输出。
看你标了 Python,其实你只需要复制一份 Python 执行终端命令的代码你就懂了。
回答2:已经找到方法了,很多人会去用到pycurl,可是我百度找了下都只写了代码,代码含义都没有写,后来找到了`http://docs.python-requests.org/zh_CN/latest/user/quickstart.html`真的是个好东西,里面有关于requests模块的详细说明。简单分析下我的需求,1、http请求 2、‘-u’身份验证 3、‘-H’请求header头 4、‘-d’请求参数,理清思路再看文档就简单多了(刚开始我连-H是什么意思都没弄明白)。import requestsurl = ’http://opencenter.com/myview/bandwidth-origin’##定义http请求的地址,即1headers = {’Accept’: 'application/xml',’Date’:’Fri, 14 Apr 2017 02:07:17 GMT’}##定义header头,用dict方式定义,即3data = {’channel’: ’vod.tv.cn’, ’dataformat’: ’json’,’date’:’2017-04-13’}##定义参数,同样用dict定义,即4res = requests.post(url, data=data, headers=headers, auth=(’tv2’, sign))##post请求,且认证user=‘tv2’,password=‘sign’print res.text##就能看到打印结果了。
相关文章:
1. javascript - Vue.js的ElementUI库中,如何主动触发checkbox组件的change事件?2. javascript - webpack 打包 reactjs项目 css 分离3. javascript - 关于js高级程序中的问题4. javascript - 关于微信扫一扫的技术问题5. javascript - 如何清除向可编辑的(contenteditable)元素里粘贴的文本的标签和样式?6. javascript - 请教移动端从详情页返回到列表页原来位置的问题?7. javascript - vuex中子组件无法调用公共状态8. javascript - (_a = [""], _a.raw = [""],....); js一个小括号的是什么意思?9. javascript - js正则替换日期格式问题10. javascript - ios上fixed定位问题,定位在底部的按钮不显示了,但是又可以点击到,换了一个类名就可以显示了,但是设置的字体大小却失效了
