利用爬虫爬取看看豆网站站的数据信息

news/2024/5/9 17:27:14/文章来源:https://blog.csdn.net/xiao_tommy/article/details/53332097

其实很早我就开始关注爬虫技术,这两天特别学习了一下,并且做了一个简单的demo。爬取了看看豆网站的数据信息。总共11751本书,爬取了不到3个小时,基本每秒爬取1条。速度慢的原因主要是单线程,使用mysql数据库。想要提高速度的话可以使用多线程和redis。但是对于初学者来说只要能爬取下来就很不错了。在这里我使用了一个爬虫框架---phpspider。

爬取完成后,我把数据从数据库中导成.csv格式。由于我的数据比较少,所以我是直接excle中做的分析。按道理来说应该使用JS的ECharts做数据分析的。但是我的Node.JS还没有学习过。所以先简单的进行测试。另,我已经把自己的demo上传到了github。https://github.com/XiaoTommy/phpspider

附:

看看豆官网:https://kankandou.com/

ECharts官网:http://echarts.baidu.com/

Node.js官网:https://nodejs.org/en/



demo源代码如下:

<?php
ini_set("memory_limit", "1024M");
require dirname(__FILE__).'/../core/init.php';/* Do NOT delete this comment */
/* 不要删除这段注释 */$configs = array('name' => '看豆豆',
//    'log_show' => false,'tasknum' => 1,//'save_running_state' => true,'domains' => array('kankandou.com','www.kankandou.com'),'scan_urls' => array('https://kankandou.com/'),'list_url_regexes' => array("https://kankandou.com/book/page/\d+"),'content_url_regexes' => array("https://kankandou.com/book/view/\d+.html",),'max_try' => 5,//'export' => array(//'type' => 'csv',//'file' => PATH_DATA.'/qiushibaike.csv',//),//'export' => array(//'type'  => 'sql',//'file'  => PATH_DATA.'/qiushibaike.sql',//'table' => 'content',//),'export' => array('type' => 'db','table' => 'kankandou',),'fields' => array(array('name' => "book_name",'selector' => "//h1[contains(@class,'title')]/text()",'required' => true,),array('name' => "book_content",'selector' => "//div[contains(@class,'content')]/text()",'required' => true,),array('name' => "book_author",'selector' => "//p[contains(@class,'author')]/a",'required' => true,),array('name' => "book_img",'selector' => "//div[contains(@class,'img')]/a/img",'required' => true,),array('name' => "book_format",'selector' => "//p[contains(@class,'ext')]",'required' => true,),array('name' => "book_class",'selector' => "//p[contains(@class,'cate')]/a",'required' => true,),array('name' => "click_num",'selector' => "//i[contains(@class,'dc')]",'required' => true,),array('name' => "download_num",'selector' => "//i[contains(@class,'vc')]",'required' => true,),),
);$spider = new phpspider($configs);$spider->on_handle_img = function($fieldname, $img)
{$regex = '/src="(https?:\/\/.*?)"/i';preg_match($regex, $img, $rs);if (!$rs){return $img;}$url = $rs[1];$img = $url;//$pathinfo = pathinfo($url);//$fileext = $pathinfo['extension'];//if (strtolower($fileext) == 'jpeg')//{//$fileext = 'jpg';//}以纳秒为单位生成随机数//$filename = uniqid().".".$fileext;在data目录下生成图片//$filepath = PATH_ROOT."/images/{$filename}";用系统自带的下载器wget下载//exec("wget -q {$url} -O {$filepath}");替换成真是图片url//$img = str_replace($url, $filename, $img);return $img;
};$spider->start();
分析数据:我只是简单的统计了一下,重点不是在这里。其中点击次数和下载次数有点小错误,暂时还在排查错误中。



其中有任何不对的地方,望请指正。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_862976.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

利用爬虫爬取 zol网站热门手机

