我正在使用python和Beautiful Soup从网上抓取足球运动员统计数据。我将从多个来源进行搜索,每个源都会有各种各样的变量,包括字符串,整数和布尔值。例如球员姓名,职位选秀,职业选择(y / n)。
最后,我想将这些数据放入数据挖掘工具或分析工具中,以便找到趋势。这需要是可搜索的,当我从不同顺序的新来源抓取时,我需要能够将数据添加到玩家的信息中。
我应该使用哪些技术来存储数据,这样我才能最好地添加数据并在以后进行分析?
答案 0 :(得分:5)
使用分层方法:下载,解析,存储,分析。
分层。最重要的是,不要只下载数据,然后以最终解析的格式存储它。你将不可避免地意识到你错过了一些东西,需要再次抓住它。使用像requests
+ requests_cache
之类的东西(我发现扩展requests_cache.backends.BaseCache
并将其存储在文件系统上比检查默认的sqlite存储后端更方便。
为了解析你已经使用了美味的汤,效果很好。
对于存储&分析使用数据库。避免使用NoSQL的诱惑 - 只要你需要运行汇总查询,你就会后悔。