数据仓库笔记
文章平均质量分 54
数据仓库课程项目笔记,涉及对亚马逊网站的爬虫,以及使用Neo4j、MySQL、Hadoop等数据库存储
Aurorapeak
某IT外企混日子的程序员
展开
-
使用代理池多线程爬虫亚马逊网站(python,requests,bs4)
ProxyPool 爬虫代理IP池使用准备与配置redis准备下载redis压缩包,解压双击redis-server.exe即可运行,或使用cmd进入解压文件夹后:redis-server.exe redis.windows.conf更详细步骤参考菜鸟教程启动项目:下载proxy_pool安装包# 将此proxy_pool文件夹复制到项目文件夹下(或直接git pull),用编译器打开项目# 若编译器提示需要导入import,直接导入,若无提示可以手动导入飘红import处缺少的包,无原创 2021-02-01 15:59:35 · 1135 阅读 · 0 评论 -
使用python多线程爬虫亚马逊(selenium库)
selenium库的使用先在命令行 pip install selenium安装好库再下载geckodriver(火狐浏览器的driver,也可以使用Chrome,网上搜一下)将下载的压缩包解压,把里面的geckodriver放到火狐浏览器的安装目录下,例如C:\Program Files\Mozilla Firefox把火狐浏览器的安装目录添加到系统环境变量中的Path爬虫代码import refrom selenium import webdriverimport pandas as p原创 2021-02-01 15:31:50 · 849 阅读 · 0 评论 -
Neo4j如何大批量删除节点而不内存溢出
今天更新图数据库,需要删除七百多万个关系,一开始简单粗暴的MATCH ()-[r:relation]-() DELETE r;果不其然,内存炸了,所以选择一部分一部分地删,在使用LIMIT时又碰到一些bug,最终Cypher代码如下:MATCH ()-[r:relation]-() WITH r LIMIT 1000000 DELETE r RETURN count(*);这里的with和return都不能少,少了就报错。另外看到一篇博客,讲的用批处理,我没试,先贴这儿Neo4j中使用Cy原创 2021-01-02 16:26:24 · 1765 阅读 · 1 评论 -
Neo4j Cypher如何比较日期
最开始导入数据库的日期是字符串,格式为“YYYY/MM/DD”,发现直接字符串比较查询结果会出错,所以想把它转换成日期格式,用date()函数,但是使用后会报错,大概是Neo4j不支持这种格式的日期转换,所以又把日期格式改为“YYYY-MM-DD”。因为是使用CSV导入数据,所以这里改变日期格式直接在excel里操作,把单元格格式改了就行,然后更新图数据库。后面就可以用date函数直接比较,比如查询发行日期在2000年4月1日到6月30日的电影:MATCH (m:movie)WHERE date("原创 2021-01-01 23:52:52 · 3557 阅读 · 5 评论 -
亚马逊爬虫与NEO4J存储操作
一、项目简述本次项目需将 web-Movies 中的 movies.txt 文件导入 NEO4J 图形数据库中,并计算共同评论某几部电影最多的用户集合。项目大致分三步进行:提取 txt 文件——导入neo4j图形数据库——用Java连接数据库对其进行操作。本项目可通过输入产品 id 或电影名称进行查询。二、项目环境本次项目在 window10 操作系统下进行,电脑内存为 16G,需用到的软件有 vscode、neo4j desktop、IntelliJ IDEA。三、NEO4J 安装及配置1.安原创 2021-01-26 13:42:39 · 644 阅读 · 0 评论