使用了20几分钟&#xff0c;爬取了zol相关的热门手机型号、特点、价格、上市时间、屏幕大小相关信息。对最新的热门手机做了一个简单的统计。如果你想知道任何其他的信息&#xff0c;可以给我留言。我已经把我的相关代码传导了github上。欢迎下载。另附其中还有关于LOL英雄数据…

又拍网架构-又一个用到PYTHON的网站

又拍网是一个照片分享社区&#xff0c;从2005年6月至今积累了260万用户&#xff0c;1.1亿张照片&#xff0c;目前的日访问量为200多万。5年的发展历程里经历过许多起伏&#xff0c;也积累了一些经验&#xff0c;在这篇文章会介绍一些在技术上的积累。 又拍网和大多数Web2.0站点…

web网站搜索框的搜索实现

js 添加一个按钮 &#xff0c;给按钮&#xff0c;添加&#xff0c;onclick事件"aiqiyi()" function aiqiyi(){ var t获取搜索框值&#xff1b; window.location.href"http://so.iqiyi.com/so/q_"t; http://so.iqiyi.com/so/q_ 是爱奇艺的搜索&#xff…

IIS+php环境下TinkPHP5的网站配置总结(萌新亲测)

环境介绍 Win7;我用的是ThinkPHP5.0框架&#xff1b;phpStudy2008集成环境&#xff0c;它会集成php5.2到7.2的所有版本&#xff0c;所以免去了安装php的步骤。一开始我在本地用的是Apachephp环境运行的网站&#xff0c;这是没有任何问题的&#xff0c;但是服务器的环境是IISph…

六款堪称神器的网站

导读网站是通往互联网世界的一大工具&#xff0c;在这片信息的海洋上&#xff0c;总有那么几款产品&#xff0c;如海岛般骄傲伫立&#xff0c;带给人不一样的感觉。当然&#xff0c;本文的标题是有失公允的&#xff0c;世界是优秀的产品不计其数&#xff0c;要分类罗列出来简直…

APP设计与网站着陆页设计

APP设计 可用性的四要素 o 功能性&#xff1a;这个产品能够正常工作吗&#xff1f; o 可学习性&#xff1a;这个产品在不经过额外学习的情况下能够顺利使用吗&#xff1f; o 灵活性&#xff1a;除了完成主要的任务之外&#xff0c;这个产品能做更多的事情吗&#xff1…

win2012 服务器IIS 8.0 搭建FTP,VS2015发布网站(一)FTP设置

沉寂了段时间&#xff0c;想明白了一些事情&#xff0c;现在准备学学asp.net5当前微软的主流mvc5开发网站 现在想用nopcommerce 搭建商城&#xff0c;作为业余时间的爱好玩玩 首先&#xff0c;打开服务器管理器&#xff0c;点击添加角色和功能 web服务器IIS里面这些选项打勾 然…

win2012 服务器IIS 8.0 搭建FTP,VS2015发布网站(二)Visual Studio发布网站

书接上文&#xff0c;右键项目&#xff0c;点击发布 发布web里面&#xff0c;点击 自定义 输入配置文件名称 发布方法-选择FTP 服务器-填写ftp://ftp服务器地址:端口&#xff0c;例子:ftp://baidu.com:21端口号一定要加 站点路径-如果ftp的根路径是/&#xff0c;网站绝对路径…

python爬取前程无忧招聘网站数据搭建Hadoop、Flume、Kafka、Spark用Hive做数据分析Sqoop存储到Mysql并实现可视化

文章目录 一、项目总体要求二、环境搭建1、安装包准备2、安装jdk&#xff08;1&#xff09;查询是否安装java&#xff08;2&#xff09;卸载jdk&#xff08;3&#xff09;安装jdk&#xff08;4&#xff09;配置jdk环境变量 3、配置ssh免密登录&#xff08;1&#xff09;进入到我…

爬取我爱我家网站二手房信息

items文件定义爬取数据&#xff1a; apartment scrapy.Field() total_price scrapy.Field() agent scrapy.Field() image_urls scrapy.Field() images scrapy.Field()spider文件&#xff1a; # -*- coding: utf-8 -*- import scrapy from pachong2.items import Pachong…

