基于Python的DBLP数据库爬虫系统
来源:互联网 发布:淘宝模版制作 编辑:程序博客网 时间:2024/06/07 02:02
要写个爬虫爬些数据,以前没写过爬虫,网上查下Python挺方便的,花了一晚上把Python入了个门就开始写了,写篇博客记录下这个过程。
1. 功能需求看下图:
2. 设计说明
本系统的编程语言为Python,Python通过MySQLdb来连接数据库并进行各项操作,通过spynner库来解决动态加载的页面,spynner依赖pyqt,pyqt依赖sip。
数据库的E-R图设计如下(偷个懒,,不用Visio了。。):
爬虫主要是通过Python的urllib2,re模块实现。
其中urllib2主要用于用于网页的获取,re主要是通过正则表达式进行网页信息的处理。
Mysql数据库主要是通过Navicat来显示,并实现增删改。
因为这个网站链接命名其实连接挺有规律的,所以采用DFS进行遍历,用户只需输入会议名称,爬虫自动爬取相应会议的论文的相关数据。
后期数据可视化处理采用matlab了,因为相对比较熟。。。
3. 软件源代码
还是不给了。。
4.源代码分析报告
用urllib2获取网页,然后结合网页的具体内容通过相应的正则表达式进行信息的筛选,如果碰到动态加载的页面,通过spynner进行处理,然后把相应的数据存入Mysql数据库即可。
5.测试报告
经过对一定量的信息与原网页的信息进行对比,抓取信息的准确度还不错。在Navicat中也可以正常的对数据库进行增删改操作。
6.用户手册
运行程序即可抓取相应网页的信息即可。对数据库的具体管理可通过Navicat进行。
7.
存在问题:
我的这个系统数据库的设计不太合理,存在数据库冗余,进行某些增删改的时候可能会出现数据不同步的情况。
爬虫部分因为没使用相应的爬虫框架,所以不太稳定,有时会失败,而且在进行大量数据的爬取时,耗时较长。
8.遇到问题:
有些页面是通过JS动态加载出来的,查到一个库可以解决,然而这个库在Windows下装各种依赖库简直是灾难(Spynner->Pyqt->Sip),后来转移到Linux下还是捣鼓了半天才解决。
还有有个别正则表达式也挺麻烦的。
- 基于Python的DBLP数据库爬虫系统
- 基于Java的DBLP数据库爬虫系统
- 基于python的爬虫
- 基于python的pixiv爬虫
- 天气实时显示系统--基于python网络爬虫的树莓派与Arduino蓝牙通信
- 基于Python的网络爬虫入门
- 一个基于python的数据爬虫
- 基于python的知乎开源爬虫 zhihu
- 基于广域网的主从分布式爬虫系统
- 基于Python的一个简单爬虫(糗事百科爬虫)
- python爬虫由浅入深7--基于中国大学排名的定向爬虫
- Python爬虫-基于深度优先策略的百度百科爬虫
- dblp 介绍 使用,计算机领域内对研究的成果以作者为核心的一个计算机类英文文献的集成数据库系统
- DBLP数据集python解析
- DBLP
- 【Python】基于python的urllib库编写网络爬虫
- python爬虫--连接数据库
- 基于数据库的工作流系统
- 网上销售平台--Maven热部署(四)
- linux命令——编译
- POJ_4002 && HDU_4122 Alice's mooncake shop(RMQ)
- PHP操作Excel (创建Excel并写入数据)
- lightoj 1297
- 基于Python的DBLP数据库爬虫系统
- 黑马程序员——基础知识——IO流
- 3.nginx学习笔记:nginx配置反向代理服务器
- [配置管理]编译Valgrind arm交叉编译
- mysql可视化监控工具mysqlmtop安装
- Intent和bundle 启动其他Activity并返回结果
- 10004---用ul、li做横向导航
- MongoDb 用 mapreduce 统计留存率
- spring 注解 标注字段