搜房網和安居客分別是中國站長之家的房產類**排名的1和2,58同城和趕集網是運營比較好的綜合性服務**。
**上的資料是比較複雜的,主要抓取新房、二手房和出租房的主要資訊。
小區房價(元/平方公尺)
**數量
小區位址
房價**數量
位址**
面積平方面積
選擇使用python2.7來抓取**資料,用到的主要是beautifulsoup和urllib2。實現的思路比較簡單,首先用urllib2來獲取**的資料,再通過beautifulsoup來抽取我們需要的資料。
為了方便後期的使用,我們寫成了乙個函式。
def
getsoup
(url):
request = urllib2.request(url)
reponse = urllib2.urlopen(request)
contents = reponse.read()
soup = beautifulsoup(contents,from_encoding="utf-8")
return soup
(1)url位址
zufan_url = ''
(2)抽取資料
在之前的需求分析階段定義了需要的主要資訊是出租房的位址、**和,我利用chrome自帶的開發者工具查詢到了在原始碼中的位置,再用beautifulsoup進行解析,獲得了我們需要的資料。
def
get58zufandata
(url):
soup = getsoup(url)
zufang_row =
for tag in soup.find('table',class_='tbimg').find_all('tr'):
td_list = tag.find_all('td')
title = td_list[1].a.get_text()
title_link = td_list[1].a['href']
detail_soup = getsoup(title_link)
price = detail_soup.find('ul',class_='house-primary-content').em
if price:
price = price.get_text()
type = detail_soup.find('div',class_='house-type').get_text()
print title
print price
address = td_list[1].p.get_text()
zufang_info = [title,address,price,type]
return zufang_row
(3)儲存資料到csv檔案中
為了接下來的工作順利進行,我們需要將所抓取的資料儲存到本地。我用了最簡單的方式–儲存到csv檔案中。
if __name__ == '__main__':
wuba_zufanglist =
for zufang_i in range(1,41):
zufan_url = ''+ str(zufang_i) +'/'
wuba_zufanglist.extend(get58zufandata(zufan_url))
wuba_zufang = pd.dataframe(wuba_zufanglist)
wuba_zufang.to_csv('data/wuba_zufang.csv',encoding='utf-8')
最終得到的資料結果為:
中國房價走勢分析 基礎資料收集
目錄 一 人口 截止2021年,中國人口中各年代人口總數 二 買房需求分析 三 買房還是暫時租房?3.1 買房 3.2 租房 3.3 利息高還是房租高?四 房貸外的其他解 必需項 1.安靜 2.小區外明朗乾淨 3.生活方便,距離超市近,乾淨飯館多 4.房子建築 5.房內陽光充足 6.小區附近人員不複...
資料探勘實戰(一) 資料分析
資料集準備 status表示標籤,但是它作為乙個特徵維度混入到特徵列表中,要先將它找出來賦給標籤,並按照約定規則將資料分為訓練集和測試集 import pandas as pd from sklearn.model selection import train test split data pd....
Lucene6 0分析(一) 資料分析介面
analyer作為資料分析的主要資料模型,他通過tokenstreams分析文字。也可以說它是從文字中提取索引欄位的一種策略。為了實現分析的目的,內部採用 tokenstreamcomponents元件進行實現。analyzer本身整合自closable介面,即呼叫close方法,可以釋放資源。該物...