爬了点知乎数据,看看知乎都问啥。。

本文通过爬取知乎超过500万条问题数据,分析了用户提问的习惯及偏好,发现如何和为什么是最常见的提问方式,并探讨了背后的含义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

爬了知乎500w+的问题,估计不到问题总量的一半。

在这先看下大家都喜欢怎么提问。

以下根据频数排序,从高到低。

## 句首两字索引

  1. 如何 ##目前有意推出 ‘如何’ 这款类知乎产品,只差一个美工&一个前端&一个后台 or 全栈
  2. 为什 ##应该是: 为什么
  3. 怎么
  4. 怎样
  5. 如果
  6. 请问
  7. 有哪 ##哪些、哪种
  8. 中国 ##
  9. 一个 ##这个查了下SQL,后面跟的东西啥都有。。’个‘ 这个量词挺通用的。。
  10. 有没

## 句首三字索引
  1. 为什么
  2. 如何评
  3. 如何看
  4. 有哪些
  5. 有没有
  6. 有什么
  7. 如何在
  8. 201 ##应该为日期 。如 2016年我能脱单吗。。。。。。。
  9. 男朋友 ##这个。。。确实没想到
  10. 怎么看

## 句首四字索引
  1. 如何评价
  2. 如何看待
  3. 为什么有
  4. 为什么我
  5. 为什么很
  6. 为什么人
  7. 怎么看待
  8. 怎样才能
  9. 为什么在
  10. 如何理解

以我初中开始语文就不及格的水平来看。。

以 '如何' 开头的提问,可能更想获得是一种方法、结果,或者是一些主观的意识(如何评价XXX)。这想要的是现成的结果。

以 '为什么' 开头的提问,或许更看重事物的原理,想了解过程。

下面要做的就是继续爬点问题,看能不能把所有问题分为三大类:我是谁,我从哪来,我到哪去。。


#coding=utf-8
import re
import MySQLdb
#import gevent
from numpy import *
#from gevent.threadpool import ThreadPool##数据不多所以就没用并发
#class self_var:
    #def __init__():
   
def get_data():
    conn=MySQLdb.connect(
        host='localhost',
        port=3306,
        user='root',
        passwd='1234',
        db='zhihu',
        charset='utf8'
        )
    cur=conn.cursor()
    cmd='select q from question'
    cur.execute(cmd)
    data=cur.fetchall()
    return data

def create_vocabulary(data):
    vocabulary={}
    for i in data:
        w=i[0][:4]
        vocabulary[w]=vocabulary.get(w,0)+1##感觉最有用的就是这一行 
    return vocabulary
def store_data(file_name,data):#存储结果用
    import pickle
    op=open(file_name,'w')
    pickle.dump(data,op)
    op.close()
def extract_data(file_name):#提取存储的数据
    import pickle
    read_file=open(file_name)
    return pickle.load(read_file)
def test():
    from time import *
    data=get_data()
    time1=time()
    vocabulary=create_vocabulary(data)
    s=sorted(vocabulary.items(),key=lambda d:d[1],reverse=True)
    for i in s[:10]:
        print i[0]
    time2=time()
    print 'done',time2-time1
test()



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值