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等軟體生成詞雲,它會根據資訊的頻率、權重按比列顯示關鍵字的字體大小。