房价永远是大家最关注的问题,今天我们就来看下,爬虫是如何爬取链家网二手房价格的。这里我们以北京二手房为例,这次抓取主要抓取房子的名称和价格信息。首先我们先打开链家网的目标页面,根据源代码,查找房子名称和价格所在的标签位置。
代码如下:
import requests
from bs4 import BeautifulSoup
import csv
def getHTMLText(url):
try:
r = requests.get(url,timeout=30)
r.raise_for_status()
r.encoding = r.apparent_encoding
return r.text
except:
return '产生异常'
def get_data(list,html):
soup = BeautifulSoup(html,'html.parser')
infos = soup.find('ul',{'class':'sellListContent'}).find_all('li')
with open(r'/Users/11641/Desktop/lianjia.csv','a',encoding='utf-8') as f:
for info in infos:
name = info.find('div',{'class':'title'}).find('a').get_text()
price =info.find('div',{'class':'priceInfo'}).find('div',{'class','totalPrice'}).find('span').get_text()
f.write("{},{}\n".format(name,price))
def main():
start_url = 'https://bj.lianjia.com/ershoufang/pg'
depth = 20
info_list =[]
for i in range(depth):
url = start_url + str(i)
html = getHTMLText(url)
get_data(info_list,html)
main()
通过以上代码,我们就可以获取到北京链家网二手房的价格了。河马爬虫代理,数据采集服务服务提供商,为您提供更快,更可靠的服务。 |