准备工具:

QueryList.php (我用的是版本3) 下载地址:https://github.com/jae-jae/QueryList

phpQuery.php   下载地址:https://doc.querylist.cc/

phpStudy:其中包含mysql数据库

注意:PHP版本最好在5.4.45的。在phpStudy中修改。

创建连接数据库的php文件,文件名为sql.php:

<?php
/*** @Author: Marte* @Date:   2019-02-22 02:19:55* @Last Modified by:   Marte* @Last Modified time: 2019-02-22 02:25:53*/
$dblocation="localhost:3306";
$user="root";
$password="root";$con = mysql_connect($dblocation,$user,$password);
if (!$con)
{die('Could not connect: ' . mysql_error());}
mysql_select_db("spider", $con);

在phpstudy的网站目录phpStudy\PHPTutorial\WWW\中创建项目文件夹名为QueryList。

将下载的QueryList.php和phpQuery.php解压后,从解压的文件夹中复制这两个文件夹到项目文件夹QueryList中。

此时,项目的文件夹中的文件如下(demo.php为下一步创建的文件):

创建demo.php,将自己写的爬虫代码放在这里。

其中代码为:

<?php
//引入两个文件
require 'phpQuery.php';
require 'QueryList.php';
//使用命名空间
use QL\QueryList;//引入sql文件
include 'sql.php';
try {header('Content-type:text/html;charset=utf-8');$run_times=0;while (true) {//由于实验的网址中存在分页,所以用死循环循环页码index_*.html//此处为分页的第一页连接$hj = QueryList::Query('http://www.bankofchina.com/sourcedb/ffx/index.html',array("url"=>array('tr td','text')/*通过标签的方式选择html中需要爬的数据地址,text表示爬去标签之间的内容*/));if($run_times!=0){$run_times++;//此处为爬取的分页数据的分页连接$hj = QueryList::Query('http://www.bankofchina.com/sourcedb/ffx/index_'.$run_times.'.html',array("url"=>array('tr td','text')));}//开始通过超链接获取到制定的网页源代码$data = $hj->getData(function($x){return $x['url'];});$sige=7;//由于返回的数据是一个数组对象,且根据实际情况分为7个数组为一组,所以此变量的作用是识别每7次就做为一个数据记录,即存入数据库的一条记录$model = array();//声明一个空数组,存放循环7次后组成的新数组,此数组的元素作为一条数据的数据字段,用于存放到数据库for ($i=0; $i<= count($data); $i++) {//count($data)统计爬到的数据数组的元素个数if($sige>0){//echo $data[$i];array_push($model,$data[$i]);//将爬到的数据数组循环,并将元素作为新的数组元素放在新的数组中//echo  "  ";$sige--;}if($sige==0){//echo  "<br>";//print_r($model);//echo  "<br>";//sql语句,需要存入的值是新数组的每个元素$sql="insert into bank (name,num,timess,enterprice,outprice,moneyss,timesss) VALUES ('".$model[0]."','".$model[1]."','".$model[2]."','".$model[3]."','".$model[4]."','".$model[5]."','".$model[6]."')";mysql_query($sql,$con);//开始执行插入语句$model = array();//将存入的数据元素从定以的新的数组中删除,将此数组清空//echo $sql;$sige=7;//清空数组后,将标记循环次数回复到初始状态}}}// print_r($hj);//print_r($data);/* echo '<br><hr><br>';//echo "<br><br>";*///echo count($data);mysql_close($con);//当while循环结束时,说明所有数据已经爬取完毕,关闭数据库的连接
} catch (Exception $e) {mysql_close($con);//以上爬取数据到关闭数据库的代码若有某一行报错,则立即执行到此处,抛出异常,并关闭数据库连接echo $e;
}

在浏览器中输入本站点,并访问到demo.php文件。访问成功后数据将存放在数据库中。若想看到结果,请将上诉代码中的输出、打印语句解除注释,访问的时候页面上会显示结果。

php爬虫框架使用案例QueryList,将数据爬到mysql数据库相关推荐

  1. Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储(转)

    Python爬虫可以说是好玩又好用了.现想利用Python爬取网页股票数据保存到本地csv数据文件中,同时想把股票数据保存到MySQL数据库中.需求有了,剩下的就是实现了. 在开始之前,保证已经安装好 ...

  2. python抓取数据库数据_Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储...

    Python爬虫可以说是好玩又好用了.现想利用Python爬取网页股票数据保存到本地csv数据文件中,同时想把股票数据保存到MySQL数据库中.需求有了,剩下的就是实现了. 在开始之前,保证已经安装好 ...

  3. python爬虫实现股票数据存储_Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储!...

    Python爬虫可以说是好玩又好用了.现想利用Python爬取网页股票数据保存到本地csv数据文件中,同时想把股票数据保存到MySQL数据库中.需求有了,剩下的就是实现了. 在开始之前,保证已经安装好 ...

  4. python爬虫爬取股票软件数据_Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储(转载)...

    完整代码 实际上,整个事情完成了两个相对独立的过程:1.爬虫获取网页股票数据并保存到本地文件:2.将本地文件数据储存到MySQL数据库.并没有直接的考虑把从网页上抓取到的数据实时(或者通过一个临时文件 ...

  5. Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 python免费学习资 ...

  6. MySQL 怎么插入10天前的日期_Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储!...

    Python爬虫可以说是好玩又好用了.现想利用Python爬取网页股票数据保存到本地csv数据文件中,同时想把股票数据保存到MySQL数据库中.需求有了,剩下的就是实现了. 在开始之前,保证已经安装好 ...

  7. php 爬取股票数据库,爬虫框架Scrapy实战一——股票数据爬取

    简介 目标: 获取上交所和深交所所有股票的名称和交易信息. 输出: 保存到文件中. 技术路线:Scrapy爬虫框架 语言: python3.5 由于在上一篇博客中已经介绍了股票信息爬取的原理,在这里不 ...

  8. Colly 学习笔记(二)——爬虫框架,抓取下载数据(上证A股数据下载)

    Colly 学习笔记(二)--爬虫框架,抓取下载数据(上证A股数据下载) Colly 学习笔记(一)--爬虫框架,抓取中金公司行业市盈率数据 Colly 学习笔记(二)--爬虫框架,抓取下载数据(上证 ...

  9. python爬虫网络数据包_Python爬虫之多线程图虫网数据爬取(十六)

    Python爬虫之多线程图虫网数据爬取(十六) 发布时间:2019-05-14 10:11, 浏览次数:289 , 标签: Python 原创不易,转载前请注明博主的链接地址:Blessy_Zhu h ...

  10. python爬取电影网站存储于数据库_python爬虫 猫眼电影和电影天堂数据csv和mysql存储过程解析...

    字符串常用方法 # 去掉左右空格 'hello world'.strip() # 'hello world' # 按指定字符切割 'hello world'.split(' ') # ['hello' ...

最新文章

  1. MD5加密 登录用户名密码
  2. 为什么servlet-nameaction/servlet-name要这么写
  3. 向上取整的方法_瓷砖测量的方法有哪些?瓷砖尺寸一般是多少?
  4. The 2018 ACM-ICPC Asia Qingdao Regional Contest, Online
  5. 爱奇艺体验Serverless极致扩缩容,资源利用率提升40%
  6. onlyoffice回调函数controller方式实现
  7. linux定时任务执行url,科技常识:linux定时任务访问url实例
  8. 【华为云技术分享】云图说|超赞!终于有人把云存储“三兄弟”讲清楚了!
  9. php如何去重,php二维数组如何去重?(代码示例)
  10. socket通信压力测试
  11. (L)小写l和(i)大写I的区分方法
  12. Windows 2016 出現 0xc0000135 ServerManager.exe 无法启用
  13. app标签栏android,Android Navigation TabBar控件实现多彩标签栏
  14. 【C语言航路】第一站:初识C语言(三)
  15. 学习smarty手记一,如何配置smarty
  16. 西门子MES simatic it 资料-西门子数字化
  17. user is not in the sudoers file. This incident will be reported 解决方法
  18. mac 上的有道词典查第一个词时卡死
  19. echarts 3D earth实时攻击 线路图
  20. AT89S52最小系统

热门文章

  1. zoom声音如何设置,zoom如何设置声音
  2. 高精度乘法+刘汝佳BigNumber高精度结构体
  3. 计算机传真,电脑收发传真
  4. 自动驾驶对公路基础设施有何深刻影响?(上)| 自动驾驶系列
  5. snmp使用默认团体名_CactiEZ 中文版snmp默认团体名
  6. cas入门之:cas 4 如何以http形式发布
  7. 微pe工具箱 系统安装教程_微pe工具箱怎么装系统
  8. 对期货大赛获奖者杨宏斌、陈伟的采访
  9. MongoDB 高阶
  10. forge java7_1.构建forge