beautifulsoup可以使我們通過網頁的標籤找到網頁中我們想要的特定資料。本案例可以清楚地理順從html檔案變化到我們想要獲得的資料。python程式如下:
from bs4 import beautifulsoup
import requests
url = ''
html = requests.get(url).text
bs = beautifulsoup(html, 'html.parser')
#print(bs)
data = bs.find_all('span' , )
#print(data)
rows = data[0].find_all('tr')
#print(rows)
prices = list()
i = 0
for row in rows:
if i < 16:
print(row)
cols = row.find_all("td")
if len(cols[1].text ) > 0:
item = [cols[0].text, cols[1].text, cols[2].text, cols[3].text]
i += 1
i = 0
for p in prices:
if i < 16:
print(p)
i += 1
現在從變數容器的變化過程,認識提取特定資料的步驟:
通過beautifulsoup(html, 'html.parser'),把html檔案包裝為可以解析的物件,該物件對應的文字檔案(部分內容)是:
2.操作可解析的物件sb,通過find_all('span',),把標籤的內容找出來,形成資料表:
3.再從上面的資料表中,找出標籤表示的項,組成如下表:
4.對上表的每個表項再進行提取,得到最終資料:
執行緒特定資料
執行緒特定資料也稱執行緒私有資料,是儲存和查詢某個特定執行緒相關資料的一種機制。在分配執行緒特定資料之前,需要建立與該資料相關聯的鍵,以用於獲取對執行緒特定資料的訪問。使用函式 pthread key create 可建立乙個鍵,而對所有的執行緒,都可以通過 pthread key delete 來...
執行緒特定資料(學習)
1 首先,為什麼要使用執行緒特定資料呢?什麼是執行緒特定資料。這牽涉到重入函式和不可重入函式。重入函式就是在多個程序或者執行緒中,可以同時進行執行的函式,可重入函式就是不可以同時執行的函式,這個主要是可能多個程序或執行緒共享了乙個變數,這個變數只有乙個,這樣同時執行的時候,就會出問題了,因為我們不知...
執行緒特定資料(筆記)
執行緒特定資料,也稱為執行緒私有資料,是儲存和查詢某個特定資料相關資料的一種機制。在單執行緒程式中,我們經常要用到 全域性變數 以實現多個函式間共享資料。在多執行緒環境下,由於資料空間是共享的,因此全域性變數也為所有所有執行緒所共有。但有時應用程式設計中有必要提供執行緒私有的全域性變數,僅在某個執行...