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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python收集数据程序_用Python挖掘Twitter数据:数据采集

發(fā)布時(shí)間:2023/12/3 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python收集数据程序_用Python挖掘Twitter数据:数据采集 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

原標(biāo)題:用Python挖掘Twitter數(shù)據(jù):數(shù)據(jù)采集

作者:Marco Bonzanini 翻譯:數(shù)盟

這是7部系列中的第1部分,注重挖掘Twitter數(shù)據(jù)以用于各種案例。這是第一篇文章,專注于數(shù)據(jù)采集,起到奠定基礎(chǔ)的作用。

Twitter是一個(gè)流行的社交網(wǎng)絡(luò),用戶可以共享稱為tweets的類似SMS的短消息。用戶在Twitter上分享想法、鏈接和圖片,記者發(fā)表現(xiàn)場(chǎng)活動(dòng)評(píng)論,企業(yè)改進(jìn)產(chǎn)品和吸引客戶等等。使用Twitter的不同的方式列表可能會(huì)很長,伴隨著每天5億的tweets,這里有大量的數(shù)據(jù)等著我們分析。

這是一系列使用Python專門用于Twitter數(shù)據(jù)挖掘的文章中的第一篇。在第一部分中,我們將看到通過不同的方式來進(jìn)行Twitter的數(shù)據(jù)收集。一旦我們建立好了一個(gè)數(shù)據(jù)集,在接下來的環(huán)節(jié)中,我們就將會(huì)討論一些有趣的數(shù)據(jù)應(yīng)用。

注冊(cè)應(yīng)用

為了能夠訪問Twitter數(shù)據(jù)編程,我們需要?jiǎng)?chuàng)建一個(gè)與Twitter的API交互的應(yīng)用程序。

第一步是注冊(cè)一個(gè)你的應(yīng)用程序。值得注意的是,您需要將您的瀏覽器轉(zhuǎn)到http://apps.twitter.com,登錄到Twitter(如果您尚未登錄),并注冊(cè)一個(gè)新的應(yīng)用程序。您現(xiàn)在可以為您的應(yīng)用程序選擇一個(gè)名稱和說明(例如“挖掘演示”或類似)。您將收到一個(gè)消費(fèi)者密鑰和消費(fèi)者密碼:這些都是應(yīng)用程序設(shè)置,應(yīng)始終保密。在您的應(yīng)用程序的配置頁面,你也可以要求獲取一個(gè)訪問令牌和訪問令牌的密碼。類似于消費(fèi)者密鑰,這些字符串也必須保密:他們提供的應(yīng)用程序是代表您的帳戶訪問到Twitter。默認(rèn)權(quán)限是只讀的,這是我們?cè)诎咐行枰?#xff0c;但如果你決定改變您的許可,在應(yīng)用中提供更改功能,你就必須再獲得一個(gè)新的訪問令牌。

重要提示:使用Twitter的API時(shí)有速率限制,或者你想要提供一個(gè)可下載的數(shù)據(jù)集也會(huì)有限制,請(qǐng)參見: >

您可以使用 Twitter提供的REST APIs與他們的服務(wù)進(jìn)行交互。那里還有一群基于Python的客戶,我們可以重復(fù)循環(huán)使用。尤其Tweepy是其中最有趣和最直白的一個(gè),所以我們一起把它安裝起來:

更新:Tweepy發(fā)布的3.4.0版本在Python3上出現(xiàn)了一些問題,目前被綁定在GitHub上還不能進(jìn)行使用,因此在新的版本出來之前,我們一直使用3.3.0版本。

更多的更新:Tweepy發(fā)布的3.5.0版本已經(jīng)可以使用,似乎解決了上述提到的在Python3上的問題。

為了授權(quán)我們的應(yīng)用程序以代表我們?cè)L問Twitter,我們需要使用OAuth的界面:

現(xiàn)在的API變量是我們?yōu)榭梢栽赥witter上執(zhí)行的大多數(shù)操作的入口點(diǎn)。

例如,我們可以看到我們自己的時(shí)間表(或者我們的Twitter主頁):

