python爬取电子书_python爬取计算机电子书(源码移步github)

摘要:今年第一个项目,python爬取网络上公开的计算机电子书近8000本,在此基础上简要分析计算机专业的发展变迁。部分整理好的书籍下载链接见文末。代码链接见文末。

计算机诞生以来不到100年,学术的、技术的或者一些不知所云的关于计算机的书籍已不胜凡几。不翻墙,在某知名学术网站上computer science书籍搜索就有25600条。

为囤书计,本着互联网分享精神,开发了一个python爬虫,来爬取网络上公开免费的电子书资源,主要技术特征(欢迎移步github,查看源码更多技术细节,链接文末):html.parser.HTMLParser子类化(或正则表达式),提取下载文件链接。

urlretrieve或urlopen,下载文件。

pandas,提取文件信息、错误信息写入数据库,并进行统计计算、转存excel表格。

threading实现多线程并行下载,单个producer提取下载链接,通过队列传递给多个consumer进行下载。

加锁,确保数据库、文件写入不冲突。

异常机制,判断服务器拒绝访问和超时,自动等待重启。

截止当前,一共爬取近8000本计算机电子书(肯定还不全,但就这些这辈子百分百也看不完了,手动捂脸),实际可下载7700余本,主要为pdf格式。其中200多个链接存在问题,正在尝试反馈源网站。

这么多书,一共包括110个关键词标签,按关键词分类可见如下差异。

对其中前15名进行放大,Java果然是第一人气语言(虽然我们是用的Python爬的)。当然咱Python也不弱,怎么也是紧随其后的二大爷……再往下,JavaScript、C、C++都是比较主流的,各大论坛也常常出现一争高低的场景。

也可看出,玩硬件的也不少,网络编程、游戏编程、Web开发也都是挺热门的,都是就业热门啊。但是也发现可能人工智能、机器学习和大数据的书籍可能收录偏少了,这可是当前大热门啊。

再从每年变化情况看一看。2000年后的计算机书籍呈指数上升,专业越来越火。2016年后的书似乎有所减少,应当是因为新书出来还没有网友分享,也跟近年版权意识逐渐提高有关系。

对其中占比最大的前10个分类,作雷达图(绝对数量)、百分比条形图(相对数量)。

从绝对数量看,Java和游戏编程的书籍2013年就很多了,python、JavaScript要来的更晚一点。但从相对数量看,Java的占比有所减少,python已呈反超之势。

以上分析,仅是从浩如烟海的计算机书籍中可公开免费下载的一小部分得出,纯属娱乐,更重要的是认认真真show me the code~~

源码请移步:zz-icoding/AllITeBooksCrawler​github.com

部分电子书已整理另文提供参考:爱coding:计算机电子书免费资源(中文)​zhuanlan.zhihu.com爱coding:计算机电子书免费资源(英文)​zhuanlan.zhihu.com

  • 0
    点赞
  • 3
    收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:数字20 设计师:CSDN官方博客 返回首页
评论
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值