摘要:忘記使用進(jìn)行,從導(dǎo)入數(shù)據(jù)文件第部分對于每個網(wǎng)站而言,并不總是適合您,但將永遠(yuǎn)與您保持聯(lián)系以從任何網(wǎng)站收集任何類型的數(shù)據(jù)。非資源讓我們拿一個維基百科頁面進(jìn)行報廢。請求它旨在被人類用于與語言進(jìn)行通信。使用標(biāo)簽,我們將告訴保護(hù)我們的數(shù)據(jù)。
忘記API使用Beautiful Soup進(jìn)行Python Scraping,從Web導(dǎo)入數(shù)據(jù)文件:第2部分
對于每個網(wǎng)站而言,API并不總是適合您,但Beautiful Soup將永遠(yuǎn)與您保持聯(lián)系以從任何網(wǎng)站收集任何類型的數(shù)據(jù)。
Souce:gurutechnolabs.com
今天,數(shù)據(jù)發(fā)揮在每一個行業(yè)的關(guān)鍵作用。大部分?jǐn)?shù)據(jù)都來自互聯(lián)網(wǎng)。大多數(shù)公司在一項技術(shù)上投入數(shù)百萬美元來獲得用戶,而沒有從投資產(chǎn)品回報中獲利。互聯(lián)網(wǎng)是如此龐大,它包含有關(guān)一個主題的更多信息,而不是你的書呆子教授。
從網(wǎng)絡(luò)中提取信息的需求和重要性變得越來越響亮和清晰。大部分時間,當(dāng)我們在您的臉書,推特,LinkedIn中添加任何信息并提供有關(guān)Yelp的反饋時,此信息將被視為數(shù)據(jù)。
而來自互聯(lián)網(wǎng)的這類數(shù)據(jù)有很多不同的方式,例如評論,餐廳對Yelp的反饋,Twitter討論,Reddit用戶討論和股票價格等。您可以收集所有這些數(shù)據(jù),組織并分析它。這就是我們將在本教程中討論的內(nèi)容。
有幾種從Internet提取或?qū)霐?shù)據(jù)的方法。您可以使用API??從任何主要網(wǎng)站檢索信息。這就是每個人現(xiàn)在用來從互聯(lián)網(wǎng)導(dǎo)入數(shù)據(jù)的東西 - 所有主要網(wǎng)站,如Twitter,Twitch,Instagram,F(xiàn)acebook都提供API來訪問他們的網(wǎng)站數(shù)據(jù)集。所有這些數(shù)據(jù)都以結(jié)構(gòu)化形式提供。
但是大多數(shù)網(wǎng)站都沒有提供API。我認(rèn)為他們不希望我們使用他們的用戶數(shù)據(jù),或者他們因為缺乏知識而不提供這些數(shù)據(jù)。
因此,在本主題中,我們將在不使用任何API的情況下從Web導(dǎo)入數(shù)據(jù)。但在我們處理之前,請看一下本系列的第1部分,因為所有內(nèi)容都像點(diǎn)一樣連接。
你不了解數(shù)據(jù)文件的東西如果你只是數(shù)據(jù)科學(xué)的入門者,導(dǎo)入數(shù)據(jù)文件...
如果你是數(shù)據(jù)科學(xué)領(lǐng)域的新手,那么你必須努力學(xué)習(xí)數(shù)據(jù)科學(xué)概念如此之快。現(xiàn)在......
朝向distascience.com?
什么是Beautiful Soup
不要寫那個糟糕的頁面(來源:crummy.com)
Beautiful Soup是廢棄特定網(wǎng)站或互聯(lián)網(wǎng)數(shù)據(jù)的最佳圖書館。也是最舒適的工作。它從HTML解析和提取結(jié)構(gòu)化數(shù)據(jù)。Beautiful Soup會自動將傳入的文本轉(zhuǎn)換為Unicode,將傳出的版本轉(zhuǎn)換為UTF-8。除了文檔沒有定義編碼之外,您不必記住編碼,而Beautiful Soup也無法捕獲編碼。然后你必須提到原始編碼。
規(guī)則:要運(yùn)行您的程序,請使用Jupyter python環(huán)境來運(yùn)行您的程序。而不是一次運(yùn)行整個程序。我們只是采取了預(yù)防措施,因此您的計劃不會破壞網(wǎng)站。在開始從那里提取數(shù)據(jù)之前,請查看網(wǎng)站條款和條件。請務(wù)必閱讀有關(guān)數(shù)據(jù)合法使用的聲明。
基礎(chǔ) - 熟悉HTML
HTML代碼在從網(wǎng)站提取數(shù)據(jù)方面起著至關(guān)重要的作用。因此,在我們處理之前,讓我們跳轉(zhuǎn)到HTML標(biāo)記的基礎(chǔ)。如果您對HTML標(biāo)記有一點(diǎn)了解,可以繼續(xù)前進(jìn)到下一個級別。
?
?
???
???
???
???????Learning about Data
???????Beautiful Soup
???
這是HTML網(wǎng)頁的基本語法。每個
1.<!DOCTYPE html>:HTML文檔必須以類型聲明開頭。
2. HTML文檔包含在和 html>之間。
3. HTML文檔的元和腳本聲明位于和 head>之間。
4. HTML文檔的可見部分位于和 body>標(biāo)記之間。
5. 標(biāo)題標(biāo)題用到
標(biāo)簽定義。
6. 標(biāo)簽。
其他有用的標(biāo)記包括用于超鏈接,
用于表列。
我們來檢查您的HTML頁面 按地區(qū)劃分的亞洲國家列表 - 維基百科 需要額外引用以進(jìn)行驗證。通過向可靠來源添加引文來改進(jìn)本文。非資源... 檢查維基百科頁面 從結(jié)果中你可以看到wiki表中的表是可排序的,如果你檢查它更多,你可以在那里找到你所有的表信息,這太棒了啊!看到你可以用beautiful soup做什么會更令人驚訝。 ?
讓我們開始您的DIY項目 在我們處理之前,您需要安裝或?qū)胍恍臁?/p>
如果您在安裝過程中遇到任何問題,可以在每行前面使用sudo。 請求 BS4 - BeautifulSoup
我們首先研究給定網(wǎng)頁的源代碼并使用BeautifulSoup函數(shù)構(gòu)建BeautifulSoup(湯)對象。現(xiàn)在,我們需要使用Beautiful Soap函數(shù),這將幫助我們解析并應(yīng)用從Wikipedia頁面獲取的HTML :
然后我們將使用Beautiful Soup來解析我們在“URL”變量中收集的HTML數(shù)據(jù),并分配一個不同的變量來存儲名為“Soup”的Beautiful Soup格式的數(shù)據(jù)。
要在我們的網(wǎng)頁中獲得基礎(chǔ)HTML結(jié)構(gòu)的概念,請使用Beautiful Soup的美化功能并進(jìn)行檢查。
這是我們從prettify()函數(shù)得到的:
|