Python爬虫教程:爬取微博数据【附源码】
- 2020 年 3 月 31 日
- 筆記
♦思路流程
1、利用chrome浏览器,获取自己的cookie。
2、获取你要爬取的用户的微博User_id
3、将获得的两项内容填入到weibo.py中,替换代码中的YOUR_USER_ID和#YOUR_COOKIE,运行代码。
♦完整代码
import requests import re import pandas as pd import time as tm import random # ------------------------ id = "2304132803301701" timedata = [] for p in range(1,3): page = str(p) url = "https://m.weibo.cn/api/container/getIndex?containerid=" + id + "_-_WEIBO_SECOND_PROFILE_WEIBO&luicode=10000011&lfid=" + id + "&page_type=03&page=" + page data = requests.get(url) data_text = data.text data_num = re.findall(r'"mid":"(d{16})"', data_text) num = len(data_num) for i in range(0,num): url_detail = "https://m.weibo.cn/detail/" + data_num[i] html = requests.get(url_detail) time = re.search(r'"created_at":s"(wwwswwwsddsdd:dd:dd)s+d{4}sd{4}"', html.text) timedata.append(time.group(1)) tm.sleep(random.uniform(1,4)) #反爬间隔 print("采集第%d页第%d条微博数据"%(p,i)) name =["time"] data_save = pd.DataFrame(columns=name, data=timedata) data_save.to_csv('./data.csv')
用wordcloud等软件生成词云,它会根据信息的频率、权重按比列显示关键字的字体大小。