哈嘍大家好,今天我們來獲取一下某個生活平臺網站數據,進行可視化分析。 採集58的數據可以使用Python的requests庫和beautifulsoup庫,數據可視化分析可以使用matplotlib庫和seaborn庫。下麵是一個簡單的例子: 1、首先導入需要使用的模塊 import request ...
哈嘍大家好,今天我們來獲取一下某個生活平臺網站數據,進行可視化分析。
採集58的數據可以使用Python的requests庫和beautifulsoup庫,數據可視化分析可以使用matplotlib庫和seaborn庫。下麵是一個簡單的例子:
1、首先導入需要使用的模塊
import requests from bs4 import BeautifulSoup import matplotlib.pyplot as plt import seaborn as sns
2、設置請求頭,模擬瀏覽器請求。
headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
3、發送請求獲取頁面
url = 'https://bj.58.com/pinpaigongyu/pn/{page}/?minprice=2000_4000' house_data = [] for page in range(1, 3): res = requests.get(url.format(page=page), headers=headers) soup = BeautifulSoup(res.text, 'html.parser')
4、解析頁面獲取數據
house_list = soup.select('.list > li') for house in house_list: house_title = house.select('.title a')[0].string house_location = house.select('.add > a')[0].string.strip() house_price = house.select('.money > b')[0].string house_data.append({'title': house_title, 'location': house_location, 'price': house_price})
5、數據可視化分析
df = pd.DataFrame(house_data) # Python學習交流扣裙:708525271 df['price'] = df['price'].astype(int) df['location'] = df['location'].apply(lambda x: x.split('-')[0]) sns.boxplot(x='location', y='price', data=df) plt.show()
這個例子以北京地區的品牌公寓為例,爬取了兩頁的房源數據,並使用箱線圖對不同地區的房價進行了可視化分析。
需要註意的是,58的反爬比較嚴重,訪問多了直接封IP。
我還給大家準備了25個非常實用的Python爬蟲項目,幫助大家更好的學習爬蟲。大家也可根據項目的需求,自己構建解決方法,提高編程水平。全套的python自學視頻以及項目,已經打包完畢,在前面數據可視化代碼中有直接拿走學習的方式!
好了今天的分享就到這結束了,大家下次見!