Python 超容易的爬取新浪微博數據 (究極版)

新浪微博的數據可是非常有價值的,你可以拿來數據分析、拿來做網站、甚至是*****。不過很多人由於技術限制,想要使用的時候只能使用複製粘貼這樣的笨方法。沒關係,現在就教大家如何批量爬取微博的數據,大大加快數據遷移速度!

我們使用到的是第三方作者開發的爬蟲weiboSpider(有工具當然要用工具啦)。這裏默認大家已經裝好了Python,如果沒有的話可以看我們之前的文章:Python詳細安裝指南

1. 下載項目

進入下方的網址,點擊Download ZIP下載項目文件

github.com/dataabc/wei…

 

 

 

或者

你有git的話可以在cmd/terminal中輸入以下命令安裝​

git clone https://github.com/dataabc/weiboSpider.git 
複製代碼

​2.安裝依賴

將該項目壓縮包解壓後,打開你的cmd/Termianl進入該項目目錄,輸入以下命令:

pip install -r requirements.txt
複製代碼

便會開始安裝項目依賴,等待其安裝完成即可。

3.設置cookie

打開weibospider文件夾下的weibospider.py文件,將"your cookie"替換成爬蟲微博的cookie,具體替換位置大約在weibospider.py文件的22行左右。cookie獲取方法:

3.1 登錄微博

 

 

 

3.2 按F12鍵或者右鍵頁面空白處—檢查,打開開發者工具

 

 

 

3.3 選擇****network — 按F5刷新一下 — 選擇第一個文件 — 在右邊窗口找到cookie

 

 

 

然後替換大約在weibospider.py文件的22行左右的cookie,如圖所示:

替換前:

 

 

 

替換後:

 

 

 

4.設置要爬的用戶user_id

4.1 獲取user_id

點開你希望爬取的用戶主頁,然後查看此時的url:

你會發現有一串數字在鏈接中,這個就是我們要用到的userID, 複製即可。

 

 

 

4.2 設置要爬取的user_id

打開config.json文件,你會看到如下內容:

{
    "user_id_list": ["1669879400"],
    "filter": 1,
    "since_date": "2018-01-01",
    "write_mode": ["csv", "txt"],
    "pic_download": 1,
    "video_download": 1,
    "cookie": "your cookie",
    "mysql_config": {
        "host": "localhost",
        "port": 3306,
        "user": "root",
        "password": "123456",
        "charset": "utf8mb4"
    }
}
加python學習qq羣:775690737  送python零基礎入門學習資料+99個源碼

下面講解每個參數的含義與設置方法。

設置user_id_list: user_id_list是我們要爬取的微博的id,可以是一個,也可以是多個,例如:

"user_id_list": ["1223178222", "1669879400", "1729370543"],

加python學習qq羣:775690737  送python零基礎入門學習資料+99個源碼

上述代碼代表我們要連續爬取user_id分別爲“1223178222”、 “1669879400”、 “1729370543”的三個用戶的微博。

user_id_list的值也可以是文件路徑,我們可以把要爬的所有微博用戶的user_id都寫到txt文件裏,然後把文件的位置路徑賦值給user_id_list。

在txt文件中,每個user_id佔一行,也可以在user_id後面加註釋(可選),如用戶暱稱等信息,user_id和註釋之間必需要有空格,文件名任意,類型爲txt,位置位於本程序的同目錄下,文件內容示例如下:

1223178222 胡歌

1669879400 迪麗熱巴

1729370543 郭碧婷

假如文件叫user_id_list.txt,則user_id_list設置代碼爲:

"user_id_list": "user_id_list.txt",

如果有需要還可以設置Mysql數據和MongoDB數據寫入,如果不設置的話就默認寫入到txt和csv文件中。

5. 運行爬蟲

打開cmd/terminal 進入該項目目錄,輸入:

python weibospider.py
複製代碼

即可開始爬取數據了,怎麼樣,是不是超級方便?而且你還可以自定義爬取的信息,比如微博的起始時間、是否寫入數據,甚至能在它代碼的基礎上增加新的功能!(比如加個cookie池或者代理池之類的)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章