远程读取json数据并写入数据库

参考:http://www.jb51.net/article/39937.htm

$curlPost = ‘a=1&b=2‘;//模拟POST数据
$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPHEADER, array(‘X-FORWARDED-FOR:0.0.0.0‘, ‘CLIENT-IP:0.0.0.0‘));  //构造IP
curl_setopt($ch, CURLOPT_REFERER, "http://www.jb51.net/");   //构造来路 
curl_setopt($ch,CURLOPT_URL, ‘http://www.jb51.net‘);//需要抓取的页面路径
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt ($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);//post值

$file_contents = curl_exec($ch);//抓取的内容放在变量中
curl_close($ch)

<?php
$mysql_server_name=‘localhost‘;
$mysql_username=‘test‘;
$mysql_password=‘test‘;
$mysql_database=‘apitest‘;
$conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password) or die("error connecting") ;
mysql_select_db($mysql_database);

$a=json_decode(request_post($url="http://weshop.zocai.com/Api/Global/mod_address_linkage_check/",$param="parentid"),true);
//var_dump($a);

foreach($a[‘info‘] as $row) {
//print_r($row);
$statement = "INSERT INTO `apitest` (id, status, areaid, parentid, name, remark, create_time, sort, level) VALUES ";
$statement .= ‘ ("‘ . implode($row, ‘","‘) . ‘")‘;
// echo $statement;
mysql_query($statement,$conn);
echo mysql_error();
// exit;

}

function request_post($url = ‘‘, $param = ‘‘) {
if (empty($url) || empty($param)) {
return false;
}

$postUrl = $url;
$curlPost = $param;
$ch = curl_init();//初始化curl
curl_setopt($ch, CURLOPT_URL,$postUrl);//抓取指定网页
curl_setopt($ch, CURLOPT_HEADER, 0);//设置header
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求结果为字符串且输出到屏幕上
curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);
$data = curl_exec($ch);//运行curl
curl_close($ch);
return $data;
}

?>

时间: 2024-08-02 14:45:45

远程读取json数据并写入数据库的相关文章

python-文件读取json数据写到数据库

#!/bin/env python#coding=utf-8 import sysimport urllib2import jsonimport datetimeimport pymysql as MySQLdbimport timefrom itertools import islice reload(sys)sys.setdefaultencoding('utf-8') mysql_conn = MySQLdb.connect(host="127.0.0.1",user="

批量插入数据, 将DataTable里的数据批量写入数据库的方法

大量数据导入操作, 也就是直接将DataTable里的内容写入到数据库 通用方法: 拼接Insert语句, 好土鳖 1. MS Sql Server:   使用SqlBulkCopy 2. MySql: adapter.update()批量更新 MySqlBulkLoader, 这个是从文件里边到的, 有个实现是先将DATATable编程CSV文件, 在用MySqlBulkLoader导入MySql 参考文章: http://theonetechnologies.com/outsourcing/

当向后台插入或读取JSON数据遇见回车时

今天在项目中发现,当插入或读取JSON数据时遇见回车符,返回JSON数据格式时会报错(firebug里体现为乱码),百度了一下发现JSON不支持字符串里存在回车! 解决办法: 在向接口插入带json格式的数据之前,将回车等特殊符合替换成json接受的符号: 在向接口请求读取json格式的数据时,将回车等特殊符合替换成json接受的符号: 发送到后台 myPostStr.replace(/[\r\n]/g,"|"); //将myStr字符串里的回车和换行符替换成"|"

DataTable数据批量写入数据库三种方法比较

DataTable数据批量写入数据库三种方法比较 标签: it 分类: C#1)   insert循环插入:2)   sqldataadapter.update(dataset,tablename);3)   sqlbulkcopy.WriteToServer(datatable); 1.生成测试的datatable表,表结构如下:UniqueID(主键,自动增长)   |   CompanyName   |   CompanyCode   |   Address   |   Owner   |

iOS彩票项目--第七天,初次读取json数据、KVC转模型技巧、运行时字典转模型以及初步对显示网页的操作并且跟踪标签

一.初次读取json数据 二.KVC转模型技巧,这里的技巧主要解决的是字典中的key 与 模型中有的属性对应不起来的时候 的解决办法 <方法1> <方法2>运行时字典转模型,运行时自己一直很晕.不过还是整理下来,方便以后用. 这里直接创建了一个分类. 头文件代码 1 // 2 // NSObject+Model.h 3 // Chaos_G 4 // 5 6 #import <Foundation/Foundation.h> 7 8 @interface NSObjec

Android 读取 json 数据(遍历jsonarray和jsonboject)-FenGKun

Android 读取 json 数据(遍历jsonarray和jsonboject) public String getJson(){ String jsonString = "{\"FLAG\":\"flag\",\"MESSAGE\":\"SUCCESS\",\"name\":[{\"name\":\"jack\"},{\"name\"

Java解析(读取)Json数据

以前看过书上说,XML是web service间传输信息的标准格式吧,就看了看XML.最近在做个网站,又说是有了JSON,第一回听说就看了看,总结总结一下. 1.JSON介绍 JSON比XML简单,主要体现在传输相同信息的情况下,文件的大小不同. JSON只用于传输信息,XML还可以用于配置文件的使用. JSON中的符号主要有: " , [ {: 2.JSON中的数组和对象 2.1数组(JSONArray) 数组用一对[],表示存放的是一般的数组数据. 如:["11",&qu

Java读取CSV数据并写入txt文件

读取CSV数据并写入txt文件 package com.vfsd; import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.IOException; import com.csvreader.CsvReader; /****************************************************************************

DataTable 数据批量写入数据库三种方法比较

DataTable数据批量写入数据库三种方法比较 1)   insert循环插入: 2)   sqldataadapter.update(dataset,tablename); 3)   sqlbulkcopy.WriteToServer(datatable); 1.生成测试的datatable表,表结构如下: UniqueID(主键,自动增长)   |   CompanyName   |   CompanyCode   |   Address   |   Owner   |   Memo 共6