PHP处理来自Python的Post的json数据

最近用Python处理了一些json数据,但在过程中遇到一些问题,遂记录之。

1.Python Post json格式数据至服务器:

查阅了一些资料,大多是这么样的:

__author__ = 'jiezhi'

import urllib
import urllib2

data = {'name': 'jiezhi', 'age': '24'}
ret = urllib2.urlopen(url='http://jiezhiblog.com/test.php', data=urllib.urlencode(data))
print ret.read()

但是,到php那里往往是array类型的了。

经过几番折腾改用下面的代码:

__author__ = 'jiezhi'

import urllib2
import json

data = {'name': 'jiezhi', 'age': '24'}
ret = urllib2.urlopen(url='http://jiezhiblog.com/test.php', data=json.dumps(data))
print ret.read()

2.在PHP端问题

用了改后的Python代码,却发现$_POST没有获取到数据,所以改用file_get_contents("php://input")来获取提交的数据:

<?php
    $input = file_get_contents("php://input");
    var_dump($input);
    if ($input){
        print_r($input);
        $arr = json_decode($input,true);
        echo "arr";
        print_r($arr);
    }
?>

此时可以正确获取到提交的数据。

首发地址:http://jiezhiblog.com/archives/366

时间: 2024-10-07 06:14:56

PHP处理来自Python的Post的json数据的相关文章

使用Python Yaml包处理Json数据

在做网络爬虫的时候会遇到json数据格式的数据包,如果返回的是一个json格式的文件,可以使用 Python Yaml包处理数据,不需要再使用正则表达式匹配了,使用实例如 https://maps-api-ssl.google.com/maps/suggest?q=hello  这个地址,我们需要query对应的数据项. 相关代码如下: # -*- coding: utf-8 -*- import yaml import urllib2 address = 'https://maps-api-s

python中级----&gt;pymongo存储json数据

这里面我们介绍一下python中操作mangodb的第三方库pymongo的使用,以及简单的使用requests库作爬虫.人情冷暖正如花开花谢,不如将这种现象,想成一种必然的季节. pymongo的安装及前期准备 一.mangodb的安装以及启动 测试机器:win10, mangodb版本v3.4.0,python版本3.6.3. mangodb的安装目录:D:\Database\DataBase\Mongo.数据的存放目录:E:\data\database\mango\data.首先我们启动m

python#读csv,excel,json数据

1 #读csv,excel,json数据 2 with open('E:\\test\\xdd.csv','r') as f: 3 for line in f.readlines(): 4 print(line) 5 6 7 import pandas 8 df = pandas.read_csv('E:\\test\\xdd.csv') 9 print(df) 10 11 import pandas 12 df = pandas.read_excel('E:\\test\\aa.xls') 1

python爬虫中涉及json数据的处理

在执行爬虫项目的过程中,有时返回的不是一个html页面而是json格式数据,此时对数据的解析非常重要. 1.Json格式数据的爬取   采用request对以上的url进行爬取: import  requests content=requests.get(url,headers=headers).content 在爬取的过程中,考虑到需要模拟真实的用户,因此需要添加cookie或者header参数. 2.对爬取的json格式数据的解析 数据已经爬取下来,存放在contend里面,接下来就是对数据

python提取网页中json数据

用法示例: 相对于python解析XML来说,我还是比较喜欢json的格式返回,现在一般的api返回都会有json与XML格式的选择,json的解析起来个人觉得相对简单些 先看一个简单的豆瓣的图书查询的api返回 http://api.douban.com/v2/book/isbn/9787218087351 {"rating":{"max":10,"numRaters":79,"average":"9.1"

python 读取单所有json数据写入mongodb(单个)

<--------------主函数-------------------> from pymongo import MongoClientfrom bson.objectid import ObjectIdfrom read_json import read def mongoclient(): client = MongoClient('127.0.0.1', 27017) db = client.test collection = db.test # collection.insert(

python 处理 json 数据

1.通过json包处理json数据 import json #导入json包 json.dumps() # 将字典.列表转化为json格式的字符串 json.loads() #将json 格式的字符串转化为python 对象 json.dump(lt,open('json.txt','w',encoding='utf8')) #将lt 转化为json 格式的字符串写入到文件当中 json.load(open('json.txt','r',encoding='utf8')) #从文件中读取json

转载:深入了解Struts2返回JSON数据的原理及具体应用范例

早在我刚学Struts2之初的时候,就想写一篇文章来阐述Struts2如何返回JSON数据的原理和具体应用了,但苦于一直忙于工作难以抽身, 渐渐的也淡忘了此事.直到前两天有同事在工作中遇到这个问题,来找我询问,我又细细地给他讲了一遍之后,才觉得无论如何要抽一个小时的时间来写这篇文章, 从头到尾将Struts2与JSON的关系说清楚. 其实网络中,关于这个问题的答案已是海量,我当初也是从这海量的答案中吸收精华,才将“Struts2返回JSON数据”这个问题搞清楚的.但 是这些海量的答案,有一个共同

Python定时返回网址状态码&&网页内容是否为json数据

#!/usr/bin/env python#-*- coding:utf:8 -*- import requests,sys,os,time # 判断传值数知否匹配if len(sys.argv) == 3:passelse:    print 'Usage: %s <monitoring_name> <interval_time>'%(sys.argv[0])    sys.exit(2) url = 'url地址' # 覆盖存放检测值文件def successful_state