用于统计的sum.py代码: import re import pymysql # 入口函数 def main(): dic={'00':0,'01':0,'02':0,'03':0,'04':0,'05':0,'06':0,'07':0,'08':0,'09':0,'10':0,'11':0,'12':0,'13':0,'14':0,'15':0,'16':0,'17':0,'18':0,'19':0,'20':0,'21':0,'22':0,'23':0} conn=pymysql.conn…
说明:利用理想论坛爬虫1.07版(http://www.cnblogs.com/xiandedanteng/p/8954115.html) 下载了前十页主贴及子贴,共得到359619条数据,以此数据为基础对2018-4-25一天的情况做统计 #1 2018-4-25 一天的发帖(主贴+子贴)数sql:select count(*) from topic0426 where tdate='2018-4-25'result:5215 #2 2018-4-25 一天的发主贴数sql:select co…
//====================================================== // 理想论坛帖子下载爬虫1.09 // 使用断点续传模式,因为网络传输会因各种原因中断 // 2018年5月4日 //====================================================== var http=require("http"); // http模块 var zlib = require('zlib'); // 用于解析gz…
在1.06版本时,访问网页采用的时http.request,但调用次数多以后就问题来了. 寻找别的方案时看到了https://cnodejs.org/topic/53142ef833dbcb076d007230,感觉request可以试试,之前在别的地方也听人夸过. 于是替换了saveTopicDetails函数的访问模块,经测试还不错,一万多条数据能跑下来,出错的几率不算高,不过今天也有休盘理想论坛压力轻的利好因素. 代码如下: //==============================…
理想论坛有些长贴,针对这些长贴做统计可以知道某ID什么时段更活跃. 爬虫代码为: #------------------------------------------------------------------------------------ # 理想论坛爬虫长贴版1.00,用于爬取单个长贴,数据存到文件里 # 再由insertDB.py读取插DB,sum.py取出分时段数据,statistics chart显示数据 # 2018年4月27日 #--------------------…
一直想做一个能把理想论坛指定页范围的帖子都能完整下载下来的爬虫,但未能如愿. 主要的障碍在并发数的控制和长时间任务的突然退出,比如想下载前五页的帖子,分析后可得到大约15000个主贴或子贴,如果用回调函数直接在循环中访问是不行的,程序会报Error:socket hang up异常,大约一次只能并发百个左右(其实这个数很神奇的和Python理想爬虫的最高线程数接近了).如果一次性把一万五千个回调都发出来,那连本机的有线网络都会短时间崩塌,路由器的访问互联网的功能也会中断几分钟. 于是采用了Eve…
下午再接再厉仿照Nodejs版的理想帖子爬虫把Python版的也改造了下,但美中不足的是完成任务的线程数量似乎停滞在100个左右,让人郁闷.原因还待查. 先把代码贴出来吧,也算个阶段性成果. 爬虫代码: # 理想论坛爬虫1.05,用于爬取主贴再爬子贴,数据存到文件里,再由insertDB.py读取插DB from bs4 import BeautifulSoup import requests import threading import re import time import datet…
用Nodejs把Python实现过的理想论坛爬虫又实现了一遍,但是怎么判断所有回调函数都结束没有好办法,目前的spiderCount==spiderFinished判断法在多页情况下还是会提前中止. 代码如下: //====================================================== // 理想论坛帖子下载爬虫1.01 // 目标网址:http://bbs.tianya.cn/post-no05-308123-1.shtml // 2018年4月16日 /…
1.01-1.03版本都有多线程争抢DB的问题,线程数一多问题就严重了. 这个版本把各线程要添加数据的SQL放到数组里,等最后一次性完成,这样就好些了.但乱码问题和未全部完成即退出现象还在,而且速度上应该大力提高. 本该就是把DB操作尽可能一次性完成,节约时间又安全,不该是各个线程自己去开关数据库存取的模式.是我事先没考虑好. 现在代码如下: # 理想论坛爬虫1.04,用于爬取主贴再爬子贴 from bs4 import BeautifulSoup import requests import…
#------------------------------------------------------------------------------------ # 理想论坛爬虫1.08, # 增加断点续传模式,这样可以有空再下载了. # 2018年4月29日 #------------------------------------------------------------------------------------ from bs4 import BeautifulSou…