python爬取鏈家二手房的數(shù)據(jù)
一、查找數(shù)據(jù)所在位置:
打開鏈家官網(wǎng),進(jìn)入二手房頁面,選取某個城市,可以看到該城市房源總數(shù)以及房源列表數(shù)據(jù)。
二、確定數(shù)據(jù)存放位置:
某些網(wǎng)站的數(shù)據(jù)是存放在html中,而有些卻api接口,甚至有些加密在js中,還好鏈家的房源數(shù)據(jù)是存放到html中:
三、獲取html數(shù)據(jù):
通過requests請求頁面,獲取每頁的html數(shù)據(jù)
# 爬取的url,默認(rèn)爬取的南京的鏈家房產(chǎn)信息 url = 'https://nj.lianjia.com/ershoufang/pg{}/'.format(page) # 請求url resp = requests.get(url, headers=headers, timeout=10)
四、解析html,提取有用數(shù)據(jù):
通過BeautifulSoup解析html,并提取相應(yīng)有用的數(shù)據(jù)
soup = BeautifulSoup(resp.content, 'lxml') # 篩選全部的li標(biāo)簽 sellListContent = soup.select('.sellListContent li.LOGCLICKDATA') # 循環(huán)遍歷 for sell in sellListContent: # 標(biāo)題 title = sell.select('div.title a')[0].string # 先抓取全部的div信息,再針對每一條進(jìn)行提取 houseInfo = list(sell.select('div.houseInfo')[0].stripped_strings) # 樓盤名字 loupan = houseInfo[0] # 對樓盤的信息進(jìn)行分割 info = houseInfo[0].split('|') # 房子類型 house_type = info[1].strip() # 面積大小 area = info[2].strip() # 房間朝向 toward = info[3].strip() # 裝修類型 renovation = info[4].strip() # 房屋地址 positionInfo = ''.join(list(sell.select('div.positionInfo')[0].stripped_strings)) # 房屋總價 totalPrice = ''.join(list(sell.select('div.totalPrice')[0].stripped_strings)) # 房屋單價 unitPrice = list(sell.select('div.unitPrice')[0].stripped_strings)[0]
以上就是我的分享,如果有什么不足之處請指出,多交流,謝謝!
以上就是python爬取鏈家二手房的數(shù)據(jù)的詳細(xì)內(nèi)容,更多關(guān)于python爬取鏈家二手房的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
python入門之語句(if語句、while語句、for語句)
這篇文章主要介紹了python入門之語句,主要包括if語句、while語句、for語句的使用,需要的朋友可以參考下2015-01-01Python使用for實現(xiàn)無限循環(huán)的多種方式匯總
這篇文章主要介紹了Python使用for實現(xiàn)無限循環(huán)的多種方式匯總,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03