日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微博数据爬虫——获取用户基本信息(三)

發(fā)布時(shí)間:2023/12/20 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微博数据爬虫——获取用户基本信息(三) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

目標(biāo):獲取微博用戶的基本信息,如關(guān)注數(shù)、粉絲數(shù)、微博數(shù)量、注冊(cè)時(shí)間

首先獲取page_id

使用正則匹配獲取

add = urllib.request.Request(url="https://weibo.com/u/%s?is_all=1" % (o_id), headers=headers) r = urllib.request.urlopen(url=add, timeout=20).read().decode('utf-8') page_id = re.findall(r'\$CONFIG\[\'page_id\']=\'(\d+)\'', r)[0]

而后通過匹配獲取基本信息

add = urllib.request.Request(url="https://weibo.com/p/%s/info" % (page_id), headers=headers) r = urllib.request.urlopen(url=add, timeout=20).read().decode('utf-8') nums = re.findall(r'<strong class=\\"W_f.*?\\">(\d*)<\\/strong>', r) regist_time = re.findall(r'注冊(cè)時(shí)間:.*?<span class=\\"pt_detail\\">(.*?)<\\/span>', r)[0] regist_time = regist_time.replace(" ","").replace("\\r\\n","") dic["follow_num"] = nums[0] dic["fun_num"] = nums[1] dic["post_num"] = nums[2] dic["regist_time"] = regist_time

最終代碼如下:

import json import re from urllib import request import urllib import configdef get_user_action(o_id):dic = {}headers = config.get_headers()add = urllib.request.Request(url="https://weibo.com/u/%s?is_all=1" % (o_id), headers=headers)r = urllib.request.urlopen(url=add, timeout=20).read().decode('utf-8')page_id = re.findall(r'\$CONFIG\[\'page_id\']=\'(\d+)\'', r)[0]add = urllib.request.Request(url="https://weibo.com/p/%s/info" % (page_id), headers=headers)r = urllib.request.urlopen(url=add, timeout=20).read().decode('utf-8')print("https://weibo.com/p/%s/info" % (page_id))print(r)nums = re.findall(r'<strong class=\\"W_f.*?\\">(\d*)<\\/strong>', r)regist_time = re.findall(r'注冊(cè)時(shí)間:.*?<span class=\\"pt_detail\\">(.*?)<\\/span>', r)[0]regist_time = regist_time.replace(" ","").replace("\\r\\n","")dic["follow_num"] = nums[0]dic["fun_num"] = nums[1]dic["post_num"] = nums[2]dic["regist_time"] = regist_timereturn dicif __name__ == '__main__':dic = get_user_action("1906123125")json_f = open("data/data_userinfo.json", "w")json.dump(dic, json_f, indent=4)

?

總結(jié)

以上是生活随笔為你收集整理的微博数据爬虫——获取用户基本信息(三)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。