本次通过爬取房天下中烟台二手房房价数据,使用线性回归进行简单预测。
具体代码如下:
1.从房天下爬取烟台二手房数据信息
from selenium import webdriver
from bs4 import BeautifulSoup
from selenium.webdriver.support.wait import WebDriverWait
import pandas as pd
import csv
import time
from sqlalchemy import create_engine
browser=webdriver.Chrome() #设置浏览器
browser.maximize_window() #浏览器窗口最大化
wait=WebDriverWait(browser,20) #设置显示等待
def getHouseInfo3(url):
info = {}
browser.get(url)
# page_source属性用于获取网页的源代码,然后就可以使用正则表达式,css,xpath,bs4来解析网页
soup = BeautifulSoup(browser.page_source,"html.parser")
houses = soup.select(".tab-cont-right .trl-item1")
#获取户型,建筑面积,单价,朝向,楼层,装修情况
for re in houses:
tmp = re.text.strip().split('\n')
name = tmp[-1].strip()
if("朝向" in name):
name = name.strip("进门")
if("楼层" in name):
name = name[0:2]
if("地上层数" in name):
name = "楼层"
if("装修程度" in name):
name = "装修"
info[name] = tmp[0].strip()
#获取小区名称,及总价,
residentialQuartersName = soup.select(".rcont .blue")[0].text.strip().split('\n')[0]
info["小区名字"] = residentialQuartersName
# 组合选择器
totalPrice = soup.select(".tab-cont-right .trl-item")
info["总价"] = totalPrice[0].text
return info
#将爬取一页数据的代码放到方法中
domain