使用httpwebrequest发送数据到网站

怎样通过HttpWebRequest 发送 POST 请求到一个网页服务器&#xff1f;例如编写个程序实现自动用户登录&#xff0c;自动提交表单数据到网站等。 假如某个页面有个如下的表单&#xff08;Form&#xff09;&#xff1a; <form name"form1" action" http://www.…

大型电子商务网站架构

大型电子商务网站架构 (转自&#xff1a;http://www.cnblogs.com/skydau/archive/2009/08/30/1556701.html) 7.同一个网站的多语言该如何处理是好,使用配置文件然后cookie或url来判别?客户是自己公司&#xff0c;使用标准方法即可 8.电子商务网站最多的就是 商品的打折方式和…

小型电子商务网站设计原则

最近谈得最多的话题莫过于大规模&#xff0c;大数据量&#xff0c;高性能&#xff0c;高并发等架构话题&#xff0c;其实一个电子商务网站开始时一定是小规模&#xff0c;小数据量&#xff0c;用不着把架构弄得过于复杂。高度设计、过度扩展(高德纳大爷也说过&#xff0c;"…

正确地定制您的网站 ndash; 文件替代机制,zencart

很多用户对zen cart做了自己的修改&#xff0c;非常好&#xff01;但同时&#xff0c;一些用户修改了很多重要的文件&#xff0c;例如&#xff1a; /includes/filenames.php /includes/languages/schinese.php /includes/languages/schinese/*.php 等等… 友情提示&#xff…

网站集成支付宝

&#xff08;本文转载于http://stephen830.javaeye.com/blog/254827 ) 国内电子商务系统实现的基本流程如下&#xff1a; 客户在系统内下订单 -> 系统根据订单生成支付宝接口url -> 客户通过url使用支付宝&#xff08;网上银行&#xff09;付款 -> 支付宝将客户的付款…

淘宝技术发展(个人网站)之二

个人网站 2003年4月7日&#xff0c;马云&#xff0c;在杭州&#xff0c;成立了一个神秘的组织。他叫来十位员工&#xff0c;要他们签了一份协议&#xff0c;这份协议要求他们立刻离开阿里巴巴&#xff0c;去做一个神秘的项目。这个项目要求绝对保密&#xff0c;老马戏称“连说梦…

如何编写外贸电子商务网站产品的描述信息

把自己的商品信息准确地传递给你的客户&#xff0c;是运行电子商务的重要环节&#xff0c;也是促成客户选购产品的关键因素。对于电子商务网站来说商品的描述是必不可少&#xff0c;是对图片信息的重要的补充。图片传递给客户的只是商品的形状和颜色的信息&#xff0c;对于性能…

利用CDN技术加速国外客户访问外贸电子商务网站的速度

很多外贸企业都遇到过这样的问题&#xff1a;网站做得非常好&#xff0c;可还是经常得到国外客户的反馈说是访问网站的速度慢&#xff0c;这不仅会在很大程度上影响企业的外贸交易&#xff0c;还会很大的影响到企业的形象。保证国外客户高速地访问您的网站&#xff0c;是您在外…

网站数据分析工具

对于外贸电子商务平台而言&#xff0c;除了网站销售的产品内容及销售额外,那些很有可能直接转化为订单的数据&#xff0c;包括流量、订阅数、排名和主机等&#xff0c;也是非常重要的&#xff0c;另外还有一些其他平台的相关数据及盈利情况等等&#xff0c;也都需要外贸电子商务…

使用 Startssl 提供的免费证书+Nginx 搭建 https 的网站

使用 Startssl 提供的免费证书Nginx 搭建 https 的网站 Posted on October 1, 2010 by gkp Startssl 是一家提供免费 SSL 证书的公司&#xff0c;我们可以用其搭建 https 网站&#xff0c;貌似可以被除去Opera 外的所有主流浏览器所信任&#xff0c;过程简单记录如下&#x…