一、背景&目的
心理学专业在读,又一心做一些和数据科学相关的项目,于是选择了基于微博的焦虑和抑郁识别作为毕设项目,开始从数据获取到处理建模到调参的全过程。院里和指导老师都非常在乎数据隐私问题,所以不能贸然爬虫,需要提前获取用户的知情同意才可以定向爬取目标用户的微博。在此期间也掉了不少坑,也想把经验分享给大家,所以在此整理了一下前期获取数据的过程。
二、爬虫流程
心理学临床研究中,对于这焦虑和抑郁的初步识别是通过抑郁自评量表(SDS)、焦虑自评量表(SAS)等自评量表进行的。借助问卷星广撒问卷,获取用户的微博名称和对应的量表分数,并根据实际的得分情况将用户分为3*3不同水平的用户。这部分的数据处理还是比较简单的,从问卷星导出包含得分的xlxs文件直接在excel中编写规则即,用数据透表做一个分类即可;也可以用python导入转成DataFrame更自由地做一些计算,在此便不再详述这一过程,默认已经获得了对应微博用户的昵称和对应的分类标签。
0. 调包
import pandas as pd
import requests as re
import json
import time
import random
1. UID获取
由于UID才是微博用户的唯一标识,但我担心用户找不到自己的ID或嫌麻烦不愿意参加实验,所以在通过问卷星获取用户的问卷分数时只要求用户留下了自己的微博名称,需要一步通过昵称找UID的步骤,在网上找到了一个可以直接通过昵称返回UID的接口,调取代码如下:<