php爬虫直接获取数据库,php爬虫---mysql大批数据导入数据库-4种方法比较

[导读]今天心情不错,继续来填我的爬虫项目的坑,在这里我已经拿到了优酷动漫上的数据了,大约有3000条左右。正是数据量有点多,不可能人工用手填入数据库的,不然还不累死,而且还会出错,这样子做不靠谱是最笨的方法。

今天心情不错,继续来填我的爬虫项目的坑,在这里我已经拿到了优酷动漫上的数据了,大约有3000条左右。正是数据量有点多,不可能人工用手填入数据库的,不然还不累死,而且还会出错,这样子做不靠谱是最笨的方法。所以这里面我第一个想到的就是直接使用sql语句插入,一条条的插入数据库。

我的数据具体是这个样子的:

dd45b987b0df70da0a5336dbf3e87cd4.png

//$v[0]===>动漫简介//$v[1]===>动漫图片url//$v[2]===>动漫名称//$v[3]===>动漫外链数组

(1)直接插入

所以具体的实现代码如下:

//方法1:直接插入

foreach($json as $k=>$v){

//$v[0]===>动漫简介

//$v[1]===>动漫图片url

//$v[2]===>动漫名称

//$v[3]===>动漫外链数组

//插入数据到list表

$sql="INSERT INTO `v_list` (`id`,`type`,`title`,`img_url`,`abstract`,`episode`)

VALUES ($k,0,'$v[2]','$v[1]','$v[0]',".sizeof($v[3]).")";

if($conn->query($sql)){

echo '插入数据成功!';

}else{

die('插入数据失败:'.$conn->error);

}

foreach($v[3] as $kk=>$vv){

//插入数据到vediolist

$sql="INSERT INTO `v_vediolist` (`belong`,`vedio_url`,`title`)VALUES($k,'$vv[1]','$vv[0]')";

if($conn->query($sql)){

echo '插入数据成功!';

}else{

die('插入数据失败:'.$conn->error);

}

}

}

这种方法真的是慢,花了70秒左右。

2d42b6b7e2eead8ab1b972c36476086b.png

3000条数据就70秒,那数据多起来不就等几天几夜也没录完。所以开始找另外一种方法。

(2)MySQLi预处理

//方法2:MySQLi 预处理

$stmt1 = $conn->prepare("INSERT INTO `v_list` (`id`,`type`,`title`,`img_url`,`abstract`,`episode`)

VALUES ("https://img-blog.csdn.net/20170726001753381" alt="">

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值