Code Monkey home page Code Monkey logo

kiko's Introduction

kiko

数据流向

原始微博 -> 微博爬虫 -> MongoDB_1 -> 数据挖掘 -> MongoDB_2 -> Flask -> Web

快速开始

修改WeiboSpider/setting.py,启动爬虫

修改各文件头部Pymongo所指向的MongoDB实例

依次启动wordsAnalysis.py,preference.py,relationShip.py,network.py,friends.py

启动app.py,访问ip:5000

快速使用

  1. 登陆
    邮箱和账号硬编码在代码中,邮箱:[email protected],密码:123。 Image text
  2. 主页
    显示MongoDB中文档的条目数,关键词数目是指用户偏好在数据库中的文档的数量,增量式更新。 Image text
  3. 原始微博
    输入微博用户名,如果该用户的微博数据已被爬虫采集,显示采集到的原始数据,否者为空。 Image text
  4. 微博属性
    将用户微博中提取到的关键字、计算出的偏好、社交网络属性可视化。
    由于爬虫策略及数据集规模,“好友”可能未收录在数据库中,因此只给出了其在数据库内部的编号。 Image text
  5. 推荐用户
    根据选定的商品类别,推荐偏好中包含该类别的用户,按社交网络属性降序排列。 Image text
  6. 推荐商品
    根据用户推荐其可能感兴趣的商品。
    进一步的,待数据集扩充后,系统会返回该用户好友的推荐信息。 Image text

算法流程

用户偏好

将微博用户视作一篇文档,从其所有微博中提取关键字,按计算出的权重取前20个。将代表用户的关键字和预先建立的偏好目录中的偏好项两两计算相似度,取相似度最高的10个偏好项作为用户的偏好。

社交网络

以微博用户为根节点,以其粉丝列表为方向,以广度优先的方式建立该用户的社交网络,计算该网络中的相关属性。

好友关系

对微博用户的微博中的评论计算情感极性,根据计算出的情感极性判定评论用户和微博用户的亲近程度,情感极性的范围为[-1., 1.]。

第三方库

库名 说明
flask 后端
pymongo MongoDB
scrapy 爬虫框架
jieba_fast 中文分词
synonyms 中文同义词
numpy 数组
pandas 数据组织
snownlp 中文情感分析
networkx 网络构建

其他说明

app.py中没有设置服务器,请根据使用需要(并发能力)自行设置

kiko's People

Contributors

745998202 avatar kapybar4 avatar

Forkers

autwind

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.