开始说明
目标:练习爬虫
KeyWord:
python3.5
scrapy
BeautifulSoup4
mysql
flask
echart3
segmentfault 上的很多线下技术交流活动都很好,我自己也参加过一些,就比较好奇这些活动都有哪些特点,比如说:
一般在星期几举办?
什么月份比较多?
哪个城市比较多?
一般都是哪些类型的?
主要分两个部分:爬虫抓取部分、数据展示部分
爬虫抓取部分
主要思路:
确定要抓取的数据有哪些。
包括:活动名称、举办时间(日期、星期)、城市、活动目前状态等等。确定抓取多少页。
一直抓到页面上没有「下一页」按钮为止。
于是,写了个简单的爬虫把这些数据都拿到手,分析了一下。
实施步骤:
1.分析页面链接和内容,确定要抓取的内容
这里主要是结合 BeautifulSoup
来确定数据;
2.创建数据表
确定要抓取的数据后存储在 Mysql
中,语句如下:
CREATE TABLE `blog`.`<table_name>` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(100) NOT NULL,
`c_date` varchar(20) NOT NULL,
`week` varchar(8) NOT NULL,
`week_number` int(11) NOT NULL,
`city` varchar(20) NOT NULL,
`icon` varchar(100) NOT NULL,
`status` varchar(10) NOT NULL,
`detail` varchar(100) NOT NULL,
`join_link` varchar(100) NOT NULL,
`link` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=`InnoDB` AUTO_INCREMENT=1708 DEFAULT CHARACTER SET utf8
COLLATE utf8_general_ci ROW_FORMAT=COMPACT CHECKSUM=0 DELAY_KEY_WRITE=0;
3.编码实现
使用 scrapy
框架,代码在这:爬虫部分代码。
展示部分
使用百度的 echart3
图表工具,web 框架使用 flask
。
代码在这里:数据展示部分代码。
下图是我想到的几种情况分析:
以上!