Tweepy提供便捷的光標(biāo)接口,對(duì)不同類型的對(duì)象進(jìn)行迭代。在上面的例子中我們用10來限制我們正在閱讀的tweets的數(shù)量,但是當(dāng)然其實(shí)我們是可以訪問更多的。狀態(tài)變量是Status() class的一個(gè)實(shí)例,是訪問數(shù)據(jù)時(shí)一個(gè)漂亮的包裝。Twitter API的JSON響應(yīng)在_json屬性(帶有前導(dǎo)下劃線)上是可用的,它不是純JSON字符串,而是一個(gè)字典。

所以上面的代碼可以被重新寫入去處理/存儲(chǔ)JSON:

如果我們想要一個(gè)所有用戶的名單?來這里:

那么我們所有的tweets的列表呢? 也很簡單:

通過這種方式,我們可以很容易地收集tweets(以及更多),并將它們存儲(chǔ)為原始的JSON格式,可以很方便的依據(jù)我們的存儲(chǔ)格式將其轉(zhuǎn)換為不同的數(shù)據(jù)模型(很多NoSQL技術(shù)提供一些批量導(dǎo)入功能)。

process_or_store()功能是您的自定義實(shí)施占位符。最簡單的方式就是你可以只打印出JSON,每行一個(gè)tweet:

如果我們要“保持連接”,并收集所有關(guān)于特定事件將會(huì)出現(xiàn)的tweets,流API就是我們所需要的。我們需要擴(kuò)展StreamListener()來定義我們處理輸入數(shù)據(jù)的方式。一個(gè)用#python hashtag收集了所有新的tweet的例子:

根據(jù)不同的搜索詞,我們可以在幾分鐘之內(nèi)收集到成千上萬的tweet。世界性覆蓋的現(xiàn)場(chǎng)活動(dòng)尤其如此(世界杯、超級(jí)杯、奧斯卡頒獎(jiǎng)典禮等),所以保持關(guān)注JSON文件,看看它增長的速度是多么的快,并考量你的測(cè)試可能需要多少tweet。以上腳本將把每個(gè)tweet保存在新的行中,所以你可以從Unix shell中使用wc-l python.json命令來了解到你收集了多少tweet。

你可以在下面的要點(diǎn)中看到Twitter的API流的一個(gè)最小工作示例:

twitter_stream_downloader.py

總結(jié)

我們已經(jīng)介紹了tweepy作為通過Python訪問Twitter數(shù)據(jù)的一個(gè)相當(dāng)簡單的工具。我們可以根據(jù)明確的“tweet”項(xiàng)目目標(biāo)收集一些不同類型的數(shù)據(jù)。

一旦我們收集了一些數(shù)據(jù),在分析應(yīng)用方面的就可以進(jìn)行展開了。在接下來的內(nèi)容中,我們將討論部分問題。

簡介:Marco Bonzanini是英國倫敦的一個(gè)數(shù)據(jù)科學(xué)家?;钴S于PyData社區(qū)的他喜歡從事文本分析和數(shù)據(jù)挖掘的應(yīng)用工作。他是“用Python掌握社會(huì)化媒體挖掘”( 2016月7月出版)的作者。

文章來源36大數(shù)據(jù),www.36dsj.com ,微信號(hào)dashuju36 ,36大數(shù)據(jù)是一個(gè)專注大數(shù)據(jù)創(chuàng)業(yè)、大數(shù)據(jù)技術(shù)與分析、大數(shù)據(jù)商業(yè)與應(yīng)用的網(wǎng)站。分享大數(shù)據(jù)的干貨教程和大數(shù)據(jù)應(yīng)用案例,提供大數(shù)據(jù)分析工具和資料下載,解決大數(shù)據(jù)產(chǎn)業(yè)鏈上的創(chuàng)業(yè)、技術(shù)、分析、商業(yè)、應(yīng)用等問題,為大數(shù)據(jù)產(chǎn)業(yè)鏈上的公司和數(shù)據(jù)行業(yè)從業(yè)人員提供支持與服務(wù)。

via:shumeng

責(zé)任編輯:

總結(jié)

以上是生活随笔為你收集整理的python收集数据程序_用Python挖掘Twitter数据:数据采集的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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