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等软件生成词云,它会根据信息的频率、权重按比列显示关键字的字体